CCSprite的使用方法大全

2022-06-27 02:33:13 字數 3069 閱讀 4750

一、精靈建立及初始化

ccsprite *sprite = [ccsprite spritewithfile:@"imagefilename.png"]; 

預設錨點 ccp(0.5,0.5), 預設位置 ccp(0,0), ccsprite尺寸(contentsize)為尺寸

2、從幀快取建立:

[[ccspriteframecache sharedspriteframecache] addspriteframeswithfile:@"minesweeping.plist"];  

ccsprite *sprite = [ccsprite spritewithspriteframename:@"imagefilename.png"];  

3、初始化及自定義大小

ccsprite *sprite = [ccsprite spritewithfile:@"imagefilename.png" rect:cgrectmake(x,y,w,h)];  

只顯示的一部分,大小為 w,h

ios裝置的貼圖尺寸必須符合「2的n次方」 規定,所以貼圖的寬和高必須是2,4,8,16,32,64,128,256,512,1024. 在第三代裝置上可以達到2048畫素

二、精靈常用屬性及方法:

新增子節點,ccsprite繼承自ccnode,可以進行addchild的操作

[self addchild:sprite];   

設定ccsprite位置,本地gl座標系

[s setposition:ccp(x,y)];

sprite.position=ccp(100,100);//設定精靈左下角座標是x=100,y=100,本地gl座標系 

縮放 (引數為比例,1保持不變,0.5代表50%,2代表200%)

sprite.scale=2;//放大2倍  

旋轉sprite.rotation=90;//旋轉90度 

設定透明度 (範圍0~255)

sprite.opacity=255;//設定透明度為完全不透明(範圍0~255)

設定ccsprite錨點,左下角:

sprite.anchorpoint=ccp(0,0);//設定錨點為左下角,預設為ccp(0.5,0.5)中心點   

開啟ccsprite映象

[sprite setflipx:yes];//x軸映象反轉      

[sprite setflipy:yes];//y軸映象反轉 

是否可見

[sprite setvisible:no];//設定隱藏,預設為可見 

設定ccsprite()的顏色

[sprite setcolor:ccc3(255, 0, 0)];//設定顏色為紅色,三原色   

ccsprite的層疊次序 (次序小的在下面,大的在上面)

[sprite zorder]; //精靈層疊次序即z軸(小的在下面,大的在上面),注意這是唯讀屬性,不能通過sprite.zorder=2實現z軸重設     

設定紋理大小

[sprite settexturerect:cgrectmake(10, 10, 30, 30)];//起始點座標(做上角座標系),寬高    

三、新增其他精靈

ccsprite繼承自ccnode,所以你可以對它進行addchild的操作:

ccsprite *s1 = [ccsprite spritewithfile:@"icon.png"];  

ccsprite *s2 = [ccsprite spritewithfile:@"icon.png"];  

[s1 addchild:s2];  

四、精靈z軸重設

[self reorderchild:sprite z:10];//self為cclayer或者ccnode  

五、精靈換圖

1、直接利用新建貼圖進行更換

//更換貼圖      

cctexture2d * texture =[[cctexturecache sharedtexturecache] addimage: @"default.png"];//新建貼圖      

[sprite settexture:texture];   

2、利用幀替換

//載入幀快取

[[ccspriteframecache sharedspriteframecache] addspriteframeswithfile:@"minesweeping.plist"];      

//從幀快取中取出default.png

ccspriteframe* frame2 = [[ccspriteframecache sharedspriteframecache]    spriteframebyname:@"default.png"];     

[sprite setdisplayframe:frame2];  

六、移除sprite:

-(void)spritemovefinished:(id)sender

七、精靈批處理(sprite batching):

建立多個ccsprite節點,將它們新增到同乙個ccspritebatchnode中以提高渲染速度

ccspritebatchnode* batch = [ccspritebatchnode batchnodewithfile:@"bullet.png"];

[self addchild:batch];

for (int i = 0; i < 100; i++)

ccsprite* sprite = [ccsprite spritewithfile:@"bullet.png"];

[batch addchild:bullet];

什麼時候應該使用ccspritebatchnode

當你需要顯示兩個或者更多個相同的ccsprite節點時,你可以使用ccspritebatchnode。組合在一起的ccsprite節點越多,使用 ccspritebatchnode得到的效果提公升就越大

出處:

Linux基礎命令之cat使用方法大全

今天在學習部署安裝openstack的時候,看到乙個關於cat的奇怪用法,可能是本人的才疏學淺沒見過這種寫法,於是乎查閱資料了一番,並進行了總結,希望也能夠幫助有需要的朋友。以下是我總結的幾種常用方式 1.最普通用法 cat proc version linux version 2.6.32 5 6...

Linux基礎命令之cat使用方法大全

今天在學習部署安裝openstack的時候,看到乙個關於cat的奇怪用法,可能是本人的才疏學淺沒見過這種寫法,於是乎查閱資料了一番,並進行了總結,希望也能夠幫助有需要的朋友。以下是我總結的幾種常用方式 1.最普通用法 cat proc versionlinux version 2.6.32 5 68...

pythonpip使用方法 pip使用方法整理

匯出專案已安裝的pip包 pip list 檢視專案中安裝的包 pip freeze requirements.txt 將專案中所用到的第三方庫輸出到requirements.txt中 pip install 版本號 pip install i 本次使用清華源進行安裝 離線安裝第三方庫 一鍵安裝整個...