Cocos2d-x程序中的一些小细节

学习Cocos2d-x游戏引擎的第5天,在这几天的学习中,发现Cocos2d-x的确是一个简单易用但功能强大的2D游戏开发引擎(虽然我也没有接触过其他的引擎~~~~(>_<)~~~~ )。感觉挺不错,通过引擎自带的TestCpp项目学到了挺多东西,嗨皮ing~\(≧▽≦)/~啦啦啦!!

细节决定成败!在学习Cocos2d-x的过程中也特别注意到一些细节问题,在此特意做一些简单的总结,希望能对你我未来的进一步学习有一些小小滴帮助~~

我会陆续将自己碰到的一些细节问题写到这篇博文中来的,也希望大家在评论中进行补充哦\(^o^)/~

 

你有一个想法,我有一个想法,交换以后我们就都有两个想法,交流以后我们可以产生更多的想法。我突然感觉自己补充的最后一句好经典啊,O(∩_∩)O哈哈~

 

废话少说,下面就开始吧:

1._setZOrder和setZOrder的区别

ZOrder相关设置,ZOrder是指在Z轴方向的顺序,指示对象的覆盖关系,其中_setZOrder只是改变本对象的成员函数,setZOrder除了改变本对象成员,还会调用父节点相关函数改变该对象在父对象中的位置

具体实现如下:

void CCNode::_setZOrder(int z)
{
	m_nZOrder = z;
}
 
void CCNode::setZOrder(int z)
{
	_setZOrder(z);

	if (m_pParent)
	{
		m_pParent->reorderChild(this, z);
	}
}


 2.VertexZ和ZOrder

VertexZ : OpenGZ的Z向量,这个可能会破坏cocos2dx的ZOrder关系

ZOrder : 是指在Z轴方向的顺序,指示对象的覆盖关系

 3.安全删除对象

删除对象之前最好先执行一次retain,以防止删除不存在的对象而产生内存错误。

CCSprite* sprite = (CCSprite*)(getChildByTag(10));    
sprite->retain();
removeChild(sprite, true);


 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值