openai / roboschool

DEPRECATED: Open-source software for robot simulation, integrated with OpenAI Gym.
Other
2.13k stars 488 forks source link

The ATLAS robot COLLADA/DAE models have invalid texture references. #200

Open keskival opened 5 years ago

keskival commented 5 years ago
tero@LeCun:~/git/roboschool/roboschool/models_robot/atlas_description/meshes_unplugged$ grep png *
l_foot.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
l_lglut.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
l_lleg.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
l_talus.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
ltorso.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
l_uglut.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
l_uleg.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
mtorso.dae:    <image id="Map #0-image" name="Map #0"><init_from>../materials/textures/torso_diffuse.png</init_from></image>
r_clav.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
r_foot.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
r_lglut.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
r_lleg.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
r_scap.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
r_talus.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
r_uarm.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
r_uglut.dae:    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
tero@LeCun:~/git/roboschool/roboschool/models_robot/atlas_description/meshes_unplugged$ ls ../materials/textures/*.png
ls: cannot access '../materials/textures/*.png': No such file or directory

Additionally the texture references from inside diffuse tags reference the images in the library directly:

            <diffuse>
              <texture texture="Map #3-image" texcoord="CHANNEL0">

referencing directly to these element ids:

  <library_images>
    <image id="Map #2-image" name="Map #2"><init_from>../materials/textures/extremities_diffuse.png</init_from></image>
    <image id="Map #3-image" name="Map #3"><init_from>../materials/textures/extremities_diffuse_unplugged.jpg</init_from></image>
  </library_images>

This seems to be against COLLADA spec, as per this comment here: https://github.com/KhronosGroup/OpenCOLLADA/issues/92#issuecomment-13135708

The above two problems make it impossible to import the DAE model files to Blender. Fixing the above problems by removing the invalid texture references by hand makes the import possible without the textures of course.