纹理
在cocos2dx中显示一张图片,需要首先把它从文件读取到内存,再根据文件格式进行解码,转换为GPU可以识别的格式,
这块可以被GPU识别的、内存中的图像数据,被称为纹理。
纹理图集
为了节省内存空间,减少大量琐碎的小文件的读取引发的多次I/O操作,将多个纹理拼成为一个大的纹理图,成为纹理图集。
就像是给别人看你所有的照片,不需要一张张给,而是贴在一个大白纸上,一次性给别人。 在OpenGL ES处理图像也是类似,
使用纹理图集(或精灵表单,Spritesheet) 把所有图像一次性交给OpenGL ESk来处理,比单个处理要高效。
自动缓存纹理
使用displa.newSprite(fileName)创建精灵,引擎内部会自动把纹理加载到缓存中。
精灵帧
精灵帧是在纹理的基础上进一步封装,它在纹理上定了一个矩形区域,以确定纹理的可视范围。 一张纹理可以变化为多个帧。
display.addSpriteFrames("fruit.plist",fruit.png)
display.addSpriteFrames一次性加载多个帧到帧缓存,这些帧都有共同的纹理图,即fruit.png。 如果用其中一帧来创建精灵,就不用纹理来创建,需要使用精灵帧。