Module: wine Branch: master Commit: 38076e08ca0273f5f94634ef27ccacb6c26c09d8 URL: http://source.winehq.org/git/wine.git/?a=commit;h=38076e08ca0273f5f94634ef27...
Author: Stefan Dösinger stefan@codeweavers.com Date: Fri May 29 17:15:40 2009 +0200
wined3d: Add a comment about texbem and X2D.
---
dlls/wined3d/arb_program_shader.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c index 0d32bbc..f59ef54 100644 --- a/dlls/wined3d/arb_program_shader.c +++ b/dlls/wined3d/arb_program_shader.c @@ -1399,6 +1399,13 @@ static void pshader_hw_texbem(const struct wined3d_shader_instruction *ins)
/* Sampling the perturbation map in Tsrc was done already, including the signedness correction if needed * The Tx in which the perturbation map is stored is the tempreg incarnation of the texture register + * + * GL_NV_fragment_program_option could handle this in one instruction via X2D: + * X2D TA.xy, fragment.texcoord, T%u, bumpenvmat%u.xzyw + * + * However, the NV extensions are never enabled for <= 2.0 shaders because of the performance penalty that + * comes with it, and texbem is an 1.x only instruction. No 1.x instruction forces us to enable the NV + * extension. */ shader_addline(buffer, "SWZ TB, bumpenvmat%d, x, z, 0, 0;\n", reg_dest_code); shader_addline(buffer, "DP3 TA.x, TB, %s;\n", src_reg);