为什么将场景管理器设置为场景节点的父级会在Irrlicht中引发错误

Why setting the sceneManager as parent of a sceneNode throws error in Irrlicht?

本文关键字:Irrlicht 错误 管理器 设置 为什么 节点      更新时间:2023-10-16

我在Irrlicht中创建了一个IAnimatedMeshSceneNode,当我从场景管理器的addAnimatedMeshScene函数创建它时,我设置了null指针。

根据需要,已成功创建动画网格。当我使用函数setParent(ISceneNode*parent)更改此动画节点的父节点时,当父节点指向现有节点时,它会起作用。

但是,当我再次将SceneManager指针设置为动画节点的父节点时,或者如果我将其设置为null父节点,则应用程序崩溃,我知道执行会在setParent(mySceneManager)上引发错误。

当我的动画节点已经创建时,我如何将根节点(场景管理器)设置为父节点?

您可以设置IAnimatedMeshSceneNode的Parent,如下所示:

        node->setParent(smgr->getRootSceneNode());

在本例中,IAnimatedMeshSceneNode和smgr是我的ISceneManager。

:)