七、cocos2dx之粒子系统
http://www.cocos2dx.net/?p=66 一、介绍 粒子系统指的是一个使用大量很小的精灵或者其他的一些绘制对象模拟一些模糊效果。使用传统的绘制技术很难实现。它们经常被用到一些混乱系统,自然现象以及一些化学反应动画效果中。 二、点阵vs矩形 在之前版本的coco
http://www.cocos2dx.net/?p=66
一、介绍
粒子系统指的是一个使用大量很小的精灵或者其他的一些绘制对象模拟一些模糊效果。使用传统的绘制技术很难实现。它们经常被用到一些混乱系统,自然现象以及一些化学反应动画效果中。
二、点阵vs矩形
在之前版本的cocos2dx中,有两种类型的粒子系统:矩形和点阵粒子系统:
1)CCParticleSystemQuad
2)CCParticleSystemPoint
CCParticleSystemQuad有一些额外的特点而CCParticleSystemPoint不支持:
1)旋转粒子系统:粒子们能够围绕轴线旋转,而CCParticleSystemPoint没有这个属性
2)粒子们有大小。而在CCParticleSystemPoint中,如果粒子尺寸大于64,那么将会被当成64
3)整个系统可以被缩放,可以使用缩放属性
因为CCParticleSystemPoint不支持CCParticleBatchNode,所以它被从cocos2dx粒子系统中移除掉了(囧)。
三、CCParticleBatchNode
一个CCParticleBatchNode 能够引用一个纹理并且只有一个纹理(一个图片文件)。只有被包含在纹理中的CCParticleSystems可以被添加到CCSpriteBatchNode。被添加到CCSpriteBatchNode 中的CCParticleSystems在一个OpenGL ES绘制中调用。如果 CCParticleSystems没有被添加进一个CCParticleBatchNode,那么每一个粒子系统都需要被OpenGL ES绘制一次,那样效率就很低了。
创建一个矩形粒子系统
CCParticleSystemQuad* m_emitter = newCCParticleSystemQuad(); m_emitter = CCParticleFire::create();
四、重力vs半径模式
重力模式
重力模式能够让粒子飞向或者远离一个中心点。这种的优势是它允许一个动态的,组织的效果。你可以用如下代码设置重力模式:
//重力模式 this->m_nEmitterMode = kCCParticleModeGravity; this->modeA.gravity = ccp(0,-90);
在重力模式中,以下属性是合法的:
gravity (Point)。粒子系统的重力。
speed (float)。粒子们射出的速度。
speedVar(float)速度变量
tangencialAccel(float)粒子们的正切加速度
tangencialAccelVar(float)粒子们正切加速度的变量
radialAccel(float)粒子们的半径加速度。
radialAccelVar(float)粒子们半径加速度的变量
半径模式
半径模式能够让粒子在圆中旋转。也可以创造螺旋模式能让粒子向屏幕里屏幕外飞。你可以设置半径模式用下面的几行代码:
// 半径模式 this->m_nEmitterMode = kCCParticleModeRadius; // 设置开始半径 this->modeB.startRadius = 0; this->modeB.startRadiusVar = 0;//ccp(0,0);
startRadius (a float).粒子的开始半径
startRadiusVar (a float). 开始半径变量
endRadius (a float). 粒子的结束半径
endRadiusVar (a float).结束半径变量
rotatePerSecond (a float).围绕一个来源点的每秒旋转角度
rotatePerSecondVar (a float).每秒旋转角度变量
粒子们的常规属性:
startSize:粒子的初始尺寸(像素值)
startSizeVar
endSize:粒子的结束尺寸(如果你想让粒子的开始大小同结束大笑相同,就用一下kCCParticleStartSizeEqualToEndSize
endSizeVar
startColor :粒子开始颜色(ccColor4F)
startColorVar
endColor :粒子结束颜色
endColorVar
startSpin:仅用在CCParticleSystemQuad中,起始螺旋度
startSpinVar
endSpin:仅用在CCParticleSystemQuad中,结束螺旋度
endSpinVar
life粒子的生命生存时间,单位是秒
lifeVar
angle:粒子开始角度,float
angleVar
positon:CCPoint粒子位置
positonVar
centerOfGravity :CGPoint
系统通用属性:
emissionRate duration (a float):每秒有多少粒子被发射
duration (a float):粒子系统生存时间
blendFunc (a ccBlendFunc):用于系统渲染的OpenGL的渲染函数
positionType (a tCCPositionType).:使用kCCPositionTypeFree (默认值)属性可以自由的移动粒子们。或者使用kCCPositionTypeGrouped 让粒子们一组一组的移动。
texture (a CCTexture2D).粒子的纹理

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











HTTP ステータス コード 520 は、サーバーがリクエストの処理中に不明なエラーに遭遇し、より具体的な情報を提供できないことを意味します。サーバーがリクエストを処理しているときに不明なエラーが発生したことを示すために使用されます。サーバー構成の問題、ネットワークの問題、またはその他の不明な理由が原因である可能性があります。これは通常、サーバー構成の問題、ネットワークの問題、サーバーの過負荷、またはコーディング エラーが原因で発生します。ステータス コード 520 エラーが発生した場合は、Web サイト管理者またはテクニカル サポート チームに連絡して詳細情報と支援を得ることが最善です。

HTTP ステータス コード 403 は、サーバーがクライアントの要求を拒否したことを意味します。 http ステータス コード 403 の解決策は次のとおりです: 1. 認証資格情報を確認します。サーバーが認証を必要とする場合は、正しい資格情報が提供されていることを確認します。2. IP アドレス制限を確認します。サーバーが IP アドレスを制限している場合は、クライアントの IP アドレスは制限されています。ホワイトリストに登録されているか、ブラックリストに登録されていません。3. ファイルのアクセス許可設定を確認します。403 ステータス コードがファイルまたはディレクトリのアクセス許可設定に関連している場合は、クライアントがこれらのファイルまたはディレクトリにアクセスするための十分なアクセス許可を持っていることを確認してください。等

HTTP 301 ステータス コードの意味を理解する: Web ページ リダイレクトの一般的なアプリケーション シナリオ インターネットの急速な発展に伴い、Web ページの操作に対する人々の要求はますます高くなっています。 Web デザインの分野では、Web ページのリダイレクトは一般的かつ重要なテクノロジであり、HTTP 301 ステータス コードによって実装されます。この記事では、HTTP 301 ステータス コードの意味と、Web ページ リダイレクトにおける一般的なアプリケーション シナリオについて説明します。 HTTP301 ステータス コードは、永続的なリダイレクト (PermanentRedirect) を指します。サーバーがクライアントのメッセージを受信すると、

NginxProxyManager を使用して HTTP から HTTPS への自動ジャンプを実装する方法 インターネットの発展に伴い、ますます多くの Web サイトが HTTPS プロトコルを使用してデータ送信を暗号化し、データ セキュリティとユーザーのプライバシー保護を向上させ始めています。 HTTPS プロトコルは SSL 証明書のサポートを必要とするため、HTTPS プロトコルを展開する際には特定の技術サポートが必要です。 Nginx は強力で一般的に使用される HTTP サーバーおよびリバース プロキシ サーバーであり、NginxProxy

http.PostForm 関数を使用して、フォーム データを含む POST リクエストを送信します。Go 言語の http パッケージでは、http.PostForm 関数を使用して、フォーム データを含む POST リクエストを送信できます。 http.PostForm 関数のプロトタイプは次のとおりです。 funcPostForm(urlstring,dataurl.Values)(resp*http.Response,errerror)where, u

クイック アプリケーション: PHP の実践的な開発ケース分析 複数ファイルの非同期 HTTP ダウンロード インターネットの発展に伴い、ファイル ダウンロード機能は多くの Web サイトやアプリケーションの基本的なニーズの 1 つになりました。複数のファイルを同時にダウンロードする必要があるシナリオでは、従来の同期ダウンロード方法は非効率的で時間がかかることがよくあります。このため、PHP を使用して HTTP 経由で複数のファイルを非同期にダウンロードするソリューションがますます一般的になってきています。この記事では、実際の開発事例を通して、PHP 非同期 HTTP の使用方法を詳しく分析します。

C# におけるネットワーク通信とセキュリティの一般的な問題と解決策 今日のインターネット時代では、ネットワーク通信はソフトウェア開発に不可欠な部分となっています。 C# では通常、データ送信のセキュリティ、ネットワーク接続の安定性など、ネットワーク通信の問題が発生します。この記事では、C# における一般的なネットワーク通信とセキュリティの問題について詳しく説明し、対応する解決策とコード例を提供します。 1. ネットワーク通信の問題 ネットワーク接続の中断: ネットワーク通信プロセス中に、ネットワーク接続が中断される場合があります。

HTTP ステータス コード 200: 成功した応答の意味と目的を調べる HTTP ステータス コードは、サーバーの応答のステータスを示すために使用される数値コードです。このうち、ステータス コード 200 は、リクエストがサーバーによって正常に処理されたことを示します。この記事では、HTTP ステータス コード 200 の具体的な意味と使用法について説明します。まず、HTTP ステータス コードの分類を理解しましょう。ステータス コードは、1xx、2xx、3xx、4xx、5xx の 5 つのカテゴリに分類されます。このうち、2xx は成功応答を示します。 200 は 2xx で最も一般的なステータス コードです
