这个职位讨论了子类CCSprite或以CCSprite作为成员的缺点/优点。
假设我有一个CCNode,它有一个CCSprite作为成员。
然后,我将把CCNode作为子层添加到我的层中,并将CCSprite添加到CCNode中。
现在我想改变CCSprite的位置,应该更改包含CCSprite或CCSprite本身的CCNode的位置吗?
如果我改变了CCSprite的位置,CCNode的位置会发生什么变化?
发布于 2012-10-16 08:49:14
当您有多个希望与节点一起移动的the时,将CCSprite添加为CCNode的子级可能会有所帮助。
以玩家精灵为例。说你想在播放机下面放个阴影。将影子精灵和播放器精灵添加到父CCNode中,可以轻松地移动它们。
如果您有一个没有其他精灵的精灵,那么您不需要CCNode父级。
发布于 2012-10-15 08:56:32
你的雪碧什么事都不会发生。如果不将内容大小和锚指向您的sprite容器,则节点的位置始终等于节点的位置(0.f,0.f)。因此,你的精灵的位置将与它的父母相关(0.f,0.f)
发布于 2012-10-15 09:00:10
基本上,cocos2d-x中的所有节点都有一个父节点(除了场景)。
更改父节点的位置将将位置更改应用于其所有子节点,
改变子节点的位置不会影响任何事情,除非这个子节点有自己的子节点。
在您的示例中,如果更改CCSprite位置,则CCNode的位置将保持不变。但是,如果您更改了CCNode的位置,同样的更改(在屏幕上移动)将发生在雪碧上。
https://stackoverflow.com/questions/12892164
复制相似问题