Development news: huge Collada import improvements

July 31, 2011
Collada 3D text logo (from collada.org/owl)
Collada flat logo (from collada.org/owl)
Collada Faerie Forest (from collada.org/owl)
Collada Faerie Forest (from collada.org/owl), different view
Collada Lunar Vehicle (from collada.org/owl)
Collada Seymour model (from collada.org/owl)
Collada Turbochi model (from collada.org/owl)

Our Collada importer received a lot of improvements this week. They improve both rendering of Collada models, and converting them to X3D (as our importer simply loads Collada to X3D node graph in memory). As always, remember that you can try all the new features immediately by downloading a binary from our nightly builds!

New Collada features handled:

  • Textures (texture image name, tex coords, tex coord index).
  • Normals.
  • Cameras (perspective, orthographic — all possible types) and their properties (field of view, znear, zfar).
  • Lights (spot, point, directional, ambient — all possible types) and their properties (color, attenuation, falloff angle, radius (from Blender profile <dist>)).
  • All primitives (trifans, tristrips, lines, linestrips, in addition to previous polygons, polylist, triangles — all possible types).
  • Geometry with many polylists (for example exported from Blender when you use multiple materials on a single Blender object).
  • Collada 1.5 version is recognized and handled. We now handle any 1.3, 1.4, 1.5.
  • Appearances, coordinates, tex coords, normals are correctly reUSEd when converting Collada to X3D.
  • Double sided information from Collada is read. There is no standard way to express this in Collada 1.4 as far as I know, we just handle what Blender exporter and various Collada test models use inside <geometry>:
      <extra>
        <technique profile="MAYA">
          <double_sided>1</double_sided>
        </technique>
      </extra>
    
    Any value <> 0 as double_sided means "true".
  • <lambert> is handled (just like <phong>).
  • A lot of fixes (to allow libraries in weird orders, etc.).

Our Collada import was tested on many models from COLLADA Test Model Bank and on Collada models exported from Blender 2.58.

Note that Blender currently writes incorrect normals (disregarding "Auto Smooth Angle"), this makes some models exported from Blender (Collada as well as X3D) have incorrect shading.

Also, VRML/X3D demo models 3.0.1 have been released, with minor fixes and updates, including better webpage text.