Panda3D and load_model c++

Panda3D and load_model c++

本文关键字:model c++ load and Panda3D      更新时间:2023-10-16

我是panda3d的新手,正在尝试hello世界。

我已经得到了运行程序只需:

PandaFramework framework;
framework.open_framework(argc, argv);
WindowFramework *window = framework.open_window();
framework.main_loop();
framework.close_framework();
return 0;

但是,如果我加上:

NodePath environt = window->load_model(framework.get_models(), "panda-model");
environt.reparent_to(window->get_render());
environt.set_scale(0.25, 0.25, 0.25);
environt.set_pos(-8, 42, 0);

在mainlop()之前,它不会编译。我在c++项目的每个文件夹中都有panda-model.eg.pz,但每次我的程序中断时:

environt.reparent_to(window->get_render());

excat消息为:Irr.exe中0x0152a317处未处理的异常:0xC00001A5:检测到无效的异常处理程序例程。

它编译得很好,唯一的问题是找不到pdb文件,但这并不重要。

有什么想法吗?

Btw,im使用MSVC++2010和panda3d 1.7.2

我能找到的唯一错误是:Irr.exe中0x00bfa317处的首次机会异常:0xC0000005:读取位置0x737265db的访问冲突。Irr.exe中0x00bfa317处未处理的异常:0xC00001A5:检测到无效的异常处理程序例程。程序"[8476]Irr.exe:Native"已退出,代码为0(0x0)。

我敢肯定这仍然相当模糊。很抱歉,这是我能找到的全部。如果有必要的话,我很乐意多描述一下。

当前版本的Panda3D不支持Microsoft Visual C++2010。您将需要使用2008或从源代码编译针对MSVC 2010的Panda3DSDK。(这并不像听起来那么简单,因为您还需要编译一些第三方软件包才能与2010兼容。然而,这是可能的。)

如果你坚持使用2010年而不是2008年,这个论坛帖子可能会有所帮助:https://www.panda3d.org/forums/viewtopic.php?t=12663