Collada Converter Segfault

Physics APIs, Physics file formats, Maya, Max, XSI, Cinema 4D, Lightwave, Blender, thinkingParticles™ and other simulation tools, exporters and importers
Post Reply
BlGene
Posts: 5
Joined: Mon Sep 20, 2010 1:59 pm

Collada Converter Segfault

Post by BlGene »

I want to convert a Collada file, which was authored by the the Blender exporter, to Bullet.

Q1) When importing geometries from Blender is ReadBlend a better option than Collada?

When I try to import the .dae file using the AppColladaDemo the program segfaults, with the following gdb trace(see below). The problem is caused by URI so I collected a list of id elements from the file (lines are truncated, see below).
I tried to attach the .dae file extension was not allowed.

Q2) What is this URI error caused by?

Q3) I only need the geometric data in Bullet, if it helps the URI issue is there a way to specify this to the Collada importer?

Q4) This question is somewhat unrelated to my problem but is openCollada currently the best Collada SDK?

AppColladaDemo GDB trace

Code: Select all

opyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(gdb) run right_palm.dae 
Starting program:
/home/lang/phys/bullet/dynamica-src/Demos/ColladaDemo/AppColladaDemo
right_palm.dae
[Thread debugging using libthread_db enabled]
argc=2
argv[0]=/home/lang/phys/bullet/dynamica-src/Demos/ColladaDemo/AppColladaDemo
argv[1]=right_palm.dae
[New Thread 0xb79e86e0 (LWP 10941)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb79e86e0 (LWP 10941)]
0xb7bef18a in strcmp () from /lib/libc.so.6
(gdb) backtrace  
#0  0xb7bef18a in strcmp () from /lib/libc.so.6
#1  0x081dac7e in daeURI::validate ()
#2  0x081db1ab in daeURI::resolveElement ()
#3  0x081cbc6d in daeResolverType::resolve ()
#4  0x081d479e in daeMetaAttribute::resolve ()
#5  0x081d2399 in daeElement::resolve ()
#6  0x081d2420 in daeElement::resolveAll ()
#7  0x081de2ca in daeLIBXMLPlugin::read ()
#8  0x081cac55 in DAE::load ()
#9  0x08182ba9 in ColladaConverter::load ()
#10 0x08171b55 in ColladaDemo::initPhysics ()
#11 0x08171d0b in main ()

Code: Select all

		<effect id="Material_003-fx" name="Material_003-fx">
				<technique sid="blender">
		<effect id="Material_002-fx" name="Material_002-fx">
				<technique sid="blender">
		<effect id="Material_001-fx" name="Material_001-fx">
				<technique sid="blender">
		<material id="Material_003" name="Material_003">
		<material id="Material_002" name="Material_002">
		<material id="Material_001" name="Material_001">
		<geometry id="ShapeIndexedFaceS_002" name="ShapeIndexedFaceS_002">
				<source id="ShapeIndexedFaceS_002-Position">
					<float_array count="13287" id="ShapeIndexedFaceS_002-Position-array">0.01904 -0.00764 0.08182 0
				<source id="ShapeIndexedFaceS_002-Normals">
					<float_array count="38862" id="ShapeIndexedFaceS_002-Normals-array">0.97690 0.09803 0.18976 0.9
				<vertices id="ShapeIndexedFaceS_002-Vertex">
		<visual_scene id="Scene" name="Scene">
			<node layer="L1" id="ShapeIndexedFaceS_001" name="ShapeIndexedFaceS_001">
				<translate sid="translate">0.00000 0.00000 0.00000</translate>
				<rotate sid="rotateZ">0 0 1 0.00000</rotate>
				<rotate sid="rotateY">0 1 0 -0.00000</rotate>
				<rotate sid="rotateX">1 0 0 0.00000</rotate>
				<scale sid="scale">1.00000 1.00000 1.00000</scale>
		<physics_material id="ShapeIndexedFaceS_001-PhysicsMaterial" name="ShapeIndexedFaceS_001-PhysicsMa
		<physics_model id="Scene-PhysicsModel" name="Scene-PhysicsModel">
			<rigid_body name="ShapeIndexedFaceS_001-RigidBody" sid="ShapeIndexedFaceS_001-RigidBody">
		<physics_scene id="Scene-Physics" name="Scene-Physics">
User avatar
Erwin Coumans
Site Admin
Posts: 4221
Joined: Sun Jun 26, 2005 6:43 pm
Location: California, USA
Contact:

Re: Collada Converter Segfault

Post by Erwin Coumans »

Please use the Blender .bullet export or readblend instead of COLLADA.

Thanks,
Erwin
Post Reply