Microsoft DirectX 8.1 (pixel shader version 1.4) |
bem
Apply a fake bump environment-map transform.
bem dest.rg, src0, src1
Registers
Argument | Description | Registers | Version | |||
---|---|---|---|---|---|---|
vn | cn | tn | rn | |||
dest | Destination register | x | 1.4 phase 1 | |||
src0 | Source register | x | x | 1.4 phase 1 | ||
src1 | x | 1.4 phase 1 |
To learn more about registers, see Registers.
Remarks
This instruction performs the following calculation.
(Given n == dest register #) dest.r = src0.r + D3DTSS_BUMPENVMAT00(stage n) * src1.r + D3DTSS_BUMPENVMAT10(stage n) * src1.g dest.g = src0.g + D3DTSS_BUMPENVMAT01(stage n) * src1.r + D3DTSS_BUMPENVMAT11(stage n) * src1.g
Rules for using bem:
- bem must appear in the first phase of a shader (that is, before a phase marker).
- bem consumes two arithmetic instruction slots.
- Only one use of this instruction is allowed per shader.
- Destination writemask must be .rg /.xy.
- This instruction cannot be co-issued.
- Aside from the restriction that destination write mask be .rg, modifiers on source src0, src1, and instruction modifiers are unconstrained.