[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Public WebGL] Re: [COLLADA] WebGL / Collada demo

Hi Erik,

Autodesk has told me that it provides two email addresses regarding the FBX product:


... there are also bug report and feature request forms for FBX as referenced from http://usa.autodesk.com/adsk/servlet/ps/index?siteID=123112&id=14376146&linkID=9241657 . I suggest reporting your issues to either or both of them as well, as appropriate. The FBX product page is going to be your best source of information about it:


Please note that Khronos has not yet certified any product as being COLLADA conformant.


Regarding normal maps, COLLADA 1.4 best supports such multi-texturing use cases with standard effect profiles for OpenGL, OpenGL ES, and Cg. COLLADA 1.5 added profiles for OpenGL ES 2.0 (i.e. WebGL) and a bridge to external FX systems like DirectX and CgFX. Software that relies on the limited features of profile COMMON for effects must use extensions to describe non-trivial texturing use cases. For examples of this see the two open source projects: OpenCOLLADA and ColladaMaya; and also the commercial version of ColladaMaya from Feeling Software.


Regarding the animation exports from FBX, besides any bugs it might have ... I also suggest reading the COLLADA 1.5 spec, chapter 4 section on Curve Interpolation, and chapter 5 section on sampler, for clarification on the subject and possible representations.


Mark Barnes
Sr Software Architect, Biodroid
Khronos COLLADA work group chairman

On Thu, Mar 10, 2011 at 9:18 AM, Erik Möller <emoller@opera.com> wrote:

Sorry about the cross posting, but the collada list seems to be very low traffic and I figured there would be people on the WebGL list sitting on relevant info.

I'm working on a WebGL / Collada demo and article that will be published on dev.opera.com this spring. It's working pretty well, but there are a few outstanding issues I need to address.

One of the models used is a fairly complex rigged, skinned and normal-mapped character. I'm exporting the model using Maya and the latest FBX plug-in (2011.3.1). Now, is there something I've missed or is there no support in Collada for normal maps? If so what are the plans for adding it in?

I've also been trying to find a decent Collada viewer to verify that the exported data is actually correct, but haven't been very successful. The ones I've downloaded and tried has only worked for very simple scenes. The best one I've tried to date is the default "Preview"-application shipping with OS X but it too fails on my character model. Any tips on good viewers to try that can deal with joints and multiple skins?

I'm seeing a pretty strange result when exporting the skeleton. A few of the joints are oriented all wrong. Since one of them was very obvious (off by 180 degrees) I managed to work out that by changing the sign of the angle on rotations labeled with "post-rotation" and also changing the rotation order for "post-rotations" it would be correct and lo and behold all the other joints popped into the right place.

Now, since I haven't found a viewer that can show this model I haven't been able to identify if it's a mistake in my code or simply wrong data getting exported so again, pointers on decent functional Collada viewers are greatly appreciated or if you by chance have some great insight in how these "post-rotations" are calculated and used and would like to share it with me that's even better.

I dumped the dae containing just the skeleton here in case someone wants to check if their neat viewer can get it right. http://people.opera.com/~emoller/anim_walk_GDC.dae

Another issue I've come across is that when Maya specifies BEZIER for animation data you get passed two control points and two tangents as opposed to four control points like the spec says. "HERMITE is equivalent to BEZIER, but instead of providing the control points C0 and C1, tangents T0 and T1 are provided." I've never gotten HERMITE back from Maya so I'm not sure if the two types are flipped around or if it's always exporting two control points and two tangents.

Erik Möller
Core Developer
Opera Software