5個重要協議
@protocol
ccrgbaprotocol <
nsobject
>
// 設定 cccolor3b 結構的顏色資料
-(
void
) setcolor:(cccolor3b)color;
-(cccolor3b)color;
// 如果紋理有 premultiplied alpha 資料 那麼更改透明度同時會更改rgb通道的值
-(
void
)setopacity:(glubyte)opacity;
-(glubyte)opacity;
// 可選實現
@optional
// 設定更改透明度時是否修改rgb值
// 如果設定yes, 透明度被設定時將會呼叫: glcolor(opacity,opacity,
opacity,opacity)
// 如果設定no, 透明度唄設定時將會呼叫: glcolor(r,g,b,opacity)
// 紋理如果有 premultiplied alpha資料將會預設把此項設定為yes, 否則設定為no
-(
void
)setopacitymodifyrgb:(
bool
)boolean;
// 返回更改透明度時是否修改rgb值
-(
bool
)doseopacitymodifyrgb;
@end
@protocol
ccblendprotocol <
nsobject
>
// 指定渲染函式
-(
void
)setblendfunc:(ccblendfunc)blendfunc;
-(ccblendfunc)blendfunc;
@end
@protocol
cctextureprotocol <
nsobject
>
-(cctexture2d *)texture;
-(
void
)settexture:(cctexture2d *)texture;
@end
cclabelprotocol 所有label相關物件都實現此協議. 此協議提供乙個設定標籤文字的介面
@protocol
cclabelprotocol <
nsobject
>
-(
void
) setstring:(
nsstring
*)label;
-(
nsstring
*)string;
@optional
// 使用 c字串, 此方法要比nsstring快, 因為不需要向nsstring傳送alloc/retain/release訊息
-(
void
)setcstring:(
char
*)label;
@end
ccdirectordelegate 實現 ccdirector** 協議的類可以響應ccdirector的 裝置旋轉 更新投影的訊息
@protocol
ccdirectordelegate <
nsobject
>
@optional
// 當ccdirector 使用了自定義 projection 並且在投影更新時,會向**傳送此訊息
-(
void
) updateprojection;
// 檢查當前應用是否支援指定的裝置方向
-(
bool
)shouldautorotatetointe***ceorientation:(uiinte***ceorientation) inte***ceorientation;
@end
cocos2d實現語音 Cocos2d 聲音API
param url 聲音路徑 cc.audioengine.playmusic url loop 停止背景 param releasedata 是否釋放聲音資料,預設為false cc.audioengine.stopmusic releasedata 暫停背景 cc.audioengine.pau...
cocos2d筆記 cocos2d的單例模式
cocos2d充分使用了單例設計模式,這裡有必要提及它是因為它是經常是討論熱點。大體上說,乙個singleton是乙個類,它在應用使用期中僅僅例項化一次。為了確保如此,就要使用乙個既建立又訪問此物件例項的靜態方法。因此,你不使用alloc init或者靜態自動釋放初始化器 static autore...
Cocos2D研究院之初識Cocos2d(二)
在正式介紹cocos2d之前,我先囉嗦一下本人對這套引擎的看法。我認為coos2d最大的作用就是降低開發成本 貌似所有引擎都是這樣 對於研發部門來說,最大的成本就是時間,所以節省時間是降低成本最有效的方式,cocos2d幾乎封裝了所有開發ios遊戲需要的底層 使剛剛接觸oc的開發者也能很快的製作出效...