Opened 13 years ago
Last modified 12 years ago
#1012 closed defect
COLLADA: Support special vertex weight index on skinned models — at Version 3
Reported by: | historic_bruno | Owned by: | historic_bruno |
---|---|---|---|
Priority: | Should Have | Milestone: | Alpha 9 |
Component: | Core engine | Keywords: | blender, collada, skinning |
Cc: | Patch: |
Description (last modified by )
For skinned models, the COLLADA 1.4.1 spec allows a special vertex weight index of -1, which indicates the weight applies to the bind-shape matrix* instead of a particular bone, as seen in this example:
<skin> <source id="joints"/> <source id="weights"/> <vertex_weights count="4"> <input semantic="JOINT" source="#joints"/> <input semantic="WEIGHT" source="#weights"/> <vcount>3 2 2 3</vcount> <v> -1 0 0 1 1 2 -1 3 1 4 -1 3 2 4 -1 0 3 1 2 2 </v> </vertex_weights> </skin>
(*The bind-shape matrix represents the transform of the bind-shape prior to skinning, it transforms the bind-shape from object space to bind-space. It's specified by a <bind_shape_matrix>
element in the <skin>
or assumed to be an identity transform. See pages 4.6-4.8 of the COLLADA spec for more notes.)
Currently if you try to add such a model to the game, it will fail to import since the PMD converter thinks there are more than 256 bones (the -1 index is typecast to an unsigned int). Apparently Blender 2.60a likes to export such models and seems to have made general improvements to animation exporting, so we should find a way to implement this.
As a workaround, it may be possible to export animations with Blender 2.6 and the corresponding models with an older version.
Change History (5)
by , 13 years ago
Attachment: | ram_blender26.dae added |
---|
comment:1 by , 13 years ago
Description: | modified (diff) |
---|
comment:2 by , 12 years ago
Owner: | set to |
---|---|
Status: | new → assigned |
6-wheeled ram exported from Blender 2.60a