On May 14, 2010, at 12:33 AM, Ulrich Hertlein wrote:
> Hi Uli,
>
> On 14/05/10 2:06 , Ulrich von Zadow wrote:
>> I'm running into a crash when displaying collada files. The same collada
>> files load
>> cleanly in osgviewer, and other files load cleanly in my app. So this is
>> probably a bug in
>> my code, but still - maybe someone here has an idea what's wrong. The setup
>> is very
>> similar to osgscreencapture. Everything is being rendered into a pbuffer.
>>
>> The first symptom that something is wrong is this output when running in
>> valgrind:
>>
>> View::init()
>> Done DatabasePager::addLoadedDataToSceneGraph0.497ms, 0.21ms objects0
>>
>> ==1271==
>> ==1271== Conditional jump or move depends on uninitialised value(s)
>> ==1271== at 0x7B19753: ComputeBound::vertex(osg::Vec3f const&)
>> (BoundingBox:149)
>> ==1271== by 0x7B18401: ComputeBound::drawArrays(unsigned int, int, int)
>> (Drawable.cpp:690)
>
> What I'd try first is to save the scenegraph to a file and check that for
> anything out of
> the ordinary.
I've done that now. Nothing looks strange, but it's a little hard for me to see
what 'out of the ordinary' means in this context. This is the Geode that is
being traversed (it's also the last geode in the file):
Geode {
name "ID5226"
nodeMask 0xffffffff
cullingActive TRUE
num_drawables 1
Geometry {
name "Material1"
StateSet {
rendering_hint DEFAULT_BIN
renderBinMode INHERIT
GL_CULL_FACE ON
Material {
ColorMode OFF
ambientColor 0.2 0.2 0.2 1
diffuseColor 0 1 0.916667 1
specularColor 0 0 0 1
emissionColor 0 0.5 0.458333 1
shininess 0
}
}
useDisplayList TRUE
useVertexBufferObjects FALSE
PrimitiveSets 1
{
DrawArrayLengths TRIANGLES 0 1
{
49647
}
}
VertexArray Vec3Array 9643
{
-3.08069 18.7775 -0
-1.07575 19.3925 -0
[...]
> Are you able to get a stack trace from the crash? Is it in the same spot
> that valgrind is
> reporting?
Yep, the stacktrace looks very similar:
#0 ComputeBound::vertex (this=0xbff3b65c, ve...@0xa9d54ff8)
at /home/archimedes/devel/deps/OpenSceneGraph-2.8/include/osg/Vec3f:85
#1 0xb4380402 in ComputeBound::drawArrays (this=0xbff3b65c,
first=-1074547108, count=147156)
at /home/archimedes/devel/deps/OpenSceneGraph-2.8/src/osg/Drawable.cpp:690
#2 0xb44255f2 in osg::DrawArrayLengths::accept (this=0xa693e68,
funct...@0xbff3b65c)
at
/home/archimedes/devel/deps/OpenSceneGraph-2.8/src/osg/PrimitiveSet.cpp:91
[...]
Btw, the same code doesn't crash on a mac.
Cheers,
Uli
--
Ulrich von Zadow
Software Engineer (Dipl. Inf.)
Exhibit Development
Tel +49 (0)30 / 2000 577 12
Fax +49 (0)30 / 2000 577 20
Skype: uzadow
Archimedes Solutions GmbH
Saarbrücker Str. 24 10405 Berlin
www.archimedes-solutions.com
Geschäftsführung:
W. Rien | J. Schmidtsiefen | S. Spenling
Amtsgericht: Berlin Charlottenburg
HR Nr.: 107563 B
UST-ID Nr.: DE-253.771.793
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org