在CCLayer中,我addchild一个CCNode的自定义子类。
1,在这个CCNode中,添加了一个CCSprite,
此时,通过VS调试,可以观察到CCSprite中,m_obPosition{x=0.00000000 y=0.00000000}
在屏幕上点击一个点(使用moveto移动到该点,方法 CCNode->runAction(moveto);),CCSprite能够移动到指定位置。
,
2,在这个CCNode中,添加了一个CCPhysicsSprite而不是CCSprite(在CCLayer中已经初始化了一个world)
此时,通过VS调试,可以观察到CCSprite中,m_obPosition{x=240.00000000 y=160.00000000}
在屏幕上点击一个点(使用moveto移动到该点,方法 CCNode->runAction(moveto);),CCPhysicsSprite不会移动。
但是如果直接对CCPhysicsSprite做moveto操作则可以成功(方法 CCNode->CCPhysicsSprite->runAction(moveto);)
我理解的,这里的这个m_obPosition应该是相对于CCNode的坐标吧(因为是子节点)。但是
1,为什么CCPhysicsSprite的m_obPosition会被设置一个值了?我并没有做setPosition的操作。
2, 为什么直接操作CCNode的时候,CCPhysicsSprite在这个场景中不会移动了?因为他和world关联了?或者还需要做些什么操作了?
求大神们赐教
,