一、概述
CCTexture2D继承自CCObject。原本以为CCTexture2D中的内容会比较多、常用和重要,看了源码后发现似乎都是些基础的接口。常用的接口或许在其他类中,比如CCTextureCache。源码如下:
voID releaseData(voID *data); /** * @Js NA */ voID* keepData(voID *data,unsigned int length); /** Initializes with a texture2d with data * @Js NA * @lua NA */ bool initWithData(const voID* data,CCTexture2DPixelFormat pixelFormat,unsigned int pixelsWIDe,unsigned int pixelsHigh,const CCSize& contentSize); /** Drawing extensions to make it easy to draw basic quads using a CCTexture2D object. These functions require GL_TEXTURE_2D and both GL_VERTEX_ARRAY and GL_TEXTURE_COORD_ARRAY clIEnt states to be enabled. */ /** draws a texture at a given point */ voID drawAtPoint(const CCPoint& point); /** draws a texture insIDe a rect */ voID drawInRect(const CCRect& rect); /** Extensions to make it easy to create a CCTexture2D object from an image file. Note that RGBA type textures will have their Alpha premultiplIEd - use the blending mode (GL_ONE,GL_ONE_MINUS_SRC_Alpha). */ /** Initializes a texture from a UIImage object */ bool initWithImage(CCImage * uiImage); /** Initializes a texture from a string with dimensions,alignment,Font name and Font size */ bool initWithString(const char *text,const char *Fontname,float FontSize,const CCSize& dimensions,CCTextAlignment hAlignment,CCVerticalTextAlignment vAlignment); /** Initializes a texture from a string with Font name and Font size */ bool initWithString(const char *text,float FontSize); /** Initializes a texture from a string using a text deFinition*/ bool initWithString(const char *text,ccFontDeFinition *textDeFinition); /** Initializes a texture from a PVR file */ bool initWithPVRfile(const char* file); /** Initializes a texture from a ETC file */ bool initWithETCfile(const char* file);@H_502_93@二、分析
1、上面只是部分源码,即便只是部分源码,看起来都有点陌生,更别说没复制上来的了
2、可以看到生成CCTexture大致有三种方式:image、String,以及data(不知道什么意思)
3、PVR、ETC文件似乎是比PNG更高效的图片格式,暂时不用管三、总结 1、知道了CCTexture2D可以由image、String或data生成 2、知道了CCTexture不常直接使用
总结以上是内存溢出为你收集整理的《不靠谱2.x》006.CCSprite(上)002 CCTexture2D全部内容,希望文章能够帮你解决《不靠谱2.x》006.CCSprite(上)002 CCTexture2D所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)