Backwards Compatibility Notes
- Python 2.5 is no longer supported. Supported versions are now 2.6, 2.7 and 3.2.
- Added support for reading the opaque attribute from <transparent> tag.
- Normals and texture coordinate indices are now available in shapes (Triangle and Polygon).
- Library is now compatible with python’s built-in ElementTree API instead of requiring lxml. lxml is still recommended.
- Added support for Python 3.2. Supported versions are now 2.6, 2.7 and 3.2.
- Added support for index_of_refraction in <effect>.
- Added optional parameter to Collada that does XML schema validation when saving.
- Automatically corrects broken files that don’t have correct xfov, yfov, and aspect ratio in cameras.
- Fix the default value for transparency in Effect. Now correctly defaults to 1.0 when opaque mode is A_ONE, and 0.0 when opaque mode is RGB_ZERO.
- Fixed bug where BoundPolylist was not returning the correct length value.
- Removed support for RGB from Effect since it’s not valid in the spec. If an RGB is given, a fourth A channel is automatically added as 1.0.
- Made instance_geometry not write an empty bind_material if it’s empty since it breaks validation.
- Made saving strip out empty <library_*> tags since it breaks validation.
Backwards Compatibility Notes
- If using the old Camera object, this has been changed to an abstract class
with types for PerspectiveCamera and OrthographicCamera
- If using the old Collada.assetInfo dictionary to read asset information, this
has been changed to an object. See documentation for more information.
- Added support for bump maps inside the extra tag of an effect
- Added texbinormal and textangent to triangle sets
- Added a method to generate texture tangents and binormals
- Added detection for double_sided
- Added an optional parameter to specify what filename inside an archive to use when loading from zip
- Added support for loading multiple sets of library_* nodes
- Refactored asset information into a separate module. Fixed #12
- Refactored Camera into PerspectiveCamera and OrthographicCamera, inheriting from Camera
- Changed Collada IndexedLists attributes to be properties. Fixed Issue #14
- Updated scene to use a local scope when nodes are instantiated inside a scene
- Changed parsing to raise DaeMalformedError when an lxml parser exception is thrown
- Fixed bug when loading an <image> tag local to an <effect> not showing up in Collada.images
- Fixed bug when loading an empty <polygons>
- Fixed bug in if statement when loading morph controllers
- Fixed bug when triangulating a length-0 polylist
- Updated install instructions for OS X and Ubuntu problems
- Fixed bugs in IndexedList from Issue #13
- Fixed a bug where using the same map twice in an effect would cause incorrrect output
- Changed geometry export to delete any sources in the vertices tag that no longer exist
- Changed library output to not output emtpy library nodes so validator doesn’t complain
- Add same checks in scene loading that was done in library_nodes loading so that if nodes are not found yet while loading, it will keep trying
- Changed the way library_nodes is loaded so that if a referenced node from instance_node is not loaded yet, it will keep trying
- Fixed bug where a triangles xml node would try to set an attribute to None
- Fixed bug in handling joints that influence 0 vertices
- Changed the way instance_node is handled to actually maintain the mapping so it’s not lost when saving
- Added setdata function to CImage and made Effect compare only image path
- Fixed a bug when rewriting geometry sources
- Change primitive sources to point to the <vertices> tag when possible since other importers don’t like not having a <vertices> tag
- Export source data with only 7 decimal precision for better file size
- Prevent NaN from being the result of a normalize_v3 call
- Fixed bug where effect was not correctly reading all four color values
- Fixed a bug where a triangleset would not create its xml node when generated from a polylist
- Big speed increases for converting numpy data to strings
- Moved getInputs function to Primitive
- Added functions to triangleset to generate normals and get an input list
- Fixed bug in saving a scene node if there was no id
- Fixed some bugs/optimizations with saving
- Added function to test if an Effect is almost equal to another Effect
- Adding dynamic dependencies to setup.py
- Fixed bug with saving existing files that didn’t have some library_ tags.
- Many bugfixes
- polylist support
- polygons support without holes
- lines support
- blinn and constant material support
- More effect attributes
- Better support for auxiliary texture files
- Lights (directional, ambient, point, spot)
- lookat transform
- Experimental controller support (skin, morph)
- polygons/polylist can be triangulated
- Automatic computation of per-vertex normals
- Initial release
- Triangles geometry
- Reads vertices and normals
- Multiple texture coordinate channels
- Phong and Lambert Materials
- Texture support using PIL
- Scene suppport for geometry, material and camera instances
- Transforms (matrix, rotate, scale, translate)