cocos2d-x节点(ccConfig.h)API

本文来自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__


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值