Hi Marco,

sorry the delay. Last week was pretty crazy and I'm just now slowly
regaining control over my mailbox.

On Fri, 2004-12-03 at 08:23, Marco Spatz wrote:
> Hi,
> 
> I'm trying to run opensg in linux. My problem is in the initialization 
> of the OSG::PassiveWindow, I think.
> 
> I get the Display* and the Window from another library (Currently QT is 
> taking care of them), und have to create my own GLXContext.

Is there a reason for not using the standard QGLWidget?

...
> This part of code works fine (None of the error messages is printed), 
> and it even works using another scenegraph drawing into the current 
> GLContext.

Looks ok to me.

> But when I call OSG::PassiveWindow, I get the following warnings (they 
> ssem to be the key to the problem).
> 
> WARNING: Window::getFunctionByName: Couldn't get function 
> 'glProgramStringARB' for Window 0x8400dd0.
...

That's pretty weird. Which version are you using? We made that code more
robust some time ago, so right now there's not really much that could go
wrong with it, if you don't get any other error messages.

> Then I see the rendered Window (I use a different bgcolor), and 
> everything seems ok. (At this time, the scenegraph is empty).
> Now I load some geometry into it, and get a crash. Using the debugger I 
> get down to
> OSGGeoPumpFactory.cpp , line 877.
> 
> But I think this line shouln't be reached.
> Shouldn't line 871 fail, because in the warnings above I found: Couldn't 
> get function 'glLockArraysEXT'.

The extension process in OpenGL has two parts, the actual extension and
the extension functions. To use an extension you need to check whether
the active context supports it and then get the function for that
extension. It looks like in your case the context says that it supports
the extension, but when OpenSG tries to get the function address it
fails. That's one of those 'Can't happen' cases, so for efficiency
reasons we don't test the function pointers for NULL.

> Does anyone have a clue what to do?

Can you give us some more info about your system? Like

uname -a
cat  /etc/*elease*
glxinfo
ls -l /usr/lib/*GL*

You can also set OSG_LOG_LEVEL to debug to get more output, getting that
would be useful too.

Thanks

        Dirk




-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. 
http://productguide.itmanagersjournal.com/
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to