[4/4] wined3d: Create samplers for *all* 1.x instructions that sample

H. Verbeet hverbeet at gmail.com
Wed Dec 27 20:14:28 CST 2006


There are a couple of 1.x shader instructions that do sample a
texture, but for which we don't create samplers in
shader_get_registers_used(). This patch adds those.

Changelog:
  - Create samplers for *all* 1.x instructions that sample
-------------- next part --------------
---

 dlls/wined3d/baseshader.c |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/dlls/wined3d/baseshader.c b/dlls/wined3d/baseshader.c
index f87716a..54ebfcd 100644
--- a/dlls/wined3d/baseshader.c
+++ b/dlls/wined3d/baseshader.c
@@ -295,8 +295,15 @@ HRESULT shader_get_registers_used(
             if (WINED3DSHADER_VERSION_MAJOR(This->baseShader.hex_version) == 1 && 
                 (WINED3DSIO_TEX == curOpcode->opcode ||
                  WINED3DSIO_TEXBEM == curOpcode->opcode ||
+                 WINED3DSIO_TEXBEML == curOpcode->opcode ||
+                 WINED3DSIO_TEXDP3TEX == curOpcode->opcode ||
                  WINED3DSIO_TEXM3x2TEX == curOpcode->opcode ||
-                 WINED3DSIO_TEXM3x3TEX == curOpcode->opcode)) {
+                 WINED3DSIO_TEXM3x3SPEC == curOpcode->opcode ||
+                 WINED3DSIO_TEXM3x3TEX == curOpcode->opcode ||
+                 WINED3DSIO_TEXM3x3VSPEC == curOpcode->opcode ||
+                 WINED3DSIO_TEXREG2AR == curOpcode->opcode ||
+                 WINED3DSIO_TEXREG2GB == curOpcode->opcode ||
+                 WINED3DSIO_TEXREG2RGB == curOpcode->opcode)) {
 
                 /* Fake sampler usage, only set reserved bit and ttype */
                 DWORD sampler_code = *pToken & WINED3DSP_REGNUM_MASK;


More information about the wine-patches mailing list