Hi Rizzen, Of course! I forgot to add this to the summary.
Sukender PVLE - Lightweight cross-platform game engine - http://pvle.sourceforge.net/ ----- "Rizzen" <[email protected]> a écrit : > Hi all, > > Defining a coordinate system for OSG is a good idea. Though to me the > most important aspect of reader and writers, is that this expression > must be true: > > read( write( A ) ) = A > > Rizzen > > Sukender wrote: > > Hi Ulrich, Paul, and all, > > > > I agree we should unify the coordinate system during loading AND > writing. Here are my suggestions : > > - Have plugins do NO rotation by default (reading and writing) when > the format doesn't have coordinate system information (that is to say > all but FBX and maybe FLT). > > - Have plugins read and apply coordinate system information if > available by default when reading. > > - Have optionnal READING options: > > - readXup, readYup, readZup to suppose model is X, Y or Z-up > (overrides format's coordinate system information) > > - readLeftHanded, readRightHanded (similar setting) > > - When in conflict (two options defined), use the latest one > > - Have optionnal WRITING options: > > - writeXup, writeYup, writeZup, writeLeftHanded, > writeRightHanded (which should almost never be supported, in my > opinion) > > - Let plugings optionnally support these options prefixed with their > name and "_". For instance "3ds_readYup" would assume ONLY ".3ds" > files are Y-up. These would take precedence over the general settings. > > - Also support "pluginName_read/writeAutoUp" and > "pluginName_read/writeAutoHanded", which would specifically deactivate > a global setting for a given plugin. For instance, "fbx_readAutoUp" > would let the plugin decide the up vector (here using coordinate > system information in the .fbx). "3ds_readAutoUp" would mean "no > rotation" for .3ds. > > - Write a portion of code somewhere in osgDB to parse all these > options and store it in a nice structure (to avoid each plugin > duplicating code). To be called with something like "myStructure = > osgDB::readStandardCoordinateSystemOptions(PLUGIN_NAME)". > > - As OpenGL doesn't have a "etched in stone" orientation standard, > use the osgGA as an "internal" standard (that is to say +Z up, right > handed) when a change is needed. > > > > 1. Please raise your hand if you agree, and tell about changes you'd > like to introduce in this summary. > > 2a. Please mention all plugins you know which break these rules. > > 2b. Please tell if you agree modifying those plugins. > > > > When all is ok, I'll code it. > > > > Cheers, > > > > Sukender > > PVLE - Lightweight cross-platform game engine - > http://pvle.sourceforge.net/ > > > > ----- "Ulrich Hertlein" <[email protected]> a écrit : > > > > > >> On 29/12/09 6:52 PM, Paul Martz wrote: > >> > >>> Paul Martz wrote: > >>> > >>>> I've noticed the same thing with OBJ. > >>>> > >>> A little digging reveals that the OBJ plugin has a "noRotation" > >>> > >> Option > >> > >>> that disables the x axis rotation. The rotation is only done on > >>> > >> file > >> > >>> load, not on file write. > >>> > >>> Rotation about x is on by default. I'd suggest a change to off by > >>> default, and the Option changed to "doRotation" to enable it. > >>> > >> The .x plugin has 'leftHanded' and 'rightHanded'. Maybe we could > >> establish a common > >> option for this type of functionality (one that does 'convert to > >> right-handed, Z-axis up'). > >> > >> There already are options with (apparently) related functionality > >> (courtesy of 'osgconv > >> --formats'): > >> > >> Coordinate system: > >> obj:noRotation > >> x:leftHanded > >> x:rightHanded > >> > >> Optimization: > >> obj:generateFacetNormals > >> obj:noTriStripPolygons > >> stl:generateNormals > >> stl:smooth > >> stl:tristrip > >> > >> Image orientation > >> hdr:NO_YFLIP > >> hdr:YFLIP > >> x:flipTexture > >> > >> Cheers, > >> /ulrich > >> _______________________________________________ > >> osg-users mailing list > >> [email protected] > >> > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > >> > > _______________________________________________ > > osg-users mailing list > > [email protected] > > > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > > > > _______________________________________________ > osg-users mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

