summaryrefslogtreecommitdiffstats
path: root/src/opengl
Commit message (Collapse)AuthorAgeFilesLines
...
| | | * | Fix crash in OpenGL paint engine with hq antialiasing and TxProjectSamuel Rødal2009-04-211-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use painter paths instead of rectangles for perspective transformed rects, as the rectangles might have been clipped. Task-number: 251485 Reviewed-by: Trond
| | | * | Reparenting QGLWidgets did sometimes caused warnings to be printed onTrond Kjernåsen2009-04-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mac/Cocoa. Check if the view is visible before attaching it to a context. Task-number: related to 250066 Reviewed-by: Norwegian Rock Cat BT: yes
| | | * | BT: OpenGL ES 2.0 now compiles properly for Windows CEThomas Hartmann2009-04-151-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | glpixmapfilter should not be compiled for OpenGL ES 2.0 on nay platform Reviewed-by: Tom Cooksey
| | | * | BT: Fix Cocoa bug w/OpenGL widgets in dock widgets would disappear.Norwegian Rock Cat2009-04-153-23/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The NSOpenGLContext seems to be tied to the window. So if the view changes from one window to another, the OpenGL context needs to be cleared. We can do this by hooking into the viewWillChangeWindow and viewDidChangeWindow events and clear and reset the drawable respectively. We also found out that QCocoaOpenGLView was not being used at all, so just remove it to get rid of any confusion. Task-number: 250066 Reviewed-by: Trond
| | * | | Speed up texture uploads for hardware without n-pot-2 texture support.Trond Kjernåsen2009-04-201-53/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement a manual fast scale, so that we can do a scale, swizzle and mirror in the same loop without any temporary image copies. This potentially increases texture uploads on embedded hw with a factor of 10. Reviewed-by: Samuel
* | | | | compile...Gunnar Sletta2009-04-241-2/+1
| | | | |
* | | | | Remove old qglshader files from gl2paintengineex.Samuel Rødal2009-04-232-878/+0
|/ / / /
* | | | Allow release builds againTom Cooksey2009-04-221-2/+0
| | | | | | | | | | | | | | | | The list of shaders shouldn't change too much now.
* | | | Make useCorrectShaderProg() return a bool againTom Cooksey2009-04-223-13/+10
| | | | | | | | | | | | | | | | | | | | Returns true if it had to change the shader program so the engine knows it needs to clean the uniforms.
* | | | Make optimiseForBrushTransform take a QTransform referenceTom Cooksey2009-04-222-2/+2
| | | |
* | | | Change fragment shaders to apply the mask as the final stepTom Cooksey2009-04-221-2/+2
| | | | | | | | | | | | | | | | I.e. After composition, not before.
* | | | Merge branch 'master' into gl2engine-new-shadersSamuel Rødal2009-04-2216-243/+536
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp src/opengl/opengl.pro
| * | | | Prevent copy back from FBO when initializing render FBO from texture.Samuel Rødal2009-04-203-5/+5
| | | | |
| * | | | Smudgy text in GL2 paint engine when drawing on non-integer offsets.Samuel Rødal2009-04-171-21/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Special-case TextDrawingMode in updateMatrix() as we know that we'll have a pure translating transform, and round the transform's dx and dy to avoid drawing on non-integer offsets. Task-number: 245806 Reviewed-by: Tom
| * | | | Correctly handle using GL pixmaps that still have an active engine.Samuel Rødal2009-04-175-20/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the case where a GL pixmap is used when there it still has an active engine we need to ensure that the pixmap has been flushed from the render FBO first. The newly added QGLPixmapData::copyBackFromRenderFbo() handles this. In addition, because several GL 2 paint engines can be active on the same context at the same time, we can't make any assumptions and need to call the newly added QGL2PaintEngineEx::ensureCreated() in the beginning of any state-dependent paint engine function. QGL2PaintEngineEx::ensureCreated() correctly transfers control to the current engine if a different engine is active. Running lance with -pixmap and -graphicssystem opengl works correctly with the GL pixmap backend now.
| * | | | Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qt-graphics-teamGunnar Sletta2009-04-179-151/+363
| |\ \ \ \
| | * | | | Use FBOs as pixmap backend in GL graphics system.Samuel Rødal2009-04-168-98/+311
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We now use FBOs to implement render-to-pixmap for the GL pixmap backend. A multisample FBO is used for rendering, and is then blitted onto a non-multisample FBO dynamically bound to the relevant texture. Reviewed-by: Tom
| | * | | | Make FBO the default instead of pixel buffers in GL window surface.Samuel Rødal2009-04-161-28/+29
| | | | | | | | | | | | | | | | | | | | | | | | Fall back to using pbuffers only if the FBO fails.
| | * | | | Ensure we don't access the GL share widget when it's being destroyed.Samuel Rødal2009-04-161-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Zero the pointer before destroying the widget, as QGLWidget's destructor may indirectly trigger access to the share widget.
| | * | | | GL2: Avoid expensive updateDepthClip() every time setState() is calledSamuel Rødal2009-04-162-17/+14
| | | | | | | | | | | | | | | | | | | | | | | | Only call updateDepthClip() if the clip has actually changed.
| | * | | | Fix off-by-one bugs in the framebuffer blits.Samuel Rødal2009-04-161-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | The bottom-right coordinates are exclusive, not inclusive.
| * | | | | Merge branch 'qt/main'Gunnar Sletta2009-04-1711-63/+61
| |\ \ \ \ \ | | |/ / / / | |/| / / / | | |/ / / | | | | | Conflicts: src/opengl/opengl.pro
| | * | | Reparenting QGLWidgets did sometimes caused warnings to be printed onTrond Kjernåsen2009-04-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mac/Cocoa. Check if the view is visible before attaching it to a context. Task-number: related to 250066 Reviewed-by: Norwegian Rock Cat BT: yes
| | * | | BT: OpenGL ES 2.0 now compiles properly for Windows CEThomas Hartmann2009-04-151-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | glpixmapfilter should not be compiled for OpenGL ES 2.0 on nay platform Reviewed-by: Tom Cooksey
| | * | | BT: Fix Cocoa bug w/OpenGL widgets in dock widgets would disappear.Norwegian Rock Cat2009-04-153-23/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The NSOpenGLContext seems to be tied to the window. So if the view changes from one window to another, the OpenGL context needs to be cleared. We can do this by hooking into the viewWillChangeWindow and viewDidChangeWindow events and clear and reset the drawable respectively. We also found out that QCocoaOpenGLView was not being used at all, so just remove it to get rid of any confusion. Task-number: 250066 Reviewed-by: Trond
| | * | | Merge commit 'origin/4.5'Olivier Goffart2009-04-152-6/+4
| | |\ \ \ | | | |/ / | | | | | | | | | | | | | | | Conflicts: src/gui/graphicsview/qgraphicsitem.cpp
| | | * | Fixes the composition demo for Mac/Cocoa in GL mode.Trond Kjernaasen2009-04-141-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QGLPixelBuffer::generateDynamicTexture() will bind the texture to the pbuffer regardless. Why this works on Carbon is a mystery, but if we're to follow our own docs, we should NOT bind the texture to the pbuffer by default. An explicit call to ::bindToDynamicTexture() is required for that. Task-number: 250664 Reviewed-by: Samuel BT: yes
| | | * | Update docs regarding sibling widgets ontop of QGLWidgets when Qt is builtTrond Kjernåsen2009-04-141-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | with Cocoa support on Mac. The Cocoa API doesn't have a concept of Z-ordering of widgets, and it's implemented by reordering the widget hierarchy for normal widgets. This does unfortunately not work for GL widgets, and it's not supported by Apple. This apparently work with the Carbon AGL API though. Task-number: 244890 Reviewed-by: Gunnar Sletta BT: yes
| | | * | Make OpenGL/ES 1.1 CommonLite and OpenGL/ES 1.0 builds workRhys Weatherley2009-04-075-25/+37
| | | | | | | | | | | | | | | | | | | | Reviewed-by: trustme
| | * | | Rename qIsFuzzyNull to qFuzzyIsNullBjoern Erik Nilsen2009-04-081-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function was added in fde7f3d03782c801901f511131458d6fcb1021a5 and we believe qFuzzyIsNull is a better naming and more in line with qFuzzyCompare. Reviewed-by: Lars Knoll Reviewed-by: nrc Reviewed-by: Samuel
| | * | | Use qIsFuzzyNull rather than the more expensive qFuzzyCompareBjoern Erik Nilsen2009-04-081-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See also fde7f3d03782c801901f511131458d6fcb1021a5 Reviewed-by: Olivier Reviewed-by: Samuel
| | * | | Make OpenGL/ES 1.1 CommonLite and OpenGL/ES 1.0 builds workRhys Weatherley2009-04-075-25/+37
| | | | | | | | | | | | | | | | | | | | Reviewed-by: trustme
| | * | | Merge branch '4.5'Thiago Macieira2009-04-031-1/+1
| | |\ \ \ | | | |/ /
| | | * | BT: Compilation on WinCE.Trond Kjernåsen2009-04-031-1/+1
| | | | | | | | | | | | | | | | | | | | Reviewed-by: Kim
* | | | | Make text rendering work again on the GL2 engineTom Cooksey2009-04-212-46/+48
| | | | | | | | | | | | | | | | | | | | | | | | | - But now it can handle non-solid-color pens, the whole reason for the refactor in the first place.
* | | | | Kill unused SimpleVertexShader & rename vertex coords arrayTom Cooksey2009-04-203-23/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rename inputVertex -> vertexCoordsArray to be more consistent with other vertex attribute array naming conventions. SimpleVertexShader has also been replaced with a combination of MainVertexShader & PositionOnlyVertexShader, so can be killed.
* | | | | Refactor opacity handling & make drawImage/drawPixmap work againTom Cooksey2009-04-204-88/+96
| | | | |
* | | | | Fix various issues with conical grad GLSL codeTom Cooksey2009-04-171-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - atan2 is just called atan in GLSL (which supports overloads) - varyings can't be modified in fragment shaders - #defines need to be on their own line
* | | | | Add a "shocking pink" shader for rendering into stencil buffTom Cooksey2009-04-173-2/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you see shocking pink in the rendering output, it's probably because the "simple" shader is in use but color writes have somehow been enabled. :-)
* | | | | Fix GLSL warning & possible artifacts with radial gradientsTom Cooksey2009-04-171-1/+1
| | | | | | | | | | | | | | | | | | | | Reviewed-by: Samuel Rødal
* | | | | Make fillRect() with a QBrush(Qt::NoBrush) a noopTom Cooksey2009-04-161-0/+3
| | | | |
* | | | | Don't seg-fault when the shader prog is in the cacheTom Cooksey2009-04-161-1/+2
| | | | |
* | | | | Merge branch 'new-shader-api' into gl2engine-new-shadersTom Cooksey2009-04-162-0/+142
|\ \ \ \ \
| * | | | | Add uniform setters for Qt data types to QGLShaderProgramTom Cooksey2009-04-162-0/+142
| | | | | | | | | | | | | | | | | | | | | | | | Reviewed-by: Rhys Weatherley
* | | | | | Clean up existing & implement missing GLSL for new shader managerTom Cooksey2009-04-164-154/+320
| | | | | |
* | | | | | Adapt GL2 Paint Engine to new math3d, shader & shader manager APIsTom Cooksey2009-04-161-43/+43
| | | | | |
* | | | | | Re-write the shader manager & completely break everything ;-)Tom Cooksey2009-04-167-750/+758
| | | | | |
* | | | | | Add (big) comment explaining shader pipeline in GL2 engineTom Cooksey2009-04-031-0/+138
|/ / / / / | | | | | | | | | | | | | | | Reviewed-by: TrustMe
* | | | | Fix build breakage after rebasing on graphics-mainTom Cooksey2009-04-032-8/+1
| | | | | | | | | | | | | | | | | | | | Reviewed-by: Trustme
* | | | | Fix loading of partial shaders from files.Rhys Weatherley2009-04-031-3/+0
| | | | |