[mythtv-commits] mythtv/master commit: bd8132c53 by Mark Kendall (mark-kendall)
MythTV
noreply at mythtv.org
Thu Mar 10 04:26:58 UTC 2011
Author: Mark Kendall <mkendall at mythtv.org>
Change Date: 2011-03-09T20:26:45-08:00
Push Date: 2011/03/09 20:26:57 -0800
Repository: mythtv
Branch: master
New Revision: bd8132c531d7295c87150d215d7545ddb5dce8be
Changeset: https://github.com/MythTV/mythtv/commit/bd8132c53
Log:
OpenGL: Use GLSL to draw rounded rectangles.
N.B. The GLSL/OpenGL 2.0 profile is not enabled by default, so you won't
see the glorious benefit of this commit :)
- Add new default shaders to draw circles, circle edges and horizontal
and vertical lines. All implement some simple but effective anti-
the curved and straight edges - without them the results are
disappointing.
- Add a new generic parameter matrix for passing parameters to shaders.
- Use the new shaders to render rounded rects that DON'T use a gradient
when using the OpenGL 2.0 profile. The rendering code looks complicated
but is actually nothing more passing a series of vertices and parameters
to the GPU.
This still needs a some tweaking to better deal with thick edges. At the
moment they are too 'fuzzy' but 1 and 2 point lines should be fine.
The existing line drawing for the basic (unrounded) rect also needs
converting to the new line shaders. Without them they are actually
rendered in the wrong place.
Modified:
mythtv/libs/libmythui/mythpainter_ogl.cpp
mythtv/libs/libmythui/mythpainter_ogl.h
mythtv/libs/libmythui/mythrender_opengl.cpp
mythtv/libs/libmythui/mythrender_opengl.h
mythtv/libs/libmythui/mythrender_opengl1.h
mythtv/libs/libmythui/mythrender_opengl2.cpp
mythtv/libs/libmythui/mythrender_opengl2.h
More information about the mythtv-commits
mailing list