C++ 在Cocos2d中设置相对于场景的位置
我试图在cocos2d中使用C++ 在Cocos2d中设置相对于场景的位置,c++,cocos2d-x,C++,Cocos2d X,我试图在cocos2d中使用DrawNode,它是Sprite的子节点。精灵的位置和旋转会影响子DrawNode的位置和旋转,正如您所期望的那样 我正在尝试将绘图节点的位置和旋转设置为不受其父节点(精灵的影响) 我已经尝试将self->addChild(self->drawNode)更改为self->getScene()->>addChild(self->drawNode),这将很好地工作(如果工作正常),但我收到一个错误,说self->getScene()返回一个nullptr。这是因为它还没
DrawNode
,它是Sprite
的子节点。精灵的位置和旋转会影响子DrawNode
的位置和旋转,正如您所期望的那样
我正在尝试将绘图节点的位置和旋转设置为不受其父节点(精灵的影响)
我已经尝试将self->addChild(self->drawNode)
更改为self->getScene()->>addChild(self->drawNode)
,这将很好地工作(如果工作正常),但我收到一个错误,说self->getScene()
返回一个nullptr
。这是因为它还没有被添加到任何场景中
如何相对于场景/世界定位DrawNode
例如:
this->drawNode()->drawLine(点::零,点(0100),颜色4f::红色)
画一条直线,从雪碧开始
我的目标是让它从窗口的右下角直接向上画一条线。如果您想在添加精灵之前访问场景,则可以始终从导演处访问当前正在运行的场景
auto scene = Director::getInstance()->getRunningScene();
scene->addChild(draw_node);
@Rabbid76是的,我知道这是可能的,但我只是想保持我的代码干净,并尽量减少场景类,如果这有意义的话。如果我能把DrawNode
作为玩家Sprite
@Rabbid76的孩子,那就更好了谢谢你对我的question@Rabbid76为什么你一直对我的问题进行不变的编辑?@rabbi76要删除你的否决票?@rabbi76你不能通过取消否决票来撤销否决票按钮,甚至投票?