Hi Robert,

Robert Osfield wrote:

I will investigate what had gone a miss.

I have now tracked down the problem to a bug in the reassignment of
TextureObject to a new TextureObjectSet, this is now fixed along with
a couple of other bugs due to the unrefAfterApply not being disabled
when the texture pool is enabled.  These fixes are now checked into
svn/trunk.

I am currently seeing GL errors reported when running osgmovie of the form:

Warning: detected OpenGL error 'invalid enumerant' after applying
attribute TextureRectangle 0x1fdb4e0

With the onscreen image being corrupted, while if I select a Texture2D
using the osgmovie command line option --texture2D I get:

   Warning: detected OpenGL error 'invalid enumerant' after applying
attribute Texture2D 0x1c724e0

But the onscreen image is correct.  If comment out the assignment of
the PixelBufferObject in the ImageStream constructor the on screen
errors and the console warnings all disappear so it looks to be a PBO
issue of some kind.  I've only tried out this on my ATI card so far so
it could be driver issue.

What results do you get with the bug fixes I've just checked in?

I've just updated and now I get a single corrupted image flashed onto the screen and then a segfault.

$ osgmovie --mouse --interactive --shaders -e ffmpeg file.avi
image->s()640 image-t()=480 aspectRatio=1
_maxTexturePoolSize=0
_maxBufferObjectPoolSize=0
Created new TextureObject, _numOfTextureObjects 1
GLBufferObjectSet::GLBufferObjectSet _profile._size=1228800
Segmentation fault

If I run in gdb the corrupted image stays, but I'll have to recompile with debug info to give you a more sensible backtrace. Tomorrow... have to go now.

jp

---8<---
Created new TextureObject, _numOfTextureObjects 1
GLBufferObjectSet::GLBufferObjectSet _profile._size=1228800

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb2952b90 (LWP 22742)]
0xb6d69e60 in ?? () from /usr/lib/libGLcore.so.1
(gdb) bt
#0  0xb6d69e60 in ?? () from /usr/lib/libGLcore.so.1
Cannot access memory at address 0xa04
(gdb) thread
[Current thread is 5 (Thread 0xb2952b90 (LWP 22742))]
(gdb) info threads
* 5 Thread 0xb2952b90 (LWP 22742)  0xb6d69e60 in ?? ()
   from /usr/lib/libGLcore.so.1
  4 Thread 0xb3c81b90 (LWP 22741)  0xb7fe1424 in __kernel_vsyscall ()
  3 Thread 0xb4482b90 (LWP 22740)  0xb7fe1424 in __kernel_vsyscall ()
  2 Thread 0xb4c83b90 (LWP 22739)  0xb7fe1424 in __kernel_vsyscall ()
  1 Thread 0xb62a8950 (LWP 22736)  0xb7fe1424 in __kernel_vsyscall ()




Robert.
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

--
This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard. The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html.

This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. MailScanner thanks Transtec Computers for their support.

_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to