Open cryham opened 4 months ago
Oops. The problem will be either in ActorSpawner.cpp ProcessWings()
or GfxActor.cpp UpdateFlares()
SimData.h, line 636 is a suspect - not initialized pointer.
I've debugged the crash on my ogre-14 branch (hope it's the same) and it is
in source/main/physics/ActorSpawner.cpp
here:
//wing closure
if (m_first_wing_index!=-1)
{
if (m_actor->ar_autopilot != nullptr)
{
m_actor->ar_autopilot->setInertialReferences(
& m_actor->ar_nodes[m_airplane_left_light],
& m_actor->ar_nodes[m_airplane_right_light], // <-- nullptr
m_actor->m_fusealge_back,
& m_actor->ar_nodes[m_actor->ar_camera_node_pos[0]]
);
}
2nd argument for setInertialReferences(
is null.
If I comment out this call, then it works, and I can fly airplanes etc.
Took me a while to find out. So if I set
Lights=None (fastest)
inRoR.cfg
then trying to get a new air vehicle (airplane, jet, helicopter etc) will crash RoR, not saying much in log. Checked on recent dev builds, on Debian 12, amdgpu.