Version | Maximum number of instructions |
1_1 | 128 |
2_0 | 256 |
2_0 Extended | 256. The number of instructions that run can be much higher because of looping. |
3_0 | 512 minimum, and up to the number of slots in the D3DCAPS9.MaxVertexShader30InstructionSlots. |
Version 1_x
New instructions :
- Setup instructions : dcl, def, vs
- Arithmetic instructions : add, dp3, dp4, dst, lit, mad, max, min, mov, mul, nop, rcp, rsq, sge, slt, sub
- Macros : exp, frc, log, m3x2, m3x3, m3x4, m4x3, m4x4
Version 2_0
New instructions :
- Setup instructions : defb, defi
- Arithmetic instructions : mova
- Macros : abs, crs, expp, logp, lrp, nrm, pow, sincos, slt
- Static flow control instructions : call, callnz, else, end, endif, endloop, endrep, if, label, loop, rep, ret
New registers - constant float, constant integer, constant Boolean, loop counter
Version 2_0 Extended
New features( with a cap set ) :
- Dynamic flow control instructions : break, breakc, ifc
- Predication : setp instruction, p# regiter
- Static flow control nesting depth
- Number of temporary registers
Version 3_0
New features :
- Static flow control instructions : break, breakc, ifc
- Predication : setp instruction, p# register
- Number of temporary registers
- Indexing registers
- Vertex textures : texId texture address instruction
- Vertex stream frequency
출처 : MSDN
728x90