cocos2d-x节点(ccConfig.h)API

来源:互联网 发布:android编程入门自学 编辑:程序博客网 时间:2024/05/17 01:03

本文来自http://blog.csdn.net/runaying ,引用必须注明出处!

cocos2d-x节点(ccConfig.h)API

温馨提醒:为了大家能更好学习,强烈推荐大家看看本人的这篇博客 Cocos2d-X权威指南笔记

//一些配置项可以很方便的调试

///cocos2d-x-3.0alpha0/cocos2dx/include//一些配置项可以很方便的调试#ifndef __CCCONFIG_H__#define __CCCONFIG_H__#include "platform/CCPlatformConfig.h"/** @file cocos2d (cc) configuration file *//** @def CC_ENABLE_STACKABLE_ACTIONS 如果启用修改的位置属性会叠加 (eg: MoveBy, JumpBy, BezierBy, etc..). 如果你同时在一个 node 上同时运行了两个或多个 'position' actions ,那么最终的位置将是所有的位置的综合. 如果禁用,则只有最后一个 run action 生效.   默认情况下启用. Disable to be compatible(兼容) with v2.0 and older versions.  @since v2.1 */#ifndef CC_ENABLE_STACKABLE_ACTIONS#define CC_ENABLE_STACKABLE_ACTIONS 1#endif/** @def CC_ENABLE_GL_STATE_CACHE 如果启用,将在内部保持cocos2d的OpenGL状态缓存,以避免不必要的开关。 为了使用他们,你必须使用下面的功能,而不是GL的功能: - ccGLUseProgram() instead of glUseProgram() - GL::deleteProgram() instead of glDeleteProgram() - GL::blendFunc() instead of glBlendFunc()  如果禁用此功能, then ccGLUseProgram(), GL::deleteProgram(), GL::blendFunc() will call the GL ones, without using the cache.  为了尽可能的提升运行速度,建议启用它. 如果你的代码是从 GL ES1.1 上迁移过来的,那么你可以禁用它,一旦你的代码如预期的运行,再打开它.  Default value: Enabled by default  @since v2.0.0 */#ifndef CC_ENABLE_GL_STATE_CACHE#define CC_ENABLE_GL_STATE_CACHE 1#endif/** @def CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL 如果启用,texture 的坐标将使用这个公式计算 - texCoord.left = (rect.origin.x*2+1) / (texture.wide*2); - texCoord.right = texCoord.left + (rect.size.width*2-2)/(texture.wide*2);  相同的顶部和底部。  这个公式可以防止 artifact(器物)使用 99% 的 texture ,正确的方式是防止 artifact(器物)使用 spritesheet-artifact-fixer.py 或者类似的工具.  受影响的节点: - Sprite / SpriteBatchNode and subclasses: LabelBMFont, TMXTiledMap - LabelAtlas - QuadParticleSystem - TileMap  To enabled set it to 1. Disabled by default.  @since v0.99.5 */#ifndef CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL#define CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL 0#endif/** @def CC_DIRECTOR_FPS_INTERVAL Seconds(秒) between FPS updates. 0.5 seconds, 意味着每 0.5 秒 FPS 数字都会被更新. 更大的数字,意味着一个更可靠的FPS  Default value: 0.1f */#ifndef CC_DIRECTOR_STATS_INTERVAL#define CC_DIRECTOR_STATS_INTERVAL (0.1f)#endif/** @def CC_DIRECTOR_FPS_POSITION Position of the FPS  Default: 0,0 (bottom-left corner) */#ifndef CC_DIRECTOR_FPS_POSITION#define CC_DIRECTOR_FPS_POSITION Point(0,0)#endif/** @def CC_DIRECTOR_DISPATCH_FAST_EVENTS 如果启用, 只有当它与 FastDirector 一起使用时,主循环将等待 0.04 秒,然后再 dispatch(派遣)所有的事件,即使没有 dispatch(派遣)的事件,它还是会等待 0.04 秒 如果你的游戏使用很多的事件(例如:触摸)启用此功能,可能是一个好主意,Otherwise 禁用它也是安全的  To enable set it to 1. Disabled by default.  @warning This feature is experimental */#ifndef CC_DIRECTOR_DISPATCH_FAST_EVENTS#define CC_DIRECTOR_DISPATCH_FAST_EVENTS 0#endif/** @def CC_DIRECTOR_MAC_USE_DISPLAY_LINK_THREAD 如果启用, cocos2d-mac 将在显示链接线程上运行. 如果禁用 cocos2d-mac 将在自己的线程中运行.  如果启用,图像将在正确的时间被绘制,但事件可能不是非常敏感 如果禁用, 可能会跳过一些帧,但当他们到达时,事件将会被 dispatched(派遣)  To enable set it to a 1, to disable it set to 0. Enabled by default.  只支持 cocos2d-mac. 不支持 cocos2d-ios.  */#ifndef CC_DIRECTOR_MAC_USE_DISPLAY_LINK_THREAD#define CC_DIRECTOR_MAC_USE_DISPLAY_LINK_THREAD 1#endif/** @def CC_NODE_RENDER_SUBPIXEL 如果启用, Node对象 (Sprite, Label,etc) 将能够在 subpixels(子像素) 上渲染. 如果禁用,将使用整数像素  To enable set it to 1. Enabled by default. */#ifndef CC_NODE_RENDER_SUBPIXEL#define CC_NODE_RENDER_SUBPIXEL 1#endif/** @def CC_SPRITEBATCHNODE_RENDER_SUBPIXEL 如果启用,  Sprite 对象将使用 SpriteBatchNode 在 subpixels(子像素) 上渲染. 如果禁用, integer pixels will be used.  To enable set it to 1. Enabled by default. */#ifndef CC_SPRITEBATCHNODE_RENDER_SUBPIXEL#define CC_SPRITEBATCHNODE_RENDER_SUBPIXEL    1#endif/** @def CC_TEXTURE_ATLAS_USE_TRIANGLE_STRIP 渲染 texture atlas(图集) 时,使用 GL_TRIANGLE_STRIP 代替 GL_TRIANGLES 它似乎是推荐的方法,但是使用它慢得多,所以启用它,你要自己承担风险  启用它,可以把它的值设为不同于 0,Disabled by default.  */#ifndef CC_TEXTURE_ATLAS_USE_TRIANGLE_STRIP#define CC_TEXTURE_ATLAS_USE_TRIANGLE_STRIP 0#endif/** @def CC_TEXTURE_ATLAS_USE_VAO默认情况下,TextureAtlas(许多的cocos2d类)将使用VAO(Vertex(顶点) Array Objects). 苹果公司建议使用它们,但他们可能会消耗大量的内存,特别是当你大量使用它们时。 因此,某些情况下,你可能需要数百VAO对象,这个时候禁用他可能是一个好主意  To disable it set it to 0. Enabled by default.  */#ifndef CC_TEXTURE_ATLAS_USE_VAO#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS) || (CC_TARGET_PLATFORM == CC_PLATFORM_MAC)#define CC_TEXTURE_ATLAS_USE_VAO 1#else/* 某些Windows的显示适配器驱动不能支持 VOA(Vertex(顶点) Array Objects) *//*一些Android设备不能很好的支持 VOA(Vertex(顶点) Array Objects), 所以在android 平台上他默认是被禁用的s. *//* Blackberry(黑莓)也不支持这个功能. */#define CC_TEXTURE_ATLAS_USE_VAO 0#endif#endif/** @def CC_USE_LA88_LABELS 如果启用,LabelTTF 对象会使用LA88 (Luminance(亮度) Alpha 16-bit textures). 如果禁用他,LabelTTF 对象会使用 A8 (Alpha 8-bit textures). LA88 textures 比 A8 textures 快 6%, 但他们会消耗2倍的内存.  This feature is enabled by default.  @since v0.99.5 */#ifndef CC_USE_LA88_LABELS#define CC_USE_LA88_LABELS 1#endif/** @def CC_SPRITE_DEBUG_DRAW 如果启用, Sprite 的所有子类都将绘制边界框 仅在调试的时候他是非常有用的,建议禁用它  启用它,可以把它的值设为不同于 0. Disabled by default: 0 -- disabled 1 -- draw bounding box 2 -- draw texture box 0 -- disabled 1 -- draw bounding box 2 -- draw texture box */#ifndef CC_SPRITE_DEBUG_DRAW#define CC_SPRITE_DEBUG_DRAW 0#endif/** @def CC_SPRITEBATCHNODE_DEBUG_DRAW 如果启用, 使用 SpriteBatchNode 渲染的所有 aprite 都会d绘制边界框 仅在调试的时候他是非常有用的,建议禁用它  启用它,可以把它的值设为不同于 0. Disabled by default. */#ifndef CC_SPRITEBATCHNODE_DEBUG_DRAW#define CC_SPRITEBATCHNODE_DEBUG_DRAW 0#endif/** @def CC_LABELBMFONT_DEBUG_DRAW 如果启用, LabelBMFont 的所有子类都将绘制边界框 仅在调试的时候他是非常有用的,建议禁用它  启用它,可以把它的值设为不同于 0. Disabled by default. */#ifndef CC_LABELBMFONT_DEBUG_DRAW#define CC_LABELBMFONT_DEBUG_DRAW 0#endif/** @def CC_LABELATLAS_DEBUG_DRAW 如果启用, LabeltAtlas 的所有子类都将绘制边界框  仅在调试的时候他是非常有用的,建议禁用它  启用它,可以把它的值设为不同于 0. Disabled by default. */#ifndef CC_LABELATLAS_DEBUG_DRAW#define CC_LABELATLAS_DEBUG_DRAW 0#endif/** @def CC_ENABLE_PROFILERS 如果启用, 将激活 cocos2d 的各种分析器,统计数据将被输出到控制台 需要执行的具体 routine(s),平均每秒显示一次(以毫秒为单位.            //例程 仅在调试的时候他是非常有用的,建议禁用它  启用它,可以把它的值设为不同于 0. Disabled by default. */#ifndef CC_ENABLE_PROFILERS#define CC_ENABLE_PROFILERS 0#endif/** Enable Lua engine debug log */#ifndef CC_LUA_ENGINE_DEBUG#define CC_LUA_ENGINE_DEBUG 0#endif#endif // __CCCONFIG_H__


原创粉丝点击