Hi,
since in the latest revisions Gazebo uses the same coordinate frames as Ogre the TimeshGeom class needs a small update: *(vertPtr+0) = (*pFloat++) * scale.x; *(vertPtr+1) = (*pFloat++) * scale.y; *(vertPtr+2) = (*pFloat++) * scale.z; instead of: *(vertPtr+1) = (*pFloat++) * scale.x; *(vertPtr+2) = (*pFloat++) * scale.y; *(vertPtr+0) = (*pFloat++) * scale.z; Also I've found another problem with the TrimeshGeoms: if I run the worlds/trimesh.world as it is everything is all right. But if I modify the scale of the trimesh from .2 .2 .2 to .1 .1.1 for example and run the simulation, as soon as the body touches the floor Gazebo crashes because of an assert in Ogre: gazebo: ../../OgreMain/include/OgreAxisAlignedBox.h:239: void Ogre::AxisAlignedBox::setExtents(const Ogre::Vector3&, const Ogre::Vector3&): Assertion `(min.x <= max.x && min.y <= max.y && min.z <= max.z) && "The minimum corner of the box must be less than or equal to maximum corner"' failed. I've noticed that right before the crash, in the update cycle, the /Body::GetPosition/ returns /nan/ (actually it gets NULL from /dBodyGetPosition/). I'm not sure if this is the cause. Also with: // TODO: This should probably be true....but "true" breaks trimesh postions. this->SetPose(pose, false); in Geom.cc line 117 it doesn't crash, but then I think the positioning of the geoms messes up. I'm having trouble finding the source of this crash. I would appreciate any ideas or advices where to look further. Mihai ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Playerstage-gazebo mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo
