專案中的天氣系統,需要用到風雪效果,這時模擬的風雪效果,在3d效果上,還有點不足,就是雪花的消失點應該按照雪花的縮放係數算出它該消失的位置。目前是用的在螢幕外面就從新移到原始位置。上個效果圖:
具體實現:
先定義幾個雪花飄的方向
//先定義幾個雪花的飄動方向
enum;
//初始化雪花
void
gtwind::showwind()
上面使用的schedule來每一幀待用改變雪花位置,以及每5秒隨機一次風向
現在隨即風向,並呼叫函式動態改變當前的風速
//改變風的方向
void
gtwind::changewind()
m_winddir=dir;
switch (m_winddir) }
這個我以前就寫過的,用於遊戲中動態改變量值的
//動態改變當前的風速
void
gtwind::updatawindvelocity()else
if(abs(addv)>2 &&abs(addv)<=10)else }
//重新整理所有的雪花
void
gtwind::updatawind(cctime dt) }
//得到所有雪花,改變位置
ccarray* allsprite=temspritebatchnode->getchildren();
ccobject* pobject = null;
ccarray_foreach(allsprite, pobject) }
}好了,基本效果就這樣了,可以改進的地方就是雪花的消失點,要根據每個雪花的縮放係數算出消失點,這樣才有3d的效果
coco2dx繪製到紋理
為了完成一些特效 比如,角色狂暴,但雙腳又被石化 有時需要使用gl es的的紋理緩衝 未整理 void mysprite mydraw const cocos2d mat4 transform glint viewport 4 glgetintegerv gl viewport,viewport g...
coco2d x怎樣建立project
不知道coco2d x從那個版本號開始用python建立project,一句話搞定,確實省去了好多麻煩。首先定位到coco2d x的資料夾到cocos2d x 2.2.3 cocos2d x 2.2.3 tools project creator。前提你要裝python軟體。python是一種物件導...
coco2d x核心類之CCSprite及其相關類
ccsprite 精靈類 是一張二維的物件,它可以用一張或者一張的一塊矩形部分來定義,ccsprite的繼承關係如下圖 貼圖類cctexture2d 是關於opengl 的概念。cctexture2d 類是精靈類和其相關類的基礎在opengl 中稱為貼圖,在cocos2d x 中cctexture2...