Hi Robert,
shouldn't osgviewer crash as well then? Valgrind reports nothing for osgviewer
with this file.
Loading cube_triangulate.dae from the collada test model database gives this:
CullVisitor::apply(Geode&) detected NaN,
depth=nan, center=(2.26737e+37 -3.28032e+37 -3.28032e+37),
matrix={
nan nan nan nan
nan nan nan nan
nan nan nan nan
nan nan nan nan
}
... repeated lots of times.
Cheers,
Uli
On May 14, 2010, at 11:03 AM, Robert Osfield wrote:
> Hi Ulirch,
>
> The crash looks like the DrawArrayLengths contains a length that
> exceeds the number of vertices in the geometry, so it's not surprising
> the OpenGL driver is crashing.
>
> This error could mean a bug in the collada plugin, or possibly even a
> bug in the data file/the exported it came from.
>
> Robert.
>
> On Fri, May 14, 2010 at 9:54 AM, Ulrich von Zadow
> <[email protected]> wrote:
>>
>> 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
>>
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
--
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