I create a collada exporter for my software and would like to keep the double sided information in my textures.
So I use DeepExploration to visualize my file after the export. I tried to set the texture as double sided in DeepExploration and save the new file to find the correct syntax but the exporter of this software forget this information too.
Someone have an idea? Is this possible with the current specifications of Collada?
Thanks in advance
All geometry in Collada is double sided by default, so there isn’t anything to do. If Deep Exploration renders Collada data single sided by default, that’s an error in DE and should be reported.
Lots of tools have explicit support for tagging a material as single-sided, probably so that backface culling can be enabled. Those tools tend to export their own double sided flag as <extra> data.
[admin: COLLADA makes no policy about geometry rendering in this regard.]
Thank you for your reply.
I see that there are some tags for Maya or 3ds Max and now I know why!
Have an idea for the syntax in the <extra> tag recognized by openSceneGraph for the double sided or not textures?
I take a look to OSG code and te syntax is the same than GoogleSketchup :
a little bit strange but…
i’m french so escuse me for my very bad english…
i use papervision and in 3ds max 9 i have my texture in double sided, in the collada file, double sided=1 but i can’t see the other side on papervision… someone have an idea for my probleme
thanks and i’m too sorry for my english ^^
“All geometry in Collada is double sided by default.”
Can you supply a reference to specification or documentation that asserts this? I cannot find it in the specification. If it is not in the specification, can it be added?
The statement in question is not correct.
Geometry in COLLADA is described by one of: mesh, convex mesh, spline, B-rep. These descriptions are geometric and any visual or physical (or other) rendering appearance that they may acquire is bound to them during instantiation. Geometry makes little to no assumptions about a renderer, graphics or otherwise. I.e. geometry doesn’t know that it might be rendered in some manner by some application.
In the common case of the <mesh>, its primitives (i.e. triangles) may include a material attribute that symbollically requests a visual material. This material is ultimately bound (by the application) to an instance of <effect> that describes the visual appearance of the primitives. I.e primitives care a little bit about their possible appearance.
It’s the <effect> that describes how the geometry appears and COLLADA provides a <newparam> token of DOUBLE_SIDED (see pdf page27 of the 1.5 spec) to do that in the COMMON profile. The proper place to explicitely set single or double sided rendering of filled triangles is to declare a parameter in the effect, for the profile you are using, that sets it how you want. Otherwise it is application defined. I think many apps just assume D3D or OpenGL defaults or settings (e.g. single sided) and aren’t explicit about it in their content.