[Qt-jambi-interest] [Qt Jambi 4.4] OpenGL issues
Dimitri Frederickx
info at dimitrifrederickx.be
Sat Mar 15 11:09:24 CET 2008
Hi,
I'm having a lot of OpenGL problems with Qt Jambi making it unusable in my
application (On Mac OS X 10.5).
This is what I do: I'm creating a QGraphicsView. On that view I'm setting the
viewport to an OpenGL widget: setViewport(new QGLWidget()). By doing this, a lot
of problems pop up.
The reason that I want to use OpenGL for rendering is SVG. I have some large
animated SVG files I want to show in high definition. When I don't use OpenGL,
my animations are not fluent. From time to time the animation stops for a few
milli seconds, and then going further but dropping some intermediate rendering.
By introducing OpenGL my animations are rendered in a nice way.
Can someone help me?
Problems with OpenGL:
1. By using OpenGL, the quality of my graphics items is drastically reduced.
When I resize my pixmaps, I'm using SmoothTransform. Without OpenGL my pictures
look really nice and smooth, but with OpenGL I see little blocks around my
pictures, no smooth lines, etc. How can I increase the quality of my items?
2. I have made a marquee (scrolling text) with the use of QGraphicsTextItem and
QGraphicsItemAnimation. Without OpenGL this works smooth, but with OpenGL my
text looks ugly because of the poor quality and because the scrolling suddenly
doesn't happen as smooth as before.
3. Adding the setViewport line in my code makes my application crash when I quit
it. 9 out of the 10 times my application crashes on a shutdown. When I don't set
the viewport, everything works just fine. Here is a part of the error dump:
Process: java [2002]
Path: /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/
Home/bin/java
Identifier: java
Version: ??? (???)
Code Type: X86 (Native)
Parent Process: eclipse [125]
Date/Time: 2008-03-15 10:47:05.489 +0100
OS Version: Mac OS X 10.5.2 (9C31)
Report Version: 6
Exception Type: EXC_BAD_ACCESS (SIGBUS)
Exception Codes: KERN_PROTECTION_FAILURE at 0x0000000000000004
Crashed Thread: 1
Thread 0:
0 libSystem.B.dylib 0x911289e6 mach_msg_trap + 10
1 libSystem.B.dylib 0x911301dc mach_msg + 72
2 com.apple.CoreFoundation 0x906f40de CFRunLoopRunSpecific + 1806
3 com.apple.CoreFoundation 0x906f4d18 CFRunLoopRunInMode + 88
4 java 0x0000513e 0x1000 + 16702
5 java 0x0000258a 0x1000 + 5514
Thread 1 Crashed:
0 libQtCore.4.dylib 0x072a2366 QObject::thread() const + 6
1 libQtOpenGL.4.dylib 0x1d80eadb qt_gl_clean_cache(QString const&)
+ 33
2 libQtOpenGL.4.dylib 0x1d80ee0b qt_gl_pixmap_cleanup(long long) +
79
3 libQtGui.4.dylib 0x076d78e0 QPixmap::deref() + 62
4 libQtGui.4.dylib 0x076d791f QPixmap::~QPixmap() + 33
5 libQtWebKit.4.dylib 0x3106cbce QHash<int,
QPixmap>::freeData(QHashData*) + 78
6 libQtWebKit.4.dylib 0x30e2d4d3 __tcf_1 + 89
7 libSystem.B.dylib 0x9115153c __cxa_finalize + 241
8 libSystem.B.dylib 0x91151430 exit + 33
9 java 0x00004d43 0x1000 + 15683
10 libSystem.B.dylib 0x91159c55 _pthread_start + 321
11 libSystem.B.dylib 0x91159b12 thread_start + 34
Thread 1 crashed with X86 Thread State (32-bit):
eax: 0x00000000 ebx: 0x1d80eac8 ecx: 0xb0800dfc edx: 0xb0800d01
edi: 0x020002ff esi: 0x00000000 ebp: 0xb0800d78 esp: 0xb0800d78
ss: 0x0000001f efl: 0x00010282 eip: 0x072a2366 cs: 0x00000017
ds: 0x0000001f es: 0x0000001f fs: 0x0000001f gs: 0x00000037
cr2: 0x00000004
More information about the Qt-jambi-interest
mailing list