Source

gazebo / TODO

Open:
- Use the Contact information in the Collision Callback. See CVS version of Gazebo.
- Apply Linear and Angular Damping, see OGREODE sources.
- Add check for boost
- A static geom which is offset does not actually move the geom, so collision
  detection does not work
- Try out code on AMD64 machine
- Python scripts to models, allow dynamic (movable) meshes
- Force sensors
- Slider has to be the first in the XML file, when loading a bunch of joints in a model.
- Why order on hinge and hinge2 joints matters? Should we avoid this?
- Add note in Controller tutorial about the Controller Factory
- Overlays in Gazebo with Mac doesn't work
- Implement Speech interface
- Add in user adjustment of simple solids texture units
- Fix sicklms200 PutFiducialData. Breaks when using large angles
- Mouse picking
- Paging heightmaps. 
  - Positioning the current heightmap is a big hack

- Intelligent positioning of nested models
- BSP worlds

- Apply patches for OSX from Nathan Michael. Add a OSX howto to the docs.
- Pioneer2DX

- Create libraries so that it's easy to include the core of gazebo without linking in Ogre, fltk, etc, etc. 

- Write a tutorial for creating new meshes
- Install for OSX


- Graphics3d interface
- Improve build system. Put all the platform checks in on place. 

- BSP loader

- Replace our Time class with boost

- GPS 
- WiFi

- Multilevel map extruder

- Add spring force between bodies of a model to keep the together. See ODE example test_joints.cpp

-run gprof, and valgrind

- Hand of god
  - Select models and get info
  - Move models
- Better fonts
- reorganize the Media
- Better camera movement. Translate is too slow over long distances

-Fog
- Anti Aliasing
- Threading. Make use of dual-core machines.
- Implement triggers with callbacks.

- Better lights
  - GLSL per pixel lighting. Make this user selectable.

- Pick a formatting standard for XML file
- Dynamic textures
- Scripting interface for models and sensors
- Google Earth API interface
- Check laser sampling rate
- Standardize internal API
- Data Logger
- Replace all return int, with throws
- The bodies set their scenenode based on a global pose. They should set their scenenodes based a pose relative to the model. The model currently doesn't move it's scene node, so it's always at (0,0,0). Basically should make all Body Pose stuff relative to the parent.
-Allow person to display and change XML parameters through the GUI.
-Look into COLLADA, OPAL, Bullet Physics & Collisioin detection engine
-Add "Angle" class, will handle ROTD and DTOR.
-Templatize Vector, Quaternion, Pose


Completed:
- Laser and Camera Interfaces
- Pose3d Interface. Thanks Toby
- Lights, and global ambient
- Enable/disable sky box, and set material
- New Coordinate system
- Pause and step simulation
- Set the screen size
- Toggle HUD display using tab
- Help overlay
- Show simTime, realTime, pauseTime
- XML include
- Check for player.
- Trimesh 
- Move Sensors out of Body
- Laser retro and fiducial detection
- Truth
- Factory
- Fix Player include so that libgazebo doesn't link in player
- FLTK interface
- Write install instructions
- Write keyboard mappings
- Write a tutorial for creating custom models
- Write a tutorial for creating new controllers
- Write a tutorial for creating new sensors
- Write a tutorial for using player
- Heightmaps
- Handle GUI resizing


- Implement SimulationProxy. Removed truth controller
- Return the sim time from Gazebo in the simulation proxy
- Add mass property
- When nesting a camera in a pioneer model it cause the pioneer to flip over.
- Libagazebo/Player INterfaces crash when a client and playerv connects, and then one of them disconnects
- Implement Act array
- look into using FL::RUN. Using threads now
- Add in Pioneer blender models
- Add check for libxml2
- Add uninstall (scons -c automatically handles this!)