我有一个搅拌机模型,有许多不同的动画。我正在尝试使用行走动画。
AnimControl control = characterNode.getControl(AnimControl.class);
control.addListener(new AnimEventListener() {
//empty event listener methods are in here
channel = control.createChannel();
channel.setAnim("walk");
我得到一个nullpointerexception
Uncaught exception thrown in Thread[LWJGL Renderer Thread, 5,main]
我认为这与animcontrol.class为空有关。任何事都有帮助。提前谢谢
1条答案
按热度按时间xu3bshqb1#
根据我的经验,类似这样的问题几乎总是与加载blender模型有关。根据您使用的加载程序(有两个)的不同,您将不会收到对包含来自的动画控件的模型部分的引用
loadModel
. 我发现我需要在blender对象层次结构中为包含动画的对象(而不是父对象)提供一个名称。然后我使用model.getChild()
在加载的模型层次结构中获取正确的命名对象。值得使用调试器在加载模型后立即中断代码,然后遍历层次结构检查
AnimControl
位于。这还可以让您了解加载程序如何排列模型中的对象。