by limor » Wed Jul 05, 2006 12:25 pm
by limor
Wed Jul 05, 2006 12:25 pm
(i first posted this on the other thread and now moved it here.. so i may be off the thread flow kind of ..)
Writing a 3D physics-enabled simulator is a very big piece of work. Having done it, here are the parts that are required:
0) The actual physics simulator - collision&inertial objects, joints and collision detection
1) binding layer between physics simulator and 3D meshes including skeletal mesh
2) Editor for interactively placing the physical objects into the skeletal mesh
3) Finally the "intelligence" that applies forces to the robot's joints (otherwise it's just a ragdoll)
0) simulator - this is a suicide missions that can not succeed as a hobby project also because it is in the process of being standardized by Microsoft, Ageia and other big names. If 6degree tensors, LCP solvers and Lagrange multipliers is your forte', join the ODE.org club or see the
career opportunities section at continuousphysics.com
1) - Has been done. Binding between the 3D mesh and the simulated physics objects has been done by several game engines. Except for my own ezphysics, there are many programatic environments to bind Ogre (which is the best 3D programming abstraction library) and Ageia, ODE, Newton, Tokamak. Check out
this page. Microsoft have also developed this layer or have built on top of Ageia; need to dig into this.
2) I've worked on this editor piece quite a bit with ezphysics. Haven't uploaded the source code, just the exe, cause it's a big hassle to compile but i'll be happy to share this code. I heard that Maya allows you do do something like that with Havok but Havok costs $200k. I'm sure that Ageia have invested in providing such development environment with 3Dstudio/Maya for their own engine and file formats.
3) If you choose to do 1 and 2, I don't think you'll have much energy left for making the control system for a simulated RN1 which is IMHO where all the real fun resides.. so i can highly recommend against doing 1 and 2 if this is a hobby project.
I'll be happy to help build a humaniod robot simulator.
BTW: There's at least one commercial product -
http://www.cyberbotics.com/ and one big academic project -
http://www.germanteam.org/GT2005.pdf
(i first posted this on the other thread and now moved it here.. so i may be off the thread flow kind of ..)
Writing a 3D physics-enabled simulator is a very big piece of work. Having done it, here are the parts that are required:
0) The actual physics simulator - collision&inertial objects, joints and collision detection
1) binding layer between physics simulator and 3D meshes including skeletal mesh
2) Editor for interactively placing the physical objects into the skeletal mesh
3) Finally the "intelligence" that applies forces to the robot's joints (otherwise it's just a ragdoll)
0) simulator - this is a suicide missions that can not succeed as a hobby project also because it is in the process of being standardized by Microsoft, Ageia and other big names. If 6degree tensors, LCP solvers and Lagrange multipliers is your forte', join the ODE.org club or see the
career opportunities section at continuousphysics.com
1) - Has been done. Binding between the 3D mesh and the simulated physics objects has been done by several game engines. Except for my own ezphysics, there are many programatic environments to bind Ogre (which is the best 3D programming abstraction library) and Ageia, ODE, Newton, Tokamak. Check out
this page. Microsoft have also developed this layer or have built on top of Ageia; need to dig into this.
2) I've worked on this editor piece quite a bit with ezphysics. Haven't uploaded the source code, just the exe, cause it's a big hassle to compile but i'll be happy to share this code. I heard that Maya allows you do do something like that with Havok but Havok costs $200k. I'm sure that Ageia have invested in providing such development environment with 3Dstudio/Maya for their own engine and file formats.
3) If you choose to do 1 and 2, I don't think you'll have much energy left for making the control system for a simulated RN1 which is IMHO where all the real fun resides.. so i can highly recommend against doing 1 and 2 if this is a hobby project.
I'll be happy to help build a humaniod robot simulator.
BTW: There's at least one commercial product -
http://www.cyberbotics.com/ and one big academic project -
http://www.germanteam.org/GT2005.pdf