一、精靈建立及初始化
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 本次使用清華源進行安裝 離線安裝第三方庫 一鍵安裝整個...