turtlebot / turtlebot4_simulator

TurtleBot 4 Simulator packages
Apache License 2.0
67 stars 43 forks source link

TB4 Sim Crashes With Accelerate 3D Graphics (OpenGL 4.1) #25

Closed slowrunner closed 2 years ago

slowrunner commented 2 years ago

Issue: Turtlebot4 Ignition Gazebo simulation (standard or lite) crashes with OpenGL 4.1 3D Acceleration enabled

Configuration information:

- Virtual Machine: VMware Fusion 12.2.4 player 
- Host Machine OS:  macOS Monterey 12.16.1
- Host Machine: Mac Mini 2018 3.2 GHz 6-Core Intel Core I7 with 32GB RAM
- Graphics Card: eGPU with Radeon RX 580 8GB VRAM

**Expected Behavior**
TurtleBot 4 lite simulation should run at near real-time
(w/o 3D acceleration checked the sim does not crash but runs at 3% real-time)

 **Unexpected Behavior: Turtlebot 4 Simulation Crash**

(Note crash only occurs with Turtlebot 4 simulation, visualize_lidar.sdf does not crash)

Ignition Gazebo window opens for a while with Create3 HMI and Teleop panels showing, 
then disappears with console output showing:

... [Msg] Loading plugin [ignition-rendering-ogre] [ign gazebo-1] [Wrn] [ColladaLoader.cc:1894] emission texture not supported [ign gazebo-1] [GUI] [Wrn] [ColladaLoader.cc:1894] emission texture not supported [ign gazebo-1] [GUI] [Wrn] [ColladaLoader.cc:1894] emission texture not supported [ign gazebo-1] [Wrn] [ColladaLoader.cc:1894] emission texture not supported [ign gazebo-1] [Wrn] [ColladaLoader.cc:1894] emission texture not supported [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: ROOF. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: WALLS. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: PILLERS. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: FANS. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: INTERCOM. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: FireAlarm. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: FireAlarmPole. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: Pipes. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: STAIRS. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: BOXSET. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: FLOOR. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: FanBack. Checking first set with index: 0 [ign gazebo-1] [Wrn] [SubMesh.cc:446] Multiple texture coordinate sets exist in submesh: FAN1. Checking first set with index: 0 [ign gazebo-1] [Wrn] [ColladaLoader.cc:2394] Triangle input semantic: 'COLOR' is currently not supported [ign gazebo-1] [Wrn] [ColladaLoader.cc:2394] Triangle input semantic: 'COLOR' is currently not supported

... [ign gazebo-1] [Dbg] [Lidar.cc:122] Laser scans for [standard_dock::green_buoy_link::green_buoy] advertised on [world/depot/model/standard_dock/link/green_buoy_link/sensor/green_buoy/scan] [ign gazebo-1] [Wrn] [OgreGpuRays.cc:253] Horizontal FOV for GPU rays is capped at 180 degrees. [ign gazebo-1] [GUI] [Wrn] [ColladaLoader.cc:2394] Triangle input semantic: 'COLOR' is currently not supported [ign gazebo-1] [GUI] [Wrn] [ColladaLoader.cc:2394] Triangle input semantic: 'COLOR' is currently not supported [INFO] [ign gazebo-1]: process has finished cleanly [pid 3896] [ign gazebo-1] [Dbg] [GpuLidar



**To Reproduce**
1) ros2 launch turtlebot4_ignition_bringup ignition.launch.py model:=lite

**Other notes**
Crashes: Ubuntu 22.04.5 is running in Fusion 12.2.4 VMware player, "Accelerate 3D Graphics - Supports OpenGL 4.1)" checked
Does not crash: "Accelerate 3D Graphics" not checked **BUT** will only run at 3% real-time
Does not crash: world:=maze (and remove obstacles) even with "Accelerate 3D Graphics" checked - runs at 12-20% realtime.

Non-Turtlebot simulation does not crash with "Accelerate 3D Graphics" checked: ign gazebo -v 4 -r visualize_lidar.sdf
[ros_logs.tgz](https://github.com/turtlebot/turtlebot4_simulator/files/10005675/ros_logs.tgz)
[ignition_logs.tgz](https://github.com/turtlebot/turtlebot4_simulator/files/10005676/ignition_logs.tgz)
slowrunner commented 2 years ago

Closing: This seems to be a limitation specific to my particular computing environment. The sim does not crash if I run maze world, (and I prefer the simpler world).