From: <or...@de...> - 2011-09-26 20:05:17
|
Thank you Hedayat for your answer! After some failures I (hopefully) understood something more about RSG format and its functioning and I finally managed to load my model in the simulation and move. These are the infos I collected (please correct me if something wrong): - there is a strict relation between rsg format and spark framework and many expressions are treated as class names and methods invocations, so it's a good idea to have a look to the API documentation. Using this support the NAO description is quite self explanatory. - it's useful to have the meshes centered in their bounding box to make the specification of the collision and phisics volume easier. I think it's not possible to specify different position for a mesh and its collision bounding box - the positioning of the models parts are relative to the origin of the entire model, so, for example, if you know the position of the arm relative to the shoulder and the position of the sholder relative to the torso (and the torso is the base element) you have to specify the sum of the positions -rotations are eulerian ZYX -anchor positions for hinge joints are relative to the child: for example to insert a joint between the torso and shoulder you have to specify its position relative to the unrotated shoulder origin (the original mesh reference frame) -instead I didn't discovered how the joint rotation axes should be fixed. It seems they are not relative to the global frame nor to the mesh frame... I had to try different configurations to find the correct ones - there is a useful switch structure: (switch $variable (<value1> (<expression for value 1>) ) (<value2> (expression for value 2>) ) ... ) Now I'm trying to understand why StaticMeshInitEffector node tries to plant my model in the ground with a beautiful pike dive as result :) , but I think it is related to the soccer simulation (and NAO dimensions). By removing its specification the simulation still runs with some warnings. |