Age | Commit message (Collapse) | Author |
|
|
|
range on some hardware which doesn't support color range conversion or whose drivers are crappy. Now we're using same technique for color range conversion which is used in UI instead of using video processor.
|
|
Implement a GLSLOutput class that can be passed to shaders to implement
an output stage with RGB range conversion and dithering. Add support for
GLSLOutput in YUV2RGBShader and ConvolutionFilterShader.
Single pass rendering to full range is not optimal as the range
conversion could be done in colorspace conversion matrix. Keeping video
levels avoids banding in multipass rendering though.
|
|
|
|
In preparation for new features, create a separate output stage that can
be attached either to yuv2rgb or convolution filter shader. This stage
will include things like color management, RGB range conversion and
dithering.
|
|
|
|
video drivers which support only FL9.1/9.2.
|
|
displaying limited color range.
|
|
|
|
|
|
|
|
|
|
|
|
GLES 2 does not support GL_UNPACK_ROW_LENGTH. That makes de-deinterlacing
a texture in CPU unbearably slow on some SoC's.
|
|
|
|
|
|
|
|
Gives a considerable speedup in scenes with many bordered images
(like settings).
|
|
Mainly seen when we're fading in/out.
Mali likes this ordering better for some reason, ops go from 3 to 2 (according
to their profiler). Verified with PVR's compiler that there is no change, it's
2 there either way.
|
|
(texture * color) costs us an extra operation on Mali when sent as varying.
Instead, since textures use the same color for the entire render, send it as
a uniform instead.
This does not apply to fonts, since the font and its shadow are rendered
together, and may not share a color (tested and looks bad).
This increases fps anywhere heavy blending is done.
|
|
|
|
|
|
|
|
|
|
target. Each step is materialized by a shader pass.
The intermediate render target now has the source height and the destination width, which is reflected in the vertex coordinates and the vertex coordinates stepping parameter.
|
|
array of render targets and uses different vertices for each pass.
The parameters are set once before rendering.
The shaders themselves haven't changed yet, the second pass is just a dummy copy of the source to the target.
|
|
new base class.
One will become the new 2 pass implementation and the base class allows easy runtime switch between the 1 pass and 2 pass implementations.
The bicubic and Lanczos2 activate 1 pass, Lanczos3 optimized and Lanczos3 activate 2 pass, making it very easy to compare performance and to check for visual bugs...
|
|
Previously, bgra textures were uploaded as rgba then converted back in
shaders. Instead, check for the existance of BGRA extensions and convert
on upload instead. If no extension is found, convert in software before
uploading.
This allows us to remove the swizzle in our shaders, which amounts to a
significant performance gain.
|
|
slight fps increase
|
|
|
|
limited platforms and does not effect mainline platforms
|
|
|
|
nearest neighbour
|
|
|
|
|
|
fixed: add multi_blendcolor shader
|
|
|
|
- fixed multitexturing second texture have not been used
- fixed alpha channel of color hasn't been used for font rendering
|
|
|
|
descriptive filenames
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@33727 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
|
|
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@33617 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
|
|
for example)
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@33079 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
|
|
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@32075 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
|
|
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@31866 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
|
|
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@31832 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
|
|
fixed: non-linear stretch doesn't work on POT so don't allow it
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@31699 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
|
|
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@31698 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
|
|
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@31691 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
|
|
removed: double upload for YUY2
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@31688 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
|
|
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@31685 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
|