i try to load a .dae file (let’s call it global.dae) with OpenSceneGraph (v2.6.1). Unfortunately during the load of the .dae file there is a segmentation fault…
After several test I identified that this segfault appears because of the call of instance_node like this : <instance_node url="./objects/external1.dae#car"/>. Indeed my global.dae file load external .dae files.
Of course i try to load the external .dae files and everything is ok.
I simplify the global .dae file to load external geometry with <instance_geometry …> and it works, so i don’t think there is a problem of URIResolver…
Is anyone can help me, because i’m close to get insane…
Run the coherency tests from http://sf.net/projects/colladarefinery/[/ul][ul]* Try to view the COLLADA file with another viewer to make sure OSG is not the problem here, a good one is the sample viewer from the NVIDIA SG http://developer.nvidia.com/object/nvsg_home.html[/ul][ul]* Get a DEBUG build from OSG and try to be more specific with the “segmentation fault”[/ul][ul]* post a link to the erroneous DAE file[/ul][ul]* give us more input about the OS (win,mac,linux,…) the used COLLADA-DOM version, …
First of all, here is my configuration details : ubuntu Hardy (8.04), collada dom 2.1 and openscenegraph 2.6.1.
I had a little of time to try what you propose. I run the coherencytest and i get some SCHEMA errors because of wrong attributes but and it’s probably more important, i obtain a seg fault when i simply check CIRCULR_REFERENCE.
I run the ConsoleViewer from the NVIDIA SG and i obtain this :
terminate called after throwing an instance of 'std::logic_error'
what(): basic_string::_S_construct NULL not valid
I try also the google earth loader and there is a crash…
I don’t have the time yet for the debug build from osg, i hope for tomorrow.
I try to use “instance_node” with simple dae file found on the net like cow.dae, here is what i write in the <visual_scene> node of the first .dae file :
There is one error in your first .dae file. In an <instance_node> you have to reference a <node> element, but you are referencing “cow.dae#VisualSceneNode” which is a <visual_scene> element. This might cause NVIDIA SG to crash.
We have just tried to reproduce the crash of the coherency using the precompiled linux version available at sf. Is that the version you are using? We used the cow.dae file found here, but the coherencytest passed without any messages. Is that the cow.dae file you are using? If not, could you send us your cow.dae file and your complete first .dae file, at least a stripped down version that still produces the crash of the coherency test?
That’s IT !!! Thank you very much. The <instance_node> must reference the parent <node> under the <visual_scene>… now it works. The .dae they gave to me was crap…