annotate TOOLS/emboss.fp @ 27409:e2de11109139

If (has outline) blur(outline) else blur(glyph). If there is an outline, the glyph itself should not be blurred. Keeps the border between glyph and outline clear (unblurred), which is probably how it should be. Patch by Diogo Franco (diogomfranco gmail com).
author eugeni
date Thu, 07 Aug 2008 22:20:58 +0000
parents cae067bfc231
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16488
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
1 !!ARBfp1.0
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
2 # Custom YUV->RGB conversion program for MPlayer's -vo gl.
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
3 # Copyleft (C) Reimar Döffinger, 2005
25605
cae067bfc231 Relicense to GPL v2 or later with Reimar's permission.
diego
parents: 19018
diff changeset
4 # Licensed under the GNU GPL v2 or later
16488
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
5 # Usage: mplayer -vo gl:yuv=4:customprog=emboss.fp
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
6 # This is an emboss effect.
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
7 PARAM sizes = program.env[0];
19018
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
8 TEMP res, yuv, pos, tmp;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
9 TEX yuv.r, fragment.texcoord[0], texture[0], 2D;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
10 MAD pos, sizes.xyxy, {-0.5, 0, 0, -0.8660}, fragment.texcoord[0].xyxy;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
11 TEX tmp.r, pos.xyxy, texture[0], 2D;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
12 MAD yuv.r, yuv.rrrr, {2}, -tmp.rrrr;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
13 TEX tmp.r, pos.zwzw, texture[0], 2D;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
14 SUB yuv.r, yuv.rrrr, tmp.rrrr;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
15 TEX yuv.g, fragment.texcoord[1], texture[1], 2D;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
16 TEX yuv.b, fragment.texcoord[2], texture[2], 2D;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
17 # now do the normal YUV -> RGB conversion but with 0.5 offset
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
18 MAD res, yuv.rrrr, {1.164, 1.164, 1.164, 0}, {-0.37416, 1.03133, -0.58599, 0.125};
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
19 MAD res.rgb, yuv.gggg, {0, -0.391, 2.018, 0}, res;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
20 MAD res.rgb, yuv.bbbb, {1.596, -0.813, 0, 0}, res;
16488
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
21 # do gamma texture lookup
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
22 TEX res.r, res.raaa, texture[3], 2D;
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
23 ADD res.a, res.a, 0.25;
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
24 TEX res.g, res.gaaa, texture[3], 2D;
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
25 ADD res.a, res.a, 0.25;
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
26 TEX res.b, res.baaa, texture[3], 2D;
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
27 # move res into result, this allows easily commenting out some parts.
19018
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
28 MOV result.color, res;
16488
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
29 END