Hi all,
I'm trying to draw a scene and I'm getting the error:
Unhandled exception at 0x7c812a5b in Mocu.exe: Microsoft C++ exception:
std::bad_alloc @
0x0012f19c.
I've stepped through the code of osgutil and it crashes on:
_drawable->draw(renderInfo);
Which is inside
void RenderLeaf::render(osg::RenderInfo& renderInfo,RenderLeaf* previous)
Unfortunately I can't go inside the draw method since its not a cpp, but the
method looks like:
inline void Drawable::draw(RenderInfo& renderInfo) const
{
if (_useDisplayList && !(_supportsVertexBufferObjects &&
_useVertexBufferObjects &&
renderInfo.getState()->isVertexBufferObjectSupported()))
{
// get the contextID (user defined ID of 0 upwards) for the
// current OpenGL context.
unsigned int contextID = renderInfo.getContextID();
// get the globj for the current contextID.
GLuint& globj = _globjList[contextID];
// call the globj if already set otherwise compile and execute.
if( globj != 0 )
{
glCallList( globj );
}
else if (_useDisplayList)
{
#ifdef USE_SEPARATE_COMPILE_AND_EXECUTE
globj = generateDisplayList(contextID, getGLObjectSizeHint());
glNewList( globj, GL_COMPILE );
if (_drawCallback.valid())
_drawCallback->drawImplementation(renderInfo,this);
else
drawImplementation(renderInfo);
glEndList();
glCallList( globj);
#else
globj = generateDisplayList(contextID, getGLObjectSizeHint());
glNewList( globj, GL_COMPILE_AND_EXECUTE );
if (_drawCallback.valid())
_drawCallback->drawImplementation(renderInfo,this);
else
drawImplementation(renderInfo);
glEndList();
#endif
}
return;
}
// draw object as nature intended..
if (_drawCallback.valid())
_drawCallback->drawImplementation(renderInfo,this);
else
drawImplementation(renderInfo);
}
}
Any ideas?
Thanks so much!
-Bryan
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org