Robert Osfield wrote: > HI Zach, > > I'd recommend using the CVS version of the our COLLADA plugin. It > haven't yet checked in the removal of the daeSafeCast yet though, as > I'd like to find a solution that works with both the svn version of > the DOM and latest tagged release. > > As Chris mentions perhaps depdency on the DOM isn't the best way > forward and falling back to using our of XML parsing code would be the > cleanest and most supportable route.
I understand that depending on 3rd party libs is scary. 3rd party lib development is out of your control and things out of a person's control are inherently scary. But I don't think it is a good idea to divorce the plugin from the DOM. Especially not for a scanf parser solution. But if you were going to go down that route anyways, I would suggest using an XML library. That way you don't have to worry about all the XML issues, like element ordering, invalid XML handling, character encoding, etc. Libxml2 is really nice which is why we chose it for the DOM, but I hear expat is good too, and xerces but it's big and a little slower. But then you need to write URI handling and resolving code. And ID resolution code. And the COLLADA sid handling code. And the data marshaling with scanf. And maybe some data validation code. See it's a big can of worms you would be opening. If the OSG community is willing to spend so much effort to do all that work because they are a little frustrated with the COLLADA DOM why don't they put that effort into making the COLLADA DOM better? It's an open source project too. And I would love some help and contributions. It seems that all of this stems from frustration building the DOM not actually using it. We made a COLLADA DOM binary installer (one for VC7 libs and one for VC8 libs) that will install all of the libs, headers, and the external dependencies (libxml2, iconv, zlib) for you. No more chasing those down yourself. If you don't like the installer the external libs are available for download from the DOM project as a separate archive. Then there is the templated daeSafeCast function that creates an error. The function is extremely useful and I found that every COLLADA DOM project I worked on I wrote the function to use. So I thought it should just be part of the DOM so everyone could have that function. As the others have concluded, getting rid of that function (and daeUtils.h entirely) gets rid of that error. If it helps any, I think that this COLLADA DOM release is a very stable release and you wont be seeing many changes for quite some time. There are no more memory leaks, no initialization ordering problems (thanks to the OSG community for helping find and fix those errors since they were rare), and all the functionality I believe would be useful to developers. The only changes I see in the near future are performance optumizations (replacing printf and scanf with custom XML schema type io functions that are a lot faster therefore making the DOM load and save a lot faster.) -Andy > > Robert. > > On 11/25/06, Zach Deedler <[EMAIL PROTECTED]> wrote: >> I got COLLADA_DOM compiling, but now I am getting 'ambiguous call to >> overloaded function' errors when trying to compile the collada plugin. >> Argh! >> >> These errors: >> >> OpenSceneGraph\src\osgPlugins\dae\daeWTransforms.cpp(33): error C2668: >> 'osgdae::daeSafeCast' : ambiguous call to overloaded function >> OpenSceneGraph\src\osgPlugins\dae\daeWTransforms.cpp(37): error C2668: >> 'daeSafeCast' : ambiguous call to overloaded function >> OpenSceneGraph\src\osgPlugins\dae\daeUtils.h(22): could be 'T >> *osgdae::daeSafeCast<domNode>(daeElement *)' >> with >> [ >> T=domNode >> ] >> dae\daeElement.h(469): or 'T >> *daeSafeCast<domNode>(daeElement >> *)' [found using argument-dependent lookup] >> with >> [ >> T=domNode >> ] >> while trying to match the argument list '(daeElement *)' >> >> >> Zach >> >> -----Original Message----- >> From: [EMAIL PROTECTED] >> [mailto:[EMAIL PROTECTED] On Behalf Of Zach Deedler >> Sent: Saturday, November 25, 2006 17:46 >> To: 'osg users' >> Subject: [osg-users] Compiling collada >> >> Hello, >> >> I'm finally upgrading from OSG 1.0 to 1.2. >> >> PROBLEM >> I'm having trouble compiling the collada plugin, or finding >> information on >> how to do so. >> >> INVESTIGATION >> 1) Looks like the plugin requires 3rd Party libraries. >> 2) I've downloaded collada DOM at >> http://osgdb-collada.cvs.sourceforge.net/osgdb-collada/osgdb_dae14/ >> 3) That looks like it also requires libxml. >> 4) I am using VS7. >> >> Anybody have any information on this? >> >> Thanks. >> >> Zach Deedler >> FAAC Incorporated >> 1229 Oak Valley Dr. >> Ann Arbor, Michigan 48108 >> Phone: (734)761-5836 Ext.303 >> Fax: (734)761-5368 >> email: [EMAIL PROTECTED] >> <http://www.faac.com> >> >> _______________________________________________ >> osg-users mailing list >> [email protected] >> http://openscenegraph.net/mailman/listinfo/osg-users >> http://www.openscenegraph.org/ >> >> _______________________________________________ >> osg-users mailing list >> [email protected] >> http://openscenegraph.net/mailman/listinfo/osg-users >> http://www.openscenegraph.org/ >> > _______________________________________________ > osg-users mailing list > [email protected] > http://openscenegraph.net/mailman/listinfo/osg-users > http://www.openscenegraph.org/ > _______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
