# Fragment Program/Shader 0 0: MOV OUTPUT[2], INPUT[1]; 1: END InputsRead: 0x2 (0b10) OutputsWritten: 0x4 (0b100) NumInstructions=2 NumTemporaries=0 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x0 FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], COLOR, LINEAR DCL OUT[0], COLOR 0: MOV OUT[0], IN[0] 1: END # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: MOV OUTPUT[1], INPUT[3]; 5: END InputsRead: 0x9 (0b1001) OutputsWritten: 0x3 (0b11) NumInstructions=6 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {1, 0, 0, 0} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {0, 1, 0, 0} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {0, 0, 1, 0} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {0, 0, 0, 1} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], COLOR DCL CONST[0..3] DCL TEMP[0] 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: MOV OUT[1], IN[1] 5: END open /dev/[sound/]dsp: Device or resource busy # Fragment Program/Shader 0 0: TXP TEMP[0], INPUT[4], texture[0], 2D; 1: MUL OUTPUT[2], TEMP[0], INPUT[1]; 2: END InputsRead: 0x12 (0b10010) OutputsWritten: 0x4 (0b100) NumInstructions=3 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1 (0b1) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x0 FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], COLOR, LINEAR DCL IN[1], GENERIC[0], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL TEMP[0] 0: TXP TEMP[0], IN[1], SAMP[0], 2D 1: MUL OUT[0], TEMP[0], IN[0] 2: END # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: MOV OUTPUT[1], INPUT[3]; 5: MOV OUTPUT[4], INPUT[8]; 6: END InputsRead: 0x109 (0b1,00001001) OutputsWritten: 0x13 (0b10011) NumInstructions=7 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {2.19, 0, 0, 0} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {0, 2.2e-07, 1, 1} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {0, 2.92, -7.56e-08, -7.55e-08} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {0, -0.0492, 1.99, 2.18} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL OUT[0], POSITION DCL OUT[1], COLOR DCL OUT[2], GENERIC[0] DCL CONST[0..3] DCL TEMP[0] 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: MOV OUT[1], IN[1] 5: MOV OUT[2], IN[2] 6: END # Fragment Program/Shader 0 0: TXP TEMP[0], INPUT[4], texture[0], 2D; 1: MUL TEMP[1], TEMP[0], INPUT[1]; 2: ADD OUTPUT[2].xyz, TEMP[1], INPUT[2]; 3: MOV OUTPUT[2].w, TEMP[1]; 4: END InputsRead: 0x16 (0b10110) OutputsWritten: 0x4 (0b100) NumInstructions=5 NumTemporaries=2 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1 (0b1) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x0 FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], COLOR, LINEAR DCL IN[1], COLOR[1], LINEAR DCL IN[2], GENERIC[0], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL TEMP[0..1] 0: TXP TEMP[0], IN[2], SAMP[0], 2D 1: MUL TEMP[1], TEMP[0], IN[0] 2: ADD OUT[0].xyz, TEMP[1], IN[1] 3: MOV OUT[0].w, TEMP[1] 4: END # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: DP3 TEMP[0].x, INPUT[2], STATE[4]; 5: DP3 TEMP[0].y, INPUT[2], STATE[5]; 6: DP3 TEMP[0].z, INPUT[2], STATE[6]; 7: DP3 TEMP[1].x, TEMP[0], TEMP[0]; 8: RSQ TEMP[1].x, TEMP[1]; 9: MUL TEMP[0], TEMP[0], TEMP[1].xxxx; 10: MOV TEMP[2].w, STATE[7].xxxx; 11: MOV TEMP[3], INPUT[3]; 12: MAD TEMP[3].xyz, STATE[8], INPUT[3], STATE[9]; 13: MOV TEMP[4], CONST[10]; 14: MOV TEMP[2].z, STATE[11].-x-x-x-x; 15: MOV TEMP[5], INPUT[3]; 16: MAD TEMP[5].xyz, STATE[8], INPUT[3], STATE[12]; 17: MOV TEMP[6], CONST[10]; 18: MOV OUTPUT[1], TEMP[3]; 19: MOV OUTPUT[2], TEMP[4]; 20: MOV OUTPUT[13], TEMP[5]; 21: MOV OUTPUT[14], TEMP[6]; 22: MUL TEMP[7], INPUT[0].xxxx, STATE[14]; 23: MAD TEMP[7], INPUT[0].yyyy, STATE[15], TEMP[7]; 24: MAD TEMP[7], INPUT[0].zzzz, STATE[16], TEMP[7]; 25: MAD TEMP[7], INPUT[0].wwww, STATE[17], TEMP[7]; 26: DP3 TEMP[9].x, TEMP[7], TEMP[7]; 27: RSQ TEMP[9].x, TEMP[9]; 28: MUL TEMP[8], TEMP[7], TEMP[9].xxxx; 29: SUB TEMP[9], STATE[13], TEMP[8]; 30: DP3 TEMP[10].x, TEMP[9], TEMP[9]; 31: RSQ TEMP[10].x, TEMP[10]; 32: MUL TEMP[9], TEMP[9], TEMP[10].xxxx; 33: DP3 TEMP[2].x, TEMP[0], STATE[13]; 34: DP3 TEMP[2].y, TEMP[0], TEMP[9]; 35: MUL TEMP[10], STATE[18], INPUT[3]; 36: MUL TEMP[11], STATE[19], INPUT[3]; 37: LIT TEMP[1], TEMP[2]; 38: ADD TEMP[3], TEMP[10], TEMP[3]; 39: MAD TEMP[3], TEMP[1].yyyy, TEMP[11], TEMP[3]; 40: MAD TEMP[4], TEMP[1].zzzz, STATE[20], TEMP[4]; 41: MUL TEMP[10], STATE[18], INPUT[3]; 42: MUL TEMP[11], STATE[19], INPUT[3]; 43: LIT TEMP[1], TEMP[2].-x-y-w-z; 44: ADD TEMP[5], TEMP[10], TEMP[5]; 45: MAD TEMP[5], TEMP[1].yyyy, TEMP[11], TEMP[5]; 46: MAD TEMP[6], TEMP[1].zzzz, STATE[21], TEMP[6]; 47: SUB TEMP[10], STATE[22], TEMP[7]; 48: DP3 TEMP[9], TEMP[10], TEMP[10]; 49: RSQ TEMP[9], TEMP[9]; 50: MUL TEMP[10], TEMP[10], TEMP[9]; 51: SUB TEMP[11], TEMP[10], TEMP[8]; 52: DP3 TEMP[12].x, TEMP[11], TEMP[11]; 53: RSQ TEMP[12].x, TEMP[12]; 54: MUL TEMP[11], TEMP[11], TEMP[12].xxxx; 55: DP3 TEMP[2].x, TEMP[0], TEMP[10]; 56: DP3 TEMP[2].y, TEMP[0], TEMP[11]; 57: MUL TEMP[9], STATE[23], INPUT[3]; 58: MUL TEMP[12], STATE[24], INPUT[3]; 59: LIT TEMP[1], TEMP[2]; 60: ADD TEMP[3], TEMP[9], TEMP[3]; 61: MAD OUTPUT[1].xyz, TEMP[1].yyyy, TEMP[12], TEMP[3]; 62: MAD OUTPUT[2].xyz, TEMP[1].zzzz, STATE[25], TEMP[4]; 63: MUL TEMP[9], STATE[23], INPUT[3]; 64: MUL TEMP[12], STATE[24], INPUT[3]; 65: LIT TEMP[1], TEMP[2].-x-y-w-z; 66: ADD TEMP[5], TEMP[9], TEMP[5]; 67: MAD OUTPUT[13].xyz, TEMP[1].yyyy, TEMP[12], TEMP[5]; 68: MAD OUTPUT[14].xyz, TEMP[1].zzzz, STATE[26], TEMP[6]; 69: MOV OUTPUT[4], INPUT[8]; 70: END InputsRead: 0x10d (0b1,00001101) OutputsWritten: 0x6017 (0b1100000,00010111) NumInstructions=71 NumTemporaries=13 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x103 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {2.19, 0, 0, 0} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {0, 2.2e-07, 1, 1} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {0, 2.92, -7.56e-08, -7.55e-08} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {0, -0.0492, 1.99, 2.18} param[4] sz=4 STATE state.matrix.modelview.invtrans.row[0] = {1, 0, 0, 0} param[5] sz=4 STATE state.matrix.modelview.invtrans.row[1] = {0, 7.55e-08, 1, 0} param[6] sz=4 STATE state.matrix.modelview.invtrans.row[2] = {0, -1, 7.55e-08, 0} param[7] sz=4 STATE state.materialfront.lshininess = {0.25, 0, 0, 1} param[8] sz=4 STATE state.lightmodel.ambientlightmodel.ambient = {0.2, 0.2, 0.2, 1} param[9] sz=4 STATE state.materialfront..emission = {0, 0, 0, 1} param[10] sz=4 CONST (null) = {0, 0, 0, 1} param[11] sz=4 STATE state.materialback.lshininess = {0.25, 0, 0, 1} param[12] sz=4 STATE state.materialback..emission = {0, 0, 0, 1} param[13] sz=4 STATE state..internal.light.position.normalized = {-0.602, 0.607, -0.519, 0} param[14] sz=4 STATE state.matrix.modelview.transpose.row[0] = {1, 0, 0, 0} param[15] sz=4 STATE state.matrix.modelview.transpose.row[1] = {0, 7.55e-08, -1, 0} param[16] sz=4 STATE state.matrix.modelview.transpose.row[2] = {0, 1, 7.55e-08, 0} param[17] sz=4 STATE state.matrix.modelview.transpose.row[3] = {0, -0.0169, -2.18, 1} param[18] sz=4 STATE state.light[0].ambient = {0, 0, 0, 1} param[19] sz=4 STATE state.light[0].diffuse = {1.69, 1.7, 2, 1} param[20] sz=4 STATE state.lightprod[0]front..specular = {0, 0, 0, 1} param[21] sz=4 STATE state.lightprod[0]back..specular = {0, 0, 0, 1} param[22] sz=4 STATE state..internal.lightPosition = {0.792, 0.699, -1.31, 1} param[23] sz=4 STATE state.light[1].ambient = {0, 0, 0, 1} param[24] sz=4 STATE state.light[1].diffuse = {2.5, 2.12, 2.15, 1} param[25] sz=4 STATE state.lightprod[1]front..specular = {0, 0, 0, 1} param[26] sz=4 STATE state.lightprod[1]back..specular = {0, 0, 0, 1} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL OUT[0], POSITION DCL OUT[1], COLOR DCL OUT[2], COLOR[1] DCL OUT[3], GENERIC[0] DCL OUT[4], BCOLOR DCL OUT[5], BCOLOR[1] DCL CONST[0..9] DCL CONST[11..26] DCL TEMP[0..12] IMM FLT32 { 0.0000, 1.0000, 0.0000, 0.0000} 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: DP3 TEMP[0].x, IN[1], CONST[4] 5: DP3 TEMP[0].y, IN[1], CONST[5] 6: DP3 TEMP[0].z, IN[1], CONST[6] 7: DP3 TEMP[1].x, TEMP[0], TEMP[0] 8: RSQ TEMP[1].x, TEMP[1] 9: MUL TEMP[0], TEMP[0], TEMP[1].xxxx 10: MOV TEMP[2].w, CONST[7].xxxx 11: MOV TEMP[3], IN[2] 12: MAD TEMP[3].xyz, CONST[8], IN[2], CONST[9] 13: MOV TEMP[4], IMM[0].xxxy 14: MOV TEMP[2].z, -CONST[11].xxxx 15: MOV TEMP[5], IN[2] 16: MAD TEMP[5].xyz, CONST[8], IN[2], CONST[12] 17: MOV TEMP[6], IMM[0].xxxy 18: MOV OUT[1], TEMP[3] 19: MOV OUT[2], TEMP[4] 20: MOV OUT[4], TEMP[5] 21: MOV OUT[5], TEMP[6] 22: MUL TEMP[7], IN[0].xxxx, CONST[14] 23: MAD TEMP[7], IN[0].yyyy, CONST[15], TEMP[7] 24: MAD TEMP[7], IN[0].zzzz, CONST[16], TEMP[7] 25: MAD TEMP[7], IN[0].wwww, CONST[17], TEMP[7] 26: DP3 TEMP[8].x, TEMP[7], TEMP[7] 27: RSQ TEMP[8].x, TEMP[8] 28: MUL TEMP[9], TEMP[7], TEMP[8].xxxx 29: SUB TEMP[8], CONST[13], TEMP[9] 30: DP3 TEMP[10].x, TEMP[8], TEMP[8] 31: RSQ TEMP[10].x, TEMP[10] 32: MUL TEMP[8], TEMP[8], TEMP[10].xxxx 33: DP3 TEMP[2].x, TEMP[0], CONST[13] 34: DP3 TEMP[2].y, TEMP[0], TEMP[8] 35: MUL TEMP[10], CONST[18], IN[2] 36: MUL TEMP[11], CONST[19], IN[2] 37: LIT TEMP[1], TEMP[2] 38: ADD TEMP[3], TEMP[10], TEMP[3] 39: MAD TEMP[3], TEMP[1].yyyy, TEMP[11], TEMP[3] 40: MAD TEMP[4], TEMP[1].zzzz, CONST[20], TEMP[4] 41: MUL TEMP[10], CONST[18], IN[2] 42: MUL TEMP[11], CONST[19], IN[2] 43: LIT TEMP[1], -TEMP[2].xywz 44: ADD TEMP[5], TEMP[10], TEMP[5] 45: MAD TEMP[5], TEMP[1].yyyy, TEMP[11], TEMP[5] 46: MAD TEMP[6], TEMP[1].zzzz, CONST[21], TEMP[6] 47: SUB TEMP[10], CONST[22], TEMP[7] 48: DP3 TEMP[8], TEMP[10], TEMP[10] 49: RSQ TEMP[8], TEMP[8] 50: MUL TEMP[10], TEMP[10], TEMP[8] 51: SUB TEMP[11], TEMP[10], TEMP[9] 52: DP3 TEMP[12].x, TEMP[11], TEMP[11] 53: RSQ TEMP[12].x, TEMP[12] 54: MUL TEMP[11], TEMP[11], TEMP[12].xxxx 55: DP3 TEMP[2].x, TEMP[0], TEMP[10] 56: DP3 TEMP[2].y, TEMP[0], TEMP[11] 57: MUL TEMP[8], CONST[23], IN[2] 58: MUL TEMP[12], CONST[24], IN[2] 59: LIT TEMP[1], TEMP[2] 60: ADD TEMP[3], TEMP[8], TEMP[3] 61: MAD OUT[1].xyz, TEMP[1].yyyy, TEMP[12], TEMP[3] 62: MAD OUT[2].xyz, TEMP[1].zzzz, CONST[25], TEMP[4] 63: MUL TEMP[8], CONST[23], IN[2] 64: MUL TEMP[12], CONST[24], IN[2] 65: LIT TEMP[1], -TEMP[2].xywz 66: ADD TEMP[5], TEMP[8], TEMP[5] 67: MAD OUT[4].xyz, TEMP[1].yyyy, TEMP[12], TEMP[5] 68: MAD OUT[5].xyz, TEMP[1].zzzz, CONST[26], TEMP[6] 69: MOV OUT[3], IN[3] 70: END # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: MOV OUTPUT[1], INPUT[3]; 5: MOV OUTPUT[4], INPUT[8]; 6: END InputsRead: 0x109 (0b1,00001001) OutputsWritten: 0x13 (0b10011) NumInstructions=7 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {-1.32, -2.65e-07, 6.88e-15, 6.87e-15} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {1.99e-07, -1.76, 9.12e-08, 9.1e-08} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {1.5e-14, -2.65e-07, -0.604, -0.603} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {-0.007, -1.49, 2, 2.19} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL OUT[0], POSITION DCL OUT[1], COLOR DCL OUT[2], GENERIC[0] DCL CONST[0..3] DCL TEMP[0] 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: MOV OUT[1], IN[1] 5: MOV OUT[2], IN[2] 6: END # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: MOV OUTPUT[1], INPUT[3]; 5: MOV OUTPUT[4], INPUT[8]; 6: END InputsRead: 0x109 (0b1,00001001) OutputsWritten: 0x13 (0b10011) NumInstructions=7 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {2.19, 0, 0, 0} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {0, 2.2e-07, 1, 1} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {0, 2.92, -7.56e-08, -7.55e-08} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {0, -0.0492, 1.99, 2.18} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL OUT[0], POSITION DCL OUT[1], COLOR DCL OUT[2], GENERIC[0] DCL CONST[0..3] DCL TEMP[0] 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: MOV OUT[1], IN[1] 5: MOV OUT[2], IN[2] 6: END # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: DP3 TEMP[0].x, INPUT[2], STATE[4]; 5: DP3 TEMP[0].y, INPUT[2], STATE[5]; 6: DP3 TEMP[0].z, INPUT[2], STATE[6]; 7: DP3 TEMP[1].x, TEMP[0], TEMP[0]; 8: RSQ TEMP[1].x, TEMP[1]; 9: MUL TEMP[0], TEMP[0], TEMP[1].xxxx; 10: MOV TEMP[2].w, STATE[7].xxxx; 11: MOV TEMP[3], INPUT[3]; 12: MAD TEMP[3].xyz, STATE[8], INPUT[3], STATE[9]; 13: MOV TEMP[4], CONST[10]; 14: MOV TEMP[2].z, STATE[11].-x-x-x-x; 15: MOV TEMP[5], INPUT[3]; 16: MAD TEMP[5].xyz, STATE[8], INPUT[3], STATE[12]; 17: MOV TEMP[6], CONST[10]; 18: MOV OUTPUT[1], TEMP[3]; 19: MOV OUTPUT[2], TEMP[4]; 20: MOV OUTPUT[13], TEMP[5]; 21: MOV OUTPUT[14], TEMP[6]; 22: MUL TEMP[7], INPUT[0].xxxx, STATE[14]; 23: MAD TEMP[7], INPUT[0].yyyy, STATE[15], TEMP[7]; 24: MAD TEMP[7], INPUT[0].zzzz, STATE[16], TEMP[7]; 25: MAD TEMP[7], INPUT[0].wwww, STATE[17], TEMP[7]; 26: SUB TEMP[9], STATE[13], TEMP[7]; 27: DP3 TEMP[8], TEMP[9], TEMP[9]; 28: RSQ TEMP[8], TEMP[8]; 29: MUL TEMP[9], TEMP[9], TEMP[8]; 30: DP3 TEMP[12].x, TEMP[7], TEMP[7]; 31: RSQ TEMP[12].x, TEMP[12]; 32: MUL TEMP[11], TEMP[7], TEMP[12].xxxx; 33: SUB TEMP[10], TEMP[9], TEMP[11]; 34: DP3 TEMP[12].x, TEMP[10], TEMP[10]; 35: RSQ TEMP[12].x, TEMP[12]; 36: MUL TEMP[10], TEMP[10], TEMP[12].xxxx; 37: DP3 TEMP[2].x, TEMP[0], TEMP[9]; 38: DP3 TEMP[2].y, TEMP[0], TEMP[10]; 39: MUL TEMP[8], STATE[18], INPUT[3]; 40: MUL TEMP[12], STATE[19], INPUT[3]; 41: LIT TEMP[1], TEMP[2]; 42: ADD TEMP[3], TEMP[8], TEMP[3]; 43: MAD OUTPUT[1].xyz, TEMP[1].yyyy, TEMP[12], TEMP[3]; 44: MAD OUTPUT[2].xyz, TEMP[1].zzzz, STATE[20], TEMP[4]; 45: MUL TEMP[8], STATE[18], INPUT[3]; 46: MUL TEMP[12], STATE[19], INPUT[3]; 47: LIT TEMP[1], TEMP[2].-x-y-w-z; 48: ADD TEMP[5], TEMP[8], TEMP[5]; 49: MAD OUTPUT[13].xyz, TEMP[1].yyyy, TEMP[12], TEMP[5]; 50: MAD OUTPUT[14].xyz, TEMP[1].zzzz, STATE[21], TEMP[6]; 51: MOV OUTPUT[4], INPUT[8]; 52: END InputsRead: 0x10d (0b1,00001101) OutputsWritten: 0x6017 (0b1100000,00010111) NumInstructions=53 NumTemporaries=13 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x103 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {-3, 0.294, 0.0302, 0.0301} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {0.134, 1.29, 1.3, 1.3} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {-0.188, -3.79, 0.445, 0.444} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {0.0147, -4.47, 2.04, 2.24} param[4] sz=4 STATE state.matrix.modelview.invtrans.row[0] = {-0.725, 0.0322, -0.0453, 0} param[5] sz=4 STATE state.matrix.modelview.invtrans.row[1] = {0.0533, 0.233, -0.686, 0} param[6] sz=4 STATE state.matrix.modelview.invtrans.row[2] = {-0.0159, -0.688, -0.235, 0} param[7] sz=4 STATE state.materialfront.lshininess = {0.25, 0, 0, 1} param[8] sz=4 STATE state.lightmodel.ambientlightmodel.ambient = {0.2, 0.2, 0.2, 1} param[9] sz=4 STATE state.materialfront..emission = {0, 0, 0, 1} param[10] sz=4 CONST (null) = {0, 0, 0, 1} param[11] sz=4 STATE state.materialback.lshininess = {0.25, 0, 0, 1} param[12] sz=4 STATE state.materialback..emission = {0, 0, 0, 1} param[13] sz=4 STATE state..internal.lightPosition = {3.81, 3.47, 0.836, 1} param[14] sz=4 STATE state.matrix.modelview.transpose.row[0] = {-1.37, 0.101, -0.0301, 0} param[15] sz=4 STATE state.matrix.modelview.transpose.row[1] = {0.061, 0.441, -1.3, 0} param[16] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-0.0858, -1.3, -0.444, 0} param[17] sz=4 STATE state.matrix.modelview.transpose.row[3] = {0.00673, -1.53, -2.24, 1} param[18] sz=4 STATE state.light[0].ambient = {0, 0, 0, 1} param[19] sz=4 STATE state.light[0].diffuse = {2, 2, 2, 1} param[20] sz=4 STATE state.lightprod[0]front..specular = {0, 0, 0, 1} param[21] sz=4 STATE state.lightprod[0]back..specular = {0, 0, 0, 1} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL OUT[0], POSITION DCL OUT[1], COLOR DCL OUT[2], COLOR[1] DCL OUT[3], GENERIC[0] DCL OUT[4], BCOLOR DCL OUT[5], BCOLOR[1] DCL CONST[0..9] DCL CONST[11..21] DCL TEMP[0..12] IMM FLT32 { 0.0000, 1.0000, 0.0000, 0.0000} 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: DP3 TEMP[0].x, IN[1], CONST[4] 5: DP3 TEMP[0].y, IN[1], CONST[5] 6: DP3 TEMP[0].z, IN[1], CONST[6] 7: DP3 TEMP[1].x, TEMP[0], TEMP[0] 8: RSQ TEMP[1].x, TEMP[1] 9: MUL TEMP[0], TEMP[0], TEMP[1].xxxx 10: MOV TEMP[2].w, CONST[7].xxxx 11: MOV TEMP[3], IN[2] 12: MAD TEMP[3].xyz, CONST[8], IN[2], CONST[9] 13: MOV TEMP[4], IMM[0].xxxy 14: MOV TEMP[2].z, -CONST[11].xxxx 15: MOV TEMP[5], IN[2] 16: MAD TEMP[5].xyz, CONST[8], IN[2], CONST[12] 17: MOV TEMP[6], IMM[0].xxxy 18: MOV OUT[1], TEMP[3] 19: MOV OUT[2], TEMP[4] 20: MOV OUT[4], TEMP[5] 21: MOV OUT[5], TEMP[6] 22: MUL TEMP[7], IN[0].xxxx, CONST[14] 23: MAD TEMP[7], IN[0].yyyy, CONST[15], TEMP[7] 24: MAD TEMP[7], IN[0].zzzz, CONST[16], TEMP[7] 25: MAD TEMP[7], IN[0].wwww, CONST[17], TEMP[7] 26: SUB TEMP[8], CONST[13], TEMP[7] 27: DP3 TEMP[9], TEMP[8], TEMP[8] 28: RSQ TEMP[9], TEMP[9] 29: MUL TEMP[8], TEMP[8], TEMP[9] 30: DP3 TEMP[10].x, TEMP[7], TEMP[7] 31: RSQ TEMP[10].x, TEMP[10] 32: MUL TEMP[11], TEMP[7], TEMP[10].xxxx 33: SUB TEMP[12], TEMP[8], TEMP[11] 34: DP3 TEMP[10].x, TEMP[12], TEMP[12] 35: RSQ TEMP[10].x, TEMP[10] 36: MUL TEMP[12], TEMP[12], TEMP[10].xxxx 37: DP3 TEMP[2].x, TEMP[0], TEMP[8] 38: DP3 TEMP[2].y, TEMP[0], TEMP[12] 39: MUL TEMP[9], CONST[18], IN[2] 40: MUL TEMP[10], CONST[19], IN[2] 41: LIT TEMP[1], TEMP[2] 42: ADD TEMP[3], TEMP[9], TEMP[3] 43: MAD OUT[1].xyz, TEMP[1].yyyy, TEMP[10], TEMP[3] 44: MAD OUT[2].xyz, TEMP[1].zzzz, CONST[20], TEMP[4] 45: MUL TEMP[9], CONST[18], IN[2] 46: MUL TEMP[10], CONST[19], IN[2] 47: LIT TEMP[1], -TEMP[2].xywz 48: ADD TEMP[5], TEMP[9], TEMP[5] 49: MAD OUT[4].xyz, TEMP[1].yyyy, TEMP[10], TEMP[5] 50: MAD OUT[5].xyz, TEMP[1].zzzz, CONST[21], TEMP[6] 51: MOV OUT[3], IN[3] 52: END # Fragment Program/Shader 0 0: ADD OUTPUT[2].xyz, INPUT[1], INPUT[2]; 1: MOV OUTPUT[2].w, INPUT[1]; 2: END InputsRead: 0x6 (0b110) OutputsWritten: 0x4 (0b100) NumInstructions=3 NumTemporaries=0 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x0 FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], COLOR, LINEAR DCL IN[1], COLOR[1], LINEAR DCL OUT[0], COLOR 0: ADD OUT[0].xyz, IN[0], IN[1] 1: MOV OUT[0].w, IN[0] 2: END # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: DP3 TEMP[0].x, INPUT[2], STATE[4]; 5: DP3 TEMP[0].y, INPUT[2], STATE[5]; 6: DP3 TEMP[0].z, INPUT[2], STATE[6]; 7: DP3 TEMP[1].x, TEMP[0], TEMP[0]; 8: RSQ TEMP[1].x, TEMP[1]; 9: MUL TEMP[0], TEMP[0], TEMP[1].xxxx; 10: MOV TEMP[2].w, STATE[7].xxxx; 11: MOV TEMP[3], INPUT[3]; 12: MAD TEMP[3].xyz, STATE[8], INPUT[3], STATE[9]; 13: MOV TEMP[4], CONST[10]; 14: MOV TEMP[2].z, STATE[11].-x-x-x-x; 15: MOV TEMP[5], INPUT[3]; 16: MAD TEMP[5].xyz, STATE[8], INPUT[3], STATE[12]; 17: MOV TEMP[6], CONST[10]; 18: MOV OUTPUT[1], TEMP[3]; 19: MOV OUTPUT[2], TEMP[4]; 20: MOV OUTPUT[13], TEMP[5]; 21: MOV OUTPUT[14], TEMP[6]; 22: MUL TEMP[7], INPUT[0].xxxx, STATE[14]; 23: MAD TEMP[7], INPUT[0].yyyy, STATE[15], TEMP[7]; 24: MAD TEMP[7], INPUT[0].zzzz, STATE[16], TEMP[7]; 25: MAD TEMP[7], INPUT[0].wwww, STATE[17], TEMP[7]; 26: SUB TEMP[9], STATE[13], TEMP[7]; 27: DP3 TEMP[8], TEMP[9], TEMP[9]; 28: RSQ TEMP[8], TEMP[8]; 29: MUL TEMP[9], TEMP[9], TEMP[8]; 30: DP3 TEMP[12].x, TEMP[7], TEMP[7]; 31: RSQ TEMP[12].x, TEMP[12]; 32: MUL TEMP[11], TEMP[7], TEMP[12].xxxx; 33: SUB TEMP[10], TEMP[9], TEMP[11]; 34: DP3 TEMP[12].x, TEMP[10], TEMP[10]; 35: RSQ TEMP[12].x, TEMP[12]; 36: MUL TEMP[10], TEMP[10], TEMP[12].xxxx; 37: DP3 TEMP[2].x, TEMP[0], TEMP[9]; 38: DP3 TEMP[2].y, TEMP[0], TEMP[10]; 39: MUL TEMP[8], STATE[18], INPUT[3]; 40: MUL TEMP[12], STATE[19], INPUT[3]; 41: LIT TEMP[1], TEMP[2]; 42: ADD TEMP[3], TEMP[8], TEMP[3]; 43: MAD OUTPUT[1].xyz, TEMP[1].yyyy, TEMP[12], TEMP[3]; 44: MAD OUTPUT[2].xyz, TEMP[1].zzzz, STATE[20], TEMP[4]; 45: MUL TEMP[8], STATE[18], INPUT[3]; 46: MUL TEMP[12], STATE[19], INPUT[3]; 47: LIT TEMP[1], TEMP[2].-x-y-w-z; 48: ADD TEMP[5], TEMP[8], TEMP[5]; 49: MAD OUTPUT[13].xyz, TEMP[1].yyyy, TEMP[12], TEMP[5]; 50: MAD OUTPUT[14].xyz, TEMP[1].zzzz, STATE[21], TEMP[6]; 51: END InputsRead: 0xd (0b1101) OutputsWritten: 0x6007 (0b1100000,00000111) NumInstructions=52 NumTemporaries=13 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x103 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {1.68, -0.501, -0.134, -0.134} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {0.442, 2.18, 0.203, 0.203} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {-0.178, 0.668, -0.764, -0.762} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {1.7, -2.84, 2.09, 2.28} param[4] sz=4 STATE state.matrix.modelview.invtrans.row[0] = {1.2, 0.315, -0.127, 0} param[5] sz=4 STATE state.matrix.modelview.invtrans.row[1] = {-0.268, 1.17, 0.358, 0} param[6] sz=4 STATE state.matrix.modelview.invtrans.row[2] = {0.209, -0.317, 1.19, 0} param[7] sz=4 STATE state.materialfront.lshininess = {0.25, 0, 0, 1} param[8] sz=4 STATE state.lightmodel.ambientlightmodel.ambient = {0.2, 0.2, 0.2, 1} param[9] sz=4 STATE state.materialfront..emission = {0, 0, 0, 1} param[10] sz=4 CONST (null) = {0, 0, 0, 1} param[11] sz=4 STATE state.materialback.lshininess = {0.25, 0, 0, 1} param[12] sz=4 STATE state.materialback..emission = {0, 0, 0, 1} param[13] sz=4 STATE state..internal.lightPosition = {3.81, 3.47, 0.836, 1} param[14] sz=4 STATE state.matrix.modelview.transpose.row[0] = {0.77, -0.172, 0.134, 0} param[15] sz=4 STATE state.matrix.modelview.transpose.row[1] = {0.202, 0.747, -0.203, 0} param[16] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-0.0814, 0.229, 0.762, 0} param[17] sz=4 STATE state.matrix.modelview.transpose.row[3] = {0.775, -0.974, -2.28, 1} param[18] sz=4 STATE state.light[0].ambient = {0, 0, 0, 1} param[19] sz=4 STATE state.light[0].diffuse = {2, 2, 2, 1} param[20] sz=4 STATE state.lightprod[0]front..specular = {0, 0, 0, 1} param[21] sz=4 STATE state.lightprod[0]back..specular = {0, 0, 0, 1} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL OUT[0], POSITION DCL OUT[1], COLOR DCL OUT[2], COLOR[1] DCL OUT[3], BCOLOR DCL OUT[4], BCOLOR[1] DCL CONST[0..9] DCL CONST[11..21] DCL TEMP[0..12] IMM FLT32 { 0.0000, 1.0000, 0.0000, 0.0000} 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: DP3 TEMP[0].x, IN[1], CONST[4] 5: DP3 TEMP[0].y, IN[1], CONST[5] 6: DP3 TEMP[0].z, IN[1], CONST[6] 7: DP3 TEMP[1].x, TEMP[0], TEMP[0] 8: RSQ TEMP[1].x, TEMP[1] 9: MUL TEMP[0], TEMP[0], TEMP[1].xxxx 10: MOV TEMP[2].w, CONST[7].xxxx 11: MOV TEMP[3], IN[2] 12: MAD TEMP[3].xyz, CONST[8], IN[2], CONST[9] 13: MOV TEMP[4], IMM[0].xxxy 14: MOV TEMP[2].z, -CONST[11].xxxx 15: MOV TEMP[5], IN[2] 16: MAD TEMP[5].xyz, CONST[8], IN[2], CONST[12] 17: MOV TEMP[6], IMM[0].xxxy 18: MOV OUT[1], TEMP[3] 19: MOV OUT[2], TEMP[4] 20: MOV OUT[3], TEMP[5] 21: MOV OUT[4], TEMP[6] 22: MUL TEMP[7], IN[0].xxxx, CONST[14] 23: MAD TEMP[7], IN[0].yyyy, CONST[15], TEMP[7] 24: MAD TEMP[7], IN[0].zzzz, CONST[16], TEMP[7] 25: MAD TEMP[7], IN[0].wwww, CONST[17], TEMP[7] 26: SUB TEMP[8], CONST[13], TEMP[7] 27: DP3 TEMP[9], TEMP[8], TEMP[8] 28: RSQ TEMP[9], TEMP[9] 29: MUL TEMP[8], TEMP[8], TEMP[9] 30: DP3 TEMP[10].x, TEMP[7], TEMP[7] 31: RSQ TEMP[10].x, TEMP[10] 32: MUL TEMP[11], TEMP[7], TEMP[10].xxxx 33: SUB TEMP[12], TEMP[8], TEMP[11] 34: DP3 TEMP[10].x, TEMP[12], TEMP[12] 35: RSQ TEMP[10].x, TEMP[10] 36: MUL TEMP[12], TEMP[12], TEMP[10].xxxx 37: DP3 TEMP[2].x, TEMP[0], TEMP[8] 38: DP3 TEMP[2].y, TEMP[0], TEMP[12] 39: MUL TEMP[9], CONST[18], IN[2] 40: MUL TEMP[10], CONST[19], IN[2] 41: LIT TEMP[1], TEMP[2] 42: ADD TEMP[3], TEMP[9], TEMP[3] 43: MAD OUT[1].xyz, TEMP[1].yyyy, TEMP[10], TEMP[3] 44: MAD OUT[2].xyz, TEMP[1].zzzz, CONST[20], TEMP[4] 45: MUL TEMP[9], CONST[18], IN[2] 46: MUL TEMP[10], CONST[19], IN[2] 47: LIT TEMP[1], -TEMP[2].xywz 48: ADD TEMP[5], TEMP[9], TEMP[5] 49: MAD OUT[3].xyz, TEMP[1].yyyy, TEMP[10], TEMP[5] 50: MAD OUT[4].xyz, TEMP[1].zzzz, CONST[21], TEMP[6] 51: END # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: MOV OUTPUT[1], INPUT[3]; 5: END InputsRead: 0x9 (0b1001) OutputsWritten: 0x3 (0b11) NumInstructions=6 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {2.68, 1.27, -0.286, -0.286} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {-0.908, 3.67, 0.142, 0.141} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {-0.692, 0.12, -1.3, -1.29} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {-0.129, -1.64, 2.11, 2.3} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], COLOR DCL CONST[0..3] DCL TEMP[0] 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: MOV OUT[1], IN[1] 5: END # Fragment Program/Shader 0 0: TXP TEMP[0], INPUT[4], texture[0], 2D; 1: MUL OUTPUT[2], TEMP[0], STATE[0]; 2: END InputsRead: 0x10 (0b10000) OutputsWritten: 0x4 (0b100) NumInstructions=3 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1 (0b1) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0xc00100 param[0] sz=4 STATE state..internal.driverState = {1, 1, 1, 0.936} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[0], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL CONST[0] DCL TEMP[0] 0: TXP TEMP[0], IN[0], SAMP[0], 2D 1: MUL OUT[0], TEMP[0], CONST[0] 2: END # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: MUL TEMP[0], INPUT[8].xxxx, STATE[4]; 5: MAD TEMP[0], INPUT[8].yyyy, STATE[5], TEMP[0]; 6: MAD TEMP[0], INPUT[8].zzzz, STATE[6], TEMP[0]; 7: MAD OUTPUT[4], INPUT[8].wwww, STATE[7], TEMP[0]; 8: END InputsRead: 0x101 (0b1,00000001) OutputsWritten: 0x11 (0b10001) NumInstructions=9 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x7 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {0.0365, -0.0164, -1.42, -1.42} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {-3.11, -0.00167, -0.0167, -0.0167} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {-0.00111, 4.14, -0.00565, -0.00564} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {-0.361, 0.162, 13.9, 14} param[4] sz=4 STATE state.matrix.texture[0].transpose.row[0] = {4, 0, 0, 0} param[5] sz=4 STATE state.matrix.texture[0].transpose.row[1] = {0, 4, 0, 0} param[6] sz=4 STATE state.matrix.texture[0].transpose.row[2] = {0, 0, 1, 0} param[7] sz=4 STATE state.matrix.texture[0].transpose.row[3] = {0, 0, 0, 1} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], GENERIC[0] DCL CONST[0..7] DCL TEMP[0] 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: MUL TEMP[0], IN[1].xxxx, CONST[4] 5: MAD TEMP[0], IN[1].yyyy, CONST[5], TEMP[0] 6: MAD TEMP[0], IN[1].zzzz, CONST[6], TEMP[0] 7: MAD OUT[1], IN[1].wwww, CONST[7], TEMP[0] 8: END open /dev/[sound/]dsp: Device or resource busy # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: MOV OUTPUT[1], INPUT[3]; 5: END InputsRead: 0x9 (0b1001) OutputsWritten: 0x3 (0b11) NumInstructions=6 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {2.19, 0.00212, 0.0286, 0.0285} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {-0.0624, 0.0743, 1, 0.999} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {-2.36e-09, 2.92, -0.0255, -0.0255} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {-0.000301, -0.926, 2.17, 2.37} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], COLOR DCL CONST[0..3] DCL TEMP[0] 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: MOV OUT[1], IN[1] 5: END Warning, object "OBhud_main" from AddObject actuator "act" is not in a hidden layer. # Fragment Program/Shader 0 0: END InputsRead: 0x2 (0b10) OutputsWritten: 0x0 (0b0) NumInstructions=1 NumTemporaries=0 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x0 FRAG DCL IN[0], COLOR, LINEAR 0: END # Fragment Program/Shader 0 0: END InputsRead: 0x0 (0b0) OutputsWritten: 0x0 (0b0) NumInstructions=1 NumTemporaries=0 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0xc00100 param[0] sz=4 STATE state..internal.driverState = {1, 1, 1, 1} FRAG DCL CONST[0] 0: END # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: END InputsRead: 0x1 (0b1) OutputsWritten: 0x1 (0b1) NumInstructions=5 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {-0.911, -11.3, 0.251, 0.156} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {11.2, -0.556, 0.312, 0.194} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {2.1, -1.92, -1.56, -0.969} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {-0.331, -0.252, -2.83, 9.59} VERT DCL IN[0] DCL OUT[0], POSITION DCL CONST[0..3] DCL TEMP[0] 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: END # Fragment Program/Shader 0 0: MOV OUTPUT[2], STATE[0]; 1: END InputsRead: 0x0 (0b0) OutputsWritten: 0x4 (0b100) NumInstructions=2 NumTemporaries=0 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0xc00100 param[0] sz=4 STATE state..internal.driverState = {1, 1, 1, 1} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL OUT[0], COLOR DCL CONST[0] 0: MOV OUT[0], CONST[0] 1: END # Fragment Program/Shader 18 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[26].wwww, CONST[27].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[28].xyzx; 12: ENDIF; 13: MUL TEMP[3].x, INPUT[17].xxxx, CONST[27].zxxx; 14: MUL TEMP[3].y, INPUT[17].xyxx, CONST[27].xzxx; 15: MUL TEMP[3].z, INPUT[17].xxzx, CONST[27].xxzx; 16: TEX TEMP[0].xyz, INPUT[16].xyyy, texture[4], 2D; 17: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[3].xyzz; 18: DP3 TEMP[0].x, TEMP[1].xyzz, UNIFORM[21].xyzz; 19: MAD TEMP[3].x, CONST[27].wwww, TEMP[0].xxxx, CONST[27].wwww; 20: MUL TEMP[0].x, TEMP[3].xxxx, CONST[28].wwww; 21: MAX TEMP[3].x, TEMP[0].xxxx, CONST[27].xxxx; 22: MUL TEMP[0], UNIFORM[20], TEMP[3].xxxx; 23: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[1].xyzz; 24: TEX TEMP[5], TEMP[3].xxxx, texture[3], 1D; 25: MOV TEMP[3].w, CONST[27].yyyy; 26: MOV TEMP[3].xyz, TEMP[4].xyzx; 27: MOV_SAT TEMP[6].x, TEMP[5].wwww; 28: ADD TEMP[7].x, CONST[27].yyyy, TEMP[6].-x-x-x-x; 29: MOV TEMP[8], TEMP[3]; 30: SLT TEMP[3].x, TEMP[4].xxxx, CONST[27].wwww; 31: IF TEMP[3].xxxx; # (if false, goto 36); 32: MUL TEMP[3].x, CONST[29].xxxx, TEMP[6].xxxx; 33: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[5].xxxx, TEMP[7].xxxx; 34: MUL TEMP[3].x, TEMP[4].xxxx, TEMP[9].xxxx; 35: MOV TEMP[8].x, TEMP[3].xxxx; 36: ELSE; # (goto 44) 37: MUL TEMP[3].x, CONST[29].xxxx, TEMP[6].xxxx; 38: ADD TEMP[9].x, CONST[27].yyyy, TEMP[5].-x-x-x-x; 39: MAD TEMP[10].x, TEMP[3].xxxx, TEMP[9].xxxx, TEMP[7].xxxx; 40: ADD TEMP[3].x, CONST[27].yyyy, TEMP[8].-x-x-x-x; 41: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[3].xxxx; 42: ADD TEMP[3].x, CONST[27].yyyy, TEMP[9].-x-x-x-x; 43: MOV TEMP[8].x, TEMP[3].xxxx; 44: ENDIF; 45: SLT TEMP[3].x, TEMP[4].yyyy, CONST[27].wwww; 46: IF TEMP[3].xxxx; # (if false, goto 51); 47: MUL TEMP[3].x, CONST[29].xxxx, TEMP[6].xxxx; 48: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[5].yyyy, TEMP[7].xxxx; 49: MUL TEMP[3].x, TEMP[4].yyyy, TEMP[9].xxxx; 50: MOV TEMP[8].y, TEMP[3].xxxx; 51: ELSE; # (goto 59) 52: MUL TEMP[3].x, CONST[29].xxxx, TEMP[6].xxxx; 53: ADD TEMP[9].x, CONST[27].yyyy, TEMP[5].-y-y-y-y; 54: MAD TEMP[10].x, TEMP[3].xxxx, TEMP[9].xxxx, TEMP[7].xxxx; 55: ADD TEMP[3].x, CONST[27].yyyy, TEMP[8].-y-y-y-y; 56: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[3].xxxx; 57: ADD TEMP[3].x, CONST[27].yyyy, TEMP[9].-x-x-x-x; 58: MOV TEMP[8].y, TEMP[3].xxxx; 59: ENDIF; 60: SLT TEMP[3].x, TEMP[4].zzzz, CONST[27].wwww; 61: IF TEMP[3].xxxx; # (if false, goto 66); 62: MUL TEMP[3].x, CONST[29].xxxx, TEMP[6].xxxx; 63: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[5].zzzz, TEMP[7].xxxx; 64: MUL TEMP[3].x, TEMP[4].zzzz, TEMP[9].xxxx; 65: MOV TEMP[8].z, TEMP[3].xxxx; 66: ELSE; # (goto 74) 67: MUL TEMP[3].x, CONST[29].xxxx, TEMP[6].xxxx; 68: ADD TEMP[6].x, CONST[27].yyyy, TEMP[5].-z-z-z-z; 69: MAD TEMP[5].x, TEMP[3].xxxx, TEMP[6].xxxx, TEMP[7].xxxx; 70: ADD TEMP[3].x, CONST[27].yyyy, TEMP[8].-z-z-z-z; 71: MUL TEMP[6].x, TEMP[5].xxxx, TEMP[3].xxxx; 72: ADD TEMP[3].x, CONST[27].yyyy, TEMP[6].-x-x-x-x; 73: MOV TEMP[8].z, TEMP[3].xxxx; 74: ENDIF; 75: MAD TEMP[3], TEMP[0], TEMP[8], CONST[27].xxxy; 76: DP3 TEMP[0].x, TEMP[1].xyzz, UNIFORM[18].xyzz; 77: MUL TEMP[5].x, TEMP[0].xxxx, CONST[28].wwww; 78: MAX TEMP[0].x, TEMP[5].xxxx, CONST[27].xxxx; 79: MUL TEMP[5], UNIFORM[17], TEMP[0].xxxx; 80: DP3 TEMP[0].x, TEMP[2].xyzz, TEMP[1].xyzz; 81: TEX TEMP[2], TEMP[0].xxxx, texture[2], 1D; 82: MOV TEMP[0].w, CONST[27].yyyy; 83: MOV TEMP[0].xyz, TEMP[4].xyzx; 84: MOV_SAT TEMP[6].x, TEMP[2].wwww; 85: ADD TEMP[7].x, CONST[27].yyyy, TEMP[6].-x-x-x-x; 86: MOV TEMP[8], TEMP[0]; 87: SLT TEMP[0].x, TEMP[4].xxxx, CONST[27].wwww; 88: IF TEMP[0].xxxx; # (if false, goto 93); 89: MUL TEMP[0].x, CONST[29].xxxx, TEMP[6].xxxx; 90: MAD TEMP[9].x, TEMP[0].xxxx, TEMP[2].xxxx, TEMP[7].xxxx; 91: MUL TEMP[0].x, TEMP[4].xxxx, TEMP[9].xxxx; 92: MOV TEMP[8].x, TEMP[0].xxxx; 93: ELSE; # (goto 101) 94: MUL TEMP[0].x, CONST[29].xxxx, TEMP[6].xxxx; 95: ADD TEMP[9].x, CONST[27].yyyy, TEMP[2].-x-x-x-x; 96: MAD TEMP[10].x, TEMP[0].xxxx, TEMP[9].xxxx, TEMP[7].xxxx; 97: ADD TEMP[0].x, CONST[27].yyyy, TEMP[8].-x-x-x-x; 98: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[0].xxxx; 99: ADD TEMP[0].x, CONST[27].yyyy, TEMP[9].-x-x-x-x; 100: MOV TEMP[8].x, TEMP[0].xxxx; 101: ENDIF; 102: SLT TEMP[0].x, TEMP[4].yyyy, CONST[27].wwww; 103: IF TEMP[0].xxxx; # (if false, goto 108); 104: MUL TEMP[0].x, CONST[29].xxxx, TEMP[6].xxxx; 105: MAD TEMP[9].x, TEMP[0].xxxx, TEMP[2].yyyy, TEMP[7].xxxx; 106: MUL TEMP[0].x, TEMP[4].yyyy, TEMP[9].xxxx; 107: MOV TEMP[8].y, TEMP[0].xxxx; 108: ELSE; # (goto 116) 109: MUL TEMP[0].x, CONST[29].xxxx, TEMP[6].xxxx; 110: ADD TEMP[9].x, CONST[27].yyyy, TEMP[2].-y-y-y-y; 111: MAD TEMP[10].x, TEMP[0].xxxx, TEMP[9].xxxx, TEMP[7].xxxx; 112: ADD TEMP[0].x, CONST[27].yyyy, TEMP[8].-y-y-y-y; 113: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[0].xxxx; 114: ADD TEMP[0].x, CONST[27].yyyy, TEMP[9].-x-x-x-x; 115: MOV TEMP[8].y, TEMP[0].xxxx; 116: ENDIF; 117: SLT TEMP[0].x, TEMP[4].zzzz, CONST[27].wwww; 118: IF TEMP[0].xxxx; # (if false, goto 123); 119: MUL TEMP[0].x, CONST[29].xxxx, TEMP[6].xxxx; 120: MAD TEMP[9].x, TEMP[0].xxxx, TEMP[2].zzzz, TEMP[7].xxxx; 121: MUL TEMP[0].x, TEMP[4].zzzz, TEMP[9].xxxx; 122: MOV TEMP[8].z, TEMP[0].xxxx; 123: ELSE; # (goto 131) 124: MUL TEMP[0].x, CONST[29].xxxx, TEMP[6].xxxx; 125: ADD TEMP[6].x, CONST[27].yyyy, TEMP[2].-z-z-z-z; 126: MAD TEMP[2].x, TEMP[0].xxxx, TEMP[6].xxxx, TEMP[7].xxxx; 127: ADD TEMP[0].x, CONST[27].yyyy, TEMP[8].-z-z-z-z; 128: MUL TEMP[6].x, TEMP[2].xxxx, TEMP[0].xxxx; 129: ADD TEMP[0].x, CONST[27].yyyy, TEMP[6].-x-x-x-x; 130: MOV TEMP[8].z, TEMP[0].xxxx; 131: ENDIF; 132: MAD TEMP[0], TEMP[5], TEMP[8], TEMP[3]; 133: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[15].-x-y-z-z; 134: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[2].xyzz; 135: RSQ TEMP[5].x, TEMP[3].xxxx; 136: MUL TEMP[3].xyz, TEMP[2].xyzz, TEMP[5].xxxx; 137: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz; 138: RSQ TEMP[2].x, TEMP[5].xxxx; 139: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx; 140: CMP TEMP[2].x, TEMP[5].-x-x-x-x, TEMP[2].xxxx, CONST[27].xxxx; 141: ADD TEMP[5].x, CONST[29].yyyy, TEMP[2].xxxx; 142: RCP TEMP[2].x, TEMP[5].xxxx; 143: MUL TEMP[5].x, CONST[29].yyyy, TEMP[2].xxxx; 144: DP3 TEMP[2].x, TEMP[3].xyzz, UNIFORM[14].xyzz; 145: SLE TEMP[6].x, TEMP[2].xxxx, CONST[29].zzzz; 146: IF TEMP[6].xxxx; # (if false, goto 148); 147: MOV TEMP[6].x, CONST[27].xxxx; 148: ELSE; # (goto 159) 149: ADD TEMP[7].x, TEMP[2].xxxx, CONST[29].wwww; 150: MUL TEMP[8].x, TEMP[7].xxxx, CONST[30].xxxx; 151: MOV_SAT TEMP[7].x, TEMP[8].xxxx; 152: MUL TEMP[8].x, CONST[29].xxxx, TEMP[7].xxxx; 153: ADD TEMP[9].x, CONST[30].yyyy, TEMP[8].-x-x-x-x; 154: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx; 155: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx; 156: MUL TEMP[7].x, TEMP[2].xxxx, TEMP[9].xxxx; 157: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx; 158: MOV TEMP[6].x, TEMP[2].xxxx; 159: ENDIF; 160: SLT TEMP[2].x, TEMP[6].xxxx, CONST[30].zzzz; 161: IF TEMP[2].xxxx; # (if false, goto 163); 162: MOV TEMP[2].x, CONST[27].xxxx; 163: ELSE; # (goto 165) 164: MOV TEMP[2].x, TEMP[6].xxxx; 165: ENDIF; 166: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[3].xyzz; 167: MUL TEMP[3].x, TEMP[5].xxxx, TEMP[2].xxxx; 168: MUL TEMP[2].x, TEMP[3].xxxx, CONST[28].wwww; 169: MAX TEMP[3].x, TEMP[2].xxxx, CONST[27].xxxx; 170: SLE TEMP[2].x, TEMP[5].xxxx, CONST[27].xxxx; 171: IF TEMP[2].xxxx; # (if false, goto 173); 172: MOV TEMP[2].x, CONST[27].xxxx; 173: ELSE; # (goto 185) 174: MUL TEMP[5], UNIFORM[9], INPUT[15].xxxx; 175: MAD TEMP[6], UNIFORM[10], INPUT[15].yyyy, TEMP[5]; 176: MAD TEMP[5], UNIFORM[11], INPUT[15].zzzz, TEMP[6]; 177: ADD TEMP[6], TEMP[5], UNIFORM[12]; 178: MUL TEMP[5].x, CONST[30].wwww, TEMP[6].wwww; 179: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[5].-x-x-x-x; 180: MOV TEMP[5], TEMP[6].xyyy; 181: MOV TEMP[5].w, TEMP[6].wwww; 182: MOV TEMP[5].z, TEMP[7].xxxx; 183: TXP TEMP[6].x, TEMP[5], texture[1], 2D SHADOW; 184: MOV TEMP[2].x, TEMP[6].xxxx; 185: ENDIF; 186: MOV TEMP[5].w, CONST[27].xxxx; 187: MUL TEMP[6].x, TEMP[3].xxxx, UNIFORM[8].xxxx; 188: ADD TEMP[3].x, CONST[27].yyyy, TEMP[2].-x-x-x-x; 189: MUL TEMP[2].x, TEMP[6].xxxx, TEMP[3].xxxx; 190: MUL TEMP[5].xyz, TEMP[4].xyzx, TEMP[2].xxxx; 191: ADD TEMP[2], TEMP[0], TEMP[5].-x-y-z-w; 192: ADD TEMP[0].xyz, INPUT[15].xyzz, UNIFORM[7].-x-y-z-z; 193: DP3 TEMP[3].x, TEMP[0].xyzz, TEMP[0].xyzz; 194: RSQ TEMP[5].x, TEMP[3].xxxx; 195: MUL TEMP[3].xyz, TEMP[0].xyzz, TEMP[5].xxxx; 196: DP3 TEMP[5].x, TEMP[0].xyzz, TEMP[0].xyzz; 197: RSQ TEMP[0].x, TEMP[5].xxxx; 198: MUL TEMP[0].x, TEMP[0].xxxx, TEMP[5].xxxx; 199: CMP TEMP[0].x, TEMP[5].-x-x-x-x, TEMP[0].xxxx, CONST[27].xxxx; 200: ADD TEMP[5].x, CONST[29].yyyy, TEMP[0].xxxx; 201: RCP TEMP[0].x, TEMP[5].xxxx; 202: MUL TEMP[5].x, CONST[29].yyyy, TEMP[0].xxxx; 203: DP3 TEMP[0].x, TEMP[3].xyzz, UNIFORM[6].xyzz; 204: SLE TEMP[6].x, TEMP[0].xxxx, CONST[29].zzzz; 205: IF TEMP[6].xxxx; # (if false, goto 207); 206: MOV TEMP[6].x, CONST[27].xxxx; 207: ELSE; # (goto 218) 208: ADD TEMP[7].x, TEMP[0].xxxx, CONST[29].wwww; 209: MUL TEMP[8].x, TEMP[7].xxxx, CONST[30].xxxx; 210: MOV_SAT TEMP[7].x, TEMP[8].xxxx; 211: MUL TEMP[8].x, CONST[29].xxxx, TEMP[7].xxxx; 212: ADD TEMP[9].x, CONST[30].yyyy, TEMP[8].-x-x-x-x; 213: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx; 214: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx; 215: MUL TEMP[7].x, TEMP[0].xxxx, TEMP[9].xxxx; 216: MUL TEMP[0].x, TEMP[5].xxxx, TEMP[7].xxxx; 217: MOV TEMP[6].x, TEMP[0].xxxx; 218: ENDIF; 219: SLT TEMP[0].x, TEMP[6].xxxx, CONST[30].zzzz; 220: IF TEMP[0].xxxx; # (if false, goto 222); 221: MOV TEMP[0].x, CONST[27].xxxx; 222: ELSE; # (goto 224) 223: MOV TEMP[0].x, TEMP[6].xxxx; 224: ENDIF; 225: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[3].xyzz; 226: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[0].xxxx; 227: MUL TEMP[0].x, TEMP[1].xxxx, CONST[28].wwww; 228: MAX TEMP[1].x, TEMP[0].xxxx, CONST[27].xxxx; 229: SLE TEMP[0].x, TEMP[5].xxxx, CONST[27].xxxx; 230: IF TEMP[0].xxxx; # (if false, goto 232); 231: MOV TEMP[0].x, CONST[27].xxxx; 232: ELSE; # (goto 244) 233: MUL TEMP[3], UNIFORM[1], INPUT[15].xxxx; 234: MAD TEMP[5], UNIFORM[2], INPUT[15].yyyy, TEMP[3]; 235: MAD TEMP[3], UNIFORM[3], INPUT[15].zzzz, TEMP[5]; 236: ADD TEMP[5], TEMP[3], UNIFORM[4]; 237: MUL TEMP[3].x, CONST[30].wwww, TEMP[5].wwww; 238: ADD TEMP[6].x, TEMP[5].zzzz, TEMP[3].-x-x-x-x; 239: MOV TEMP[3], TEMP[5].xyyy; 240: MOV TEMP[3].w, TEMP[5].wwww; 241: MOV TEMP[3].z, TEMP[6].xxxx; 242: TXP TEMP[5].x, TEMP[3], texture[0], 2D SHADOW; 243: MOV TEMP[0].x, TEMP[5].xxxx; 244: ENDIF; 245: MOV TEMP[3].w, CONST[27].xxxx; 246: MUL TEMP[5].x, TEMP[1].xxxx, UNIFORM[0].xxxx; 247: ADD TEMP[1].x, CONST[27].yyyy, TEMP[0].-x-x-x-x; 248: MUL TEMP[0].x, TEMP[5].xxxx, TEMP[1].xxxx; 249: MUL TEMP[1].xyz, TEMP[4].xyzz, TEMP[0].xxxx; 250: MOV TEMP[3].xyz, TEMP[1].xyzx; 251: ADD TEMP[0].xyz, TEMP[2], TEMP[1].-x-y-z-x; 252: MOV TEMP[1].xyz, TEMP[0].xyzx; 253: MOV TEMP[1].w, CONST[27].yyyy; 254: SEQ TEMP[0].x, STATE[26].wwww, CONST[27].xxxx; 255: IF TEMP[0].xxxx; # (if false, goto 261); 256: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 257: RSQ TEMP[2].x, TEMP[0].xxxx; 258: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx; 259: CMP TEMP[2].x, TEMP[0].-x-x-x-x, TEMP[2].xxxx, CONST[27].xxxx; 260: MOV TEMP[0].x, TEMP[2].xxxx; 261: ELSE; # (goto 263) 262: MOV TEMP[0].x, INPUT[15].-z-z-z-z; 263: ENDIF; 264: ADD TEMP[2].x, TEMP[0].xxxx, CONST[31].xxxx; 265: MUL TEMP[0].x, TEMP[2].xxxx, CONST[31].yyyy; 266: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 267: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx; 268: ADD TEMP[2].x, CONST[27].yyyy, TEMP[0].-x-x-x-x; 269: ADD TEMP[0].x, CONST[27].yyyy, TEMP[2].-x-x-x-x; 270: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 271: ADD TEMP[0].x, CONST[27].yyyy, TEMP[2].-x-x-x-x; 272: MUL TEMP[3], TEMP[1], TEMP[0].xxxx; 273: MAD TEMP[0], CONST[32], TEMP[2].xxxx, TEMP[3]; 274: MOV TEMP[1].w, CONST[27].yyyy; 275: MOV TEMP[1].xyz, TEMP[0].xyzx; 276: MOV OUTPUT[2], TEMP[1]; 277: END InputsRead: 0x3c000 (0b11,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=278 NumTemporaries=11 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1f (0b11111) Samplers=[ 4 3 2 1 0 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=1 UNIFORM unf167 = {1, 0, 0, 0} param[1] sz=16 UNIFORM unf161 = {5.7, -0.0767, 0.249, 0.191} param[2] sz=12 UNIFORM unf161 = {0.565, -1.44, -1.26, -0.969} param[3] sz=8 UNIFORM unf161 = {-0.271, -5.55, 0.208, 0.159} param[4] sz=4 UNIFORM unf161 = {17.1, -8.62, -8.83, 0.23} param[5] sz=4 SAMPLER samp4 = {0, 0, 0, 0} param[6] sz=3 UNIFORM unf142 = {0.191, -0.969, 0.159, 0} param[7] sz=3 UNIFORM unf135 = {-3.01, -0.58, -1.36, 0} param[8] sz=1 UNIFORM unf128 = {1, 0, 0, 0} param[9] sz=16 UNIFORM unf122 = {5.7, -0.0767, 0.249, 0.191} param[10] sz=12 UNIFORM unf122 = {0.565, -1.44, -1.26, -0.969} param[11] sz=8 UNIFORM unf122 = {-0.271, -5.55, 0.208, 0.159} param[12] sz=4 UNIFORM unf122 = {2.33, 3.5, 2.15, 8.65} param[13] sz=4 SAMPLER samp3 = {1, 0, 0, 0} param[14] sz=3 UNIFORM unf103 = {0.191, -0.969, 0.159, 0} param[15] sz=3 UNIFORM unf96 = {-1.32, 8.42, -1.54, 0} param[16] sz=4 SAMPLER samp2 = {2, 0, 0, 0} param[17] sz=4 UNIFORM unf72 = {2.2, 1.97, 1.79, 2.2} param[18] sz=3 UNIFORM unf60 = {0.233, -0.601, -0.764, 0} param[19] sz=4 SAMPLER samp1 = {3, 0, 0, 0} param[20] sz=4 UNIFORM unf37 = {0.551, 0.557, 0.68, 0.68} param[21] sz=3 UNIFORM unf23 = {-0.243, -0.303, 0.922, 0} param[22] sz=4 SAMPLER samp0 = {4, 0, 0, 0} param[23] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[24] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[25] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[26] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[27] sz=4 CONST (null) = {0, 1, 0.00392, 0.5} param[28] sz=4 CONST (null) = {0, 0, -1, 0.65} param[29] sz=4 CONST (null) = {2, 20, 0.996, -0.996} param[30] sz=4 CONST (null) = {1.75e+03, 3, 0.001, 0.005} param[31] sz=2 CONST (null) = {-6, 0.0385, 0, 0} param[32] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL IN[3], GENERIC[13], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL SAMP[3] DCL SAMP[4] DCL CONST[0..4] DCL CONST[6..12] DCL CONST[14..15] DCL CONST[17..18] DCL CONST[20..21] DCL CONST[23..26] DCL TEMP[0..10] IMM FLT32 { 0.0000, 1.0000, 0.0039, 0.5000} IMM FLT32 { 0.0000, -1.0000, 0.6500, 0.9063} IMM FLT32 { 2.0000, 20.0000, 0.9962, -0.9962} IMM FLT32 { 1751.3136, 3.0000, 0.0010, 0.0050} IMM FLT32 { -6.0000, 0.0385, 0.0000, 0.9063} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[26].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: MUL TEMP[3].x, IN[3].xxxx, IMM[0].zxxx 14: MUL TEMP[3].y, IN[3].xyxx, IMM[0].xzxx 15: MUL TEMP[3].z, IN[3].xxzx, IMM[0].xxzx 16: TEX TEMP[0].xyz, IN[2].xyyy, SAMP[4], 2D 17: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[3].xyzz 18: DP3 TEMP[0].x, TEMP[1].xyzz, CONST[21].xyzz 19: MAD TEMP[3].x, IMM[0].wwww, TEMP[0].xxxx, IMM[0].wwww 20: MUL TEMP[0].x, TEMP[3].xxxx, IMM[1].zzzz 21: MAX TEMP[3].x, TEMP[0].xxxx, IMM[0].xxxx 22: MUL TEMP[0], CONST[20], TEMP[3].xxxx 23: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[1].xyzz 24: TEX TEMP[5], TEMP[3].xxxx, SAMP[3], 1D 25: MOV TEMP[3].w, IMM[0].yyyy 26: MOV TEMP[3].xyz, TEMP[4].xyzx 27: MOV_SAT TEMP[6].x, TEMP[5].wwww 28: ADD TEMP[7].x, IMM[0].yyyy, -TEMP[6].xxxx 29: MOV TEMP[8], TEMP[3] 30: SLT TEMP[3].x, TEMP[4].xxxx, IMM[0].wwww 31: IF TEMP[3].xxxx :36 32: MUL TEMP[3].x, IMM[2].xxxx, TEMP[6].xxxx 33: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[5].xxxx, TEMP[7].xxxx 34: MUL TEMP[3].x, TEMP[4].xxxx, TEMP[9].xxxx 35: MOV TEMP[8].x, TEMP[3].xxxx 36: ELSE :44 37: MUL TEMP[3].x, IMM[2].xxxx, TEMP[6].xxxx 38: ADD TEMP[9].x, IMM[0].yyyy, -TEMP[5].xxxx 39: MAD TEMP[10].x, TEMP[3].xxxx, TEMP[9].xxxx, TEMP[7].xxxx 40: ADD TEMP[3].x, IMM[0].yyyy, -TEMP[8].xxxx 41: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[3].xxxx 42: ADD TEMP[3].x, IMM[0].yyyy, -TEMP[9].xxxx 43: MOV TEMP[8].x, TEMP[3].xxxx 44: ENDIF 45: SLT TEMP[3].x, TEMP[4].yyyy, IMM[0].wwww 46: IF TEMP[3].xxxx :51 47: MUL TEMP[3].x, IMM[2].xxxx, TEMP[6].xxxx 48: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[5].yyyy, TEMP[7].xxxx 49: MUL TEMP[3].x, TEMP[4].yyyy, TEMP[9].xxxx 50: MOV TEMP[8].y, TEMP[3].xxxx 51: ELSE :59 52: MUL TEMP[3].x, IMM[2].xxxx, TEMP[6].xxxx 53: ADD TEMP[9].x, IMM[0].yyyy, -TEMP[5].yyyy 54: MAD TEMP[10].x, TEMP[3].xxxx, TEMP[9].xxxx, TEMP[7].xxxx 55: ADD TEMP[3].x, IMM[0].yyyy, -TEMP[8].yyyy 56: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[3].xxxx 57: ADD TEMP[3].x, IMM[0].yyyy, -TEMP[9].xxxx 58: MOV TEMP[8].y, TEMP[3].xxxx 59: ENDIF 60: SLT TEMP[3].x, TEMP[4].zzzz, IMM[0].wwww 61: IF TEMP[3].xxxx :66 62: MUL TEMP[3].x, IMM[2].xxxx, TEMP[6].xxxx 63: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[5].zzzz, TEMP[7].xxxx 64: MUL TEMP[3].x, TEMP[4].zzzz, TEMP[9].xxxx 65: MOV TEMP[8].z, TEMP[3].xxxx 66: ELSE :74 67: MUL TEMP[3].x, IMM[2].xxxx, TEMP[6].xxxx 68: ADD TEMP[6].x, IMM[0].yyyy, -TEMP[5].zzzz 69: MAD TEMP[5].x, TEMP[3].xxxx, TEMP[6].xxxx, TEMP[7].xxxx 70: ADD TEMP[3].x, IMM[0].yyyy, -TEMP[8].zzzz 71: MUL TEMP[6].x, TEMP[5].xxxx, TEMP[3].xxxx 72: ADD TEMP[3].x, IMM[0].yyyy, -TEMP[6].xxxx 73: MOV TEMP[8].z, TEMP[3].xxxx 74: ENDIF 75: MAD TEMP[3], TEMP[0], TEMP[8], IMM[0].xxxy 76: DP3 TEMP[0].x, TEMP[1].xyzz, CONST[18].xyzz 77: MUL TEMP[5].x, TEMP[0].xxxx, IMM[1].zzzz 78: MAX TEMP[0].x, TEMP[5].xxxx, IMM[0].xxxx 79: MUL TEMP[5], CONST[17], TEMP[0].xxxx 80: DP3 TEMP[0].x, TEMP[2].xyzz, TEMP[1].xyzz 81: TEX TEMP[2], TEMP[0].xxxx, SAMP[2], 1D 82: MOV TEMP[0].w, IMM[0].yyyy 83: MOV TEMP[0].xyz, TEMP[4].xyzx 84: MOV_SAT TEMP[6].x, TEMP[2].wwww 85: ADD TEMP[7].x, IMM[0].yyyy, -TEMP[6].xxxx 86: MOV TEMP[8], TEMP[0] 87: SLT TEMP[0].x, TEMP[4].xxxx, IMM[0].wwww 88: IF TEMP[0].xxxx :93 89: MUL TEMP[0].x, IMM[2].xxxx, TEMP[6].xxxx 90: MAD TEMP[9].x, TEMP[0].xxxx, TEMP[2].xxxx, TEMP[7].xxxx 91: MUL TEMP[0].x, TEMP[4].xxxx, TEMP[9].xxxx 92: MOV TEMP[8].x, TEMP[0].xxxx 93: ELSE :101 94: MUL TEMP[0].x, IMM[2].xxxx, TEMP[6].xxxx 95: ADD TEMP[9].x, IMM[0].yyyy, -TEMP[2].xxxx 96: MAD TEMP[10].x, TEMP[0].xxxx, TEMP[9].xxxx, TEMP[7].xxxx 97: ADD TEMP[0].x, IMM[0].yyyy, -TEMP[8].xxxx 98: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[0].xxxx 99: ADD TEMP[0].x, IMM[0].yyyy, -TEMP[9].xxxx 100: MOV TEMP[8].x, TEMP[0].xxxx 101: ENDIF 102: SLT TEMP[0].x, TEMP[4].yyyy, IMM[0].wwww 103: IF TEMP[0].xxxx :108 104: MUL TEMP[0].x, IMM[2].xxxx, TEMP[6].xxxx 105: MAD TEMP[9].x, TEMP[0].xxxx, TEMP[2].yyyy, TEMP[7].xxxx 106: MUL TEMP[0].x, TEMP[4].yyyy, TEMP[9].xxxx 107: MOV TEMP[8].y, TEMP[0].xxxx 108: ELSE :116 109: MUL TEMP[0].x, IMM[2].xxxx, TEMP[6].xxxx 110: ADD TEMP[9].x, IMM[0].yyyy, -TEMP[2].yyyy 111: MAD TEMP[10].x, TEMP[0].xxxx, TEMP[9].xxxx, TEMP[7].xxxx 112: ADD TEMP[0].x, IMM[0].yyyy, -TEMP[8].yyyy 113: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[0].xxxx 114: ADD TEMP[0].x, IMM[0].yyyy, -TEMP[9].xxxx 115: MOV TEMP[8].y, TEMP[0].xxxx 116: ENDIF 117: SLT TEMP[0].x, TEMP[4].zzzz, IMM[0].wwww 118: IF TEMP[0].xxxx :123 119: MUL TEMP[0].x, IMM[2].xxxx, TEMP[6].xxxx 120: MAD TEMP[9].x, TEMP[0].xxxx, TEMP[2].zzzz, TEMP[7].xxxx 121: MUL TEMP[0].x, TEMP[4].zzzz, TEMP[9].xxxx 122: MOV TEMP[8].z, TEMP[0].xxxx 123: ELSE :131 124: MUL TEMP[0].x, IMM[2].xxxx, TEMP[6].xxxx 125: ADD TEMP[6].x, IMM[0].yyyy, -TEMP[2].zzzz 126: MAD TEMP[2].x, TEMP[0].xxxx, TEMP[6].xxxx, TEMP[7].xxxx 127: ADD TEMP[0].x, IMM[0].yyyy, -TEMP[8].zzzz 128: MUL TEMP[6].x, TEMP[2].xxxx, TEMP[0].xxxx 129: ADD TEMP[0].x, IMM[0].yyyy, -TEMP[6].xxxx 130: MOV TEMP[8].z, TEMP[0].xxxx 131: ENDIF 132: MAD TEMP[0], TEMP[5], TEMP[8], TEMP[3] 133: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[15].xyzz 134: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[2].xyzz 135: RSQ TEMP[5].x, TEMP[3].xxxx 136: MUL TEMP[3].xyz, TEMP[2].xyzz, TEMP[5].xxxx 137: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz 138: RSQ TEMP[2].x, TEMP[5].xxxx 139: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx 140: CMP TEMP[2].x, -TEMP[5].xxxx, TEMP[2].xxxx, IMM[0].xxxx 141: ADD TEMP[5].x, IMM[2].yyyy, TEMP[2].xxxx 142: RCP TEMP[2].x, TEMP[5].xxxx 143: MUL TEMP[5].x, IMM[2].yyyy, TEMP[2].xxxx 144: DP3 TEMP[2].x, TEMP[3].xyzz, CONST[14].xyzz 145: SLE TEMP[6].x, TEMP[2].xxxx, IMM[2].zzzz 146: IF TEMP[6].xxxx :148 147: MOV TEMP[6].x, IMM[0].xxxx 148: ELSE :159 149: ADD TEMP[7].x, TEMP[2].xxxx, IMM[2].wwww 150: MUL TEMP[8].x, TEMP[7].xxxx, IMM[3].xxxx 151: MOV_SAT TEMP[7].x, TEMP[8].xxxx 152: MUL TEMP[8].x, IMM[2].xxxx, TEMP[7].xxxx 153: ADD TEMP[9].x, IMM[3].yyyy, -TEMP[8].xxxx 154: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx 155: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx 156: MUL TEMP[7].x, TEMP[2].xxxx, TEMP[9].xxxx 157: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx 158: MOV TEMP[6].x, TEMP[2].xxxx 159: ENDIF 160: SLT TEMP[2].x, TEMP[6].xxxx, IMM[3].zzzz 161: IF TEMP[2].xxxx :163 162: MOV TEMP[2].x, IMM[0].xxxx 163: ELSE :165 164: MOV TEMP[2].x, TEMP[6].xxxx 165: ENDIF 166: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[3].xyzz 167: MUL TEMP[3].x, TEMP[5].xxxx, TEMP[2].xxxx 168: MUL TEMP[2].x, TEMP[3].xxxx, IMM[1].zzzz 169: MAX TEMP[3].x, TEMP[2].xxxx, IMM[0].xxxx 170: SLE TEMP[2].x, TEMP[5].xxxx, IMM[0].xxxx 171: IF TEMP[2].xxxx :173 172: MOV TEMP[2].x, IMM[0].xxxx 173: ELSE :185 174: MUL TEMP[5], CONST[9], IN[1].xxxx 175: MAD TEMP[6], CONST[10], IN[1].yyyy, TEMP[5] 176: MAD TEMP[5], CONST[11], IN[1].zzzz, TEMP[6] 177: ADD TEMP[6], TEMP[5], CONST[12] 178: MUL TEMP[5].x, IMM[3].wwww, TEMP[6].wwww 179: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[5].xxxx 180: MOV TEMP[5], TEMP[6].xyyy 181: MOV TEMP[5].w, TEMP[6].wwww 182: MOV TEMP[5].z, TEMP[7].xxxx 183: TXP TEMP[6].x, TEMP[5], SAMP[1], SHADOW2D 184: MOV TEMP[2].x, TEMP[6].xxxx 185: ENDIF 186: MOV TEMP[5].w, IMM[0].xxxx 187: MUL TEMP[6].x, TEMP[3].xxxx, CONST[8].xxxx 188: ADD TEMP[3].x, IMM[0].yyyy, -TEMP[2].xxxx 189: MUL TEMP[2].x, TEMP[6].xxxx, TEMP[3].xxxx 190: MUL TEMP[5].xyz, TEMP[4].xyzx, TEMP[2].xxxx 191: ADD TEMP[2], TEMP[0], -TEMP[5] 192: ADD TEMP[0].xyz, IN[1].xyzz, -CONST[7].xyzz 193: DP3 TEMP[3].x, TEMP[0].xyzz, TEMP[0].xyzz 194: RSQ TEMP[5].x, TEMP[3].xxxx 195: MUL TEMP[3].xyz, TEMP[0].xyzz, TEMP[5].xxxx 196: DP3 TEMP[5].x, TEMP[0].xyzz, TEMP[0].xyzz 197: RSQ TEMP[0].x, TEMP[5].xxxx 198: MUL TEMP[0].x, TEMP[0].xxxx, TEMP[5].xxxx 199: CMP TEMP[0].x, -TEMP[5].xxxx, TEMP[0].xxxx, IMM[0].xxxx 200: ADD TEMP[5].x, IMM[2].yyyy, TEMP[0].xxxx 201: RCP TEMP[0].x, TEMP[5].xxxx 202: MUL TEMP[5].x, IMM[2].yyyy, TEMP[0].xxxx 203: DP3 TEMP[0].x, TEMP[3].xyzz, CONST[6].xyzz 204: SLE TEMP[6].x, TEMP[0].xxxx, IMM[2].zzzz 205: IF TEMP[6].xxxx :207 206: MOV TEMP[6].x, IMM[0].xxxx 207: ELSE :218 208: ADD TEMP[7].x, TEMP[0].xxxx, IMM[2].wwww 209: MUL TEMP[8].x, TEMP[7].xxxx, IMM[3].xxxx 210: MOV_SAT TEMP[7].x, TEMP[8].xxxx 211: MUL TEMP[8].x, IMM[2].xxxx, TEMP[7].xxxx 212: ADD TEMP[9].x, IMM[3].yyyy, -TEMP[8].xxxx 213: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx 214: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx 215: MUL TEMP[7].x, TEMP[0].xxxx, TEMP[9].xxxx 216: MUL TEMP[0].x, TEMP[5].xxxx, TEMP[7].xxxx 217: MOV TEMP[6].x, TEMP[0].xxxx 218: ENDIF 219: SLT TEMP[0].x, TEMP[6].xxxx, IMM[3].zzzz 220: IF TEMP[0].xxxx :222 221: MOV TEMP[0].x, IMM[0].xxxx 222: ELSE :224 223: MOV TEMP[0].x, TEMP[6].xxxx 224: ENDIF 225: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[3].xyzz 226: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[0].xxxx 227: MUL TEMP[0].x, TEMP[1].xxxx, IMM[1].zzzz 228: MAX TEMP[1].x, TEMP[0].xxxx, IMM[0].xxxx 229: SLE TEMP[0].x, TEMP[5].xxxx, IMM[0].xxxx 230: IF TEMP[0].xxxx :232 231: MOV TEMP[0].x, IMM[0].xxxx 232: ELSE :244 233: MUL TEMP[3], CONST[1], IN[1].xxxx 234: MAD TEMP[5], CONST[2], IN[1].yyyy, TEMP[3] 235: MAD TEMP[3], CONST[3], IN[1].zzzz, TEMP[5] 236: ADD TEMP[5], TEMP[3], CONST[4] 237: MUL TEMP[3].x, IMM[3].wwww, TEMP[5].wwww 238: ADD TEMP[6].x, TEMP[5].zzzz, -TEMP[3].xxxx 239: MOV TEMP[3], TEMP[5].xyyy 240: MOV TEMP[3].w, TEMP[5].wwww 241: MOV TEMP[3].z, TEMP[6].xxxx 242: TXP TEMP[5].x, TEMP[3], SAMP[0], SHADOW2D 243: MOV TEMP[0].x, TEMP[5].xxxx 244: ENDIF 245: MOV TEMP[3].w, IMM[0].xxxx 246: MUL TEMP[5].x, TEMP[1].xxxx, CONST[0].xxxx 247: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[0].xxxx 248: MUL TEMP[0].x, TEMP[5].xxxx, TEMP[1].xxxx 249: MUL TEMP[1].xyz, TEMP[4].xyzz, TEMP[0].xxxx 250: MOV TEMP[3].xyz, TEMP[1].xyzx 251: ADD TEMP[0].xyz, TEMP[2], -TEMP[1].xyzx 252: MOV TEMP[1].xyz, TEMP[0].xyzx 253: MOV TEMP[1].w, IMM[0].yyyy 254: SEQ TEMP[0].x, CONST[26].wwww, IMM[0].xxxx 255: IF TEMP[0].xxxx :261 256: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 257: RSQ TEMP[2].x, TEMP[0].xxxx 258: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx 259: CMP TEMP[2].x, -TEMP[0].xxxx, TEMP[2].xxxx, IMM[0].xxxx 260: MOV TEMP[0].x, TEMP[2].xxxx 261: ELSE :263 262: MOV TEMP[0].x, -IN[1].zzzz 263: ENDIF 264: ADD TEMP[2].x, TEMP[0].xxxx, IMM[4].xxxx 265: MUL TEMP[0].x, TEMP[2].xxxx, IMM[4].yyyy 266: MOV_SAT TEMP[2].x, TEMP[0].xxxx 267: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx 268: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[0].xxxx 269: ADD TEMP[0].x, IMM[0].yyyy, -TEMP[2].xxxx 270: MOV_SAT TEMP[2].x, TEMP[0].xxxx 271: ADD TEMP[0].x, IMM[0].yyyy, -TEMP[2].xxxx 272: MUL TEMP[3], TEMP[1], TEMP[0].xxxx 273: MAD TEMP[0], IMM[5], TEMP[2].xxxx, TEMP[3] 274: MOV TEMP[1].w, IMM[0].yyyy 275: MOV TEMP[1].xyz, TEMP[0].xyzx 276: MOV OUT[0], TEMP[1] 277: END # Vertex Program/Shader 18 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[19], INPUT[18]; 13: MOV OUTPUT[18].xy, INPUT[17].xyxx; 14: END InputsRead: 0x60005 (0b110,00000000,00000101) OutputsWritten: 0xf0001 (0b1111,00000000,00000001) NumInstructions=15 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {1, 2.22e-16, 2.22e-16, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {2.22e-16, 7.55e-08, -1, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-2.22e-16, 1, 7.55e-08, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {2.96, -9.62, -0.198, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {1, 2.22e-16, 2.22e-16, -2.96} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {2.22e-16, 7.55e-08, -1, -0.198} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-2.22e-16, 1, 7.55e-08, 9.62} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL OUT[4], GENERIC[13] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[4], IN[3] 13: MOV OUT[3].xy, IN[2].xyxx 14: END # Fragment Program/Shader 21 0: TEX TEMP[0], INPUT[15].xyyy, texture[0], 2D; 1: SLT TEMP[1].x, TEMP[0].xxxx, CONST[6].xxxx; 2: IF TEMP[1].xxxx; # (if false, goto 4); 3: MOV TEMP[1].x, TEMP[0].xxxx; 4: ELSE; # (goto 6) 5: MOV TEMP[1].x, CONST[6].xxxx; 6: ENDIF; 7: SLT TEMP[2].x, TEMP[0].yyyy, CONST[6].xxxx; 8: IF TEMP[2].xxxx; # (if false, goto 10); 9: MOV TEMP[1].y, TEMP[0].yyyy; 10: ELSE; # (goto 12) 11: MOV TEMP[1].y, CONST[6].xxxx; 12: ENDIF; 13: SLT TEMP[2].x, TEMP[0].zzzz, CONST[6].xxxx; 14: IF TEMP[2].xxxx; # (if false, goto 16); 15: MOV TEMP[1].z, TEMP[0].zzzz; 16: ELSE; # (goto 18) 17: MOV TEMP[1].z, CONST[6].xxxx; 18: ENDIF; 19: SLT TEMP[2].x, TEMP[0].wwww, CONST[6].xxxx; 20: IF TEMP[2].xxxx; # (if false, goto 22); 21: MOV TEMP[2].x, TEMP[0].wwww; 22: ELSE; # (goto 24) 23: MOV TEMP[2].x, CONST[6].xxxx; 24: ENDIF; 25: MOV_SAT TEMP[0].x, TEMP[2].xxxx; 26: MUL TEMP[2].xyz, TEMP[1].xyzz, UNIFORM[0].xyzz; 27: MOV TEMP[1].xyz, TEMP[2].xyzx; 28: MOV TEMP[1].w, TEMP[0].xxxx; 29: SEQ TEMP[2].x, STATE[5].wwww, CONST[6].yyyy; 30: IF TEMP[2].xxxx; # (if false, goto 36); 31: DP3 TEMP[2].x, INPUT[14].xyzz, INPUT[14].xyzz; 32: RSQ TEMP[3].x, TEMP[2].xxxx; 33: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[2].xxxx; 34: CMP TEMP[3].x, TEMP[2].-x-x-x-x, TEMP[3].xxxx, CONST[6].yyyy; 35: MOV TEMP[2].x, TEMP[3].xxxx; 36: ELSE; # (goto 38) 37: MOV TEMP[2].x, INPUT[14].-z-z-z-z; 38: ENDIF; 39: ADD TEMP[3].x, TEMP[2].xxxx, CONST[6].zzzz; 40: MUL TEMP[2].x, TEMP[3].xxxx, CONST[6].wwww; 41: MOV_SAT TEMP[3].x, TEMP[2].xxxx; 42: MUL TEMP[2].x, TEMP[3].xxxx, TEMP[3].xxxx; 43: ADD TEMP[3].x, CONST[6].xxxx, TEMP[2].-x-x-x-x; 44: ADD TEMP[2].x, CONST[6].xxxx, TEMP[3].-x-x-x-x; 45: MOV_SAT TEMP[3].x, TEMP[2].xxxx; 46: ADD TEMP[2].x, CONST[6].xxxx, TEMP[3].-x-x-x-x; 47: MUL TEMP[4].xyz, TEMP[1], TEMP[2].xxxx; 48: MAD TEMP[1].xyz, CONST[7].xyzx, TEMP[3].xxxx, TEMP[4].xyzx; 49: MUL TEMP[1].w, TEMP[0].xxxx, UNIFORM[0].xxxw; 50: MOV OUTPUT[2], TEMP[1]; 51: END InputsRead: 0xc000 (0b11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=52 NumTemporaries=5 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1 (0b1) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=4 UNIFORM unfobcolor = {1, 1, 1, 1} param[1] sz=4 SAMPLER samp0 = {0, 0, 0, 0} param[2] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[3] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[4] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[5] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[6] sz=4 CONST (null) = {1, 0, -6, 0.0385} param[7] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL CONST[0] DCL CONST[2..5] DCL TEMP[0..4] IMM FLT32 { 1.0000, 0.0000, -6.0000, 0.0385} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: TEX TEMP[0], IN[1].xyyy, SAMP[0], 2D 1: SLT TEMP[1].x, TEMP[0].xxxx, IMM[0].xxxx 2: IF TEMP[1].xxxx :4 3: MOV TEMP[1].x, TEMP[0].xxxx 4: ELSE :6 5: MOV TEMP[1].x, IMM[0].xxxx 6: ENDIF 7: SLT TEMP[2].x, TEMP[0].yyyy, IMM[0].xxxx 8: IF TEMP[2].xxxx :10 9: MOV TEMP[1].y, TEMP[0].yyyy 10: ELSE :12 11: MOV TEMP[1].y, IMM[0].xxxx 12: ENDIF 13: SLT TEMP[2].x, TEMP[0].zzzz, IMM[0].xxxx 14: IF TEMP[2].xxxx :16 15: MOV TEMP[1].z, TEMP[0].zzzz 16: ELSE :18 17: MOV TEMP[1].z, IMM[0].xxxx 18: ENDIF 19: SLT TEMP[2].x, TEMP[0].wwww, IMM[0].xxxx 20: IF TEMP[2].xxxx :22 21: MOV TEMP[2].x, TEMP[0].wwww 22: ELSE :24 23: MOV TEMP[2].x, IMM[0].xxxx 24: ENDIF 25: MOV_SAT TEMP[0].x, TEMP[2].xxxx 26: MUL TEMP[2].xyz, TEMP[1].xyzz, CONST[0].xyzz 27: MOV TEMP[1].xyz, TEMP[2].xyzx 28: MOV TEMP[1].w, TEMP[0].xxxx 29: SEQ TEMP[2].x, CONST[5].wwww, IMM[0].yyyy 30: IF TEMP[2].xxxx :36 31: DP3 TEMP[2].x, IN[0].xyzz, IN[0].xyzz 32: RSQ TEMP[3].x, TEMP[2].xxxx 33: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[2].xxxx 34: CMP TEMP[3].x, -TEMP[2].xxxx, TEMP[3].xxxx, IMM[0].yyyy 35: MOV TEMP[2].x, TEMP[3].xxxx 36: ELSE :38 37: MOV TEMP[2].x, -IN[0].zzzz 38: ENDIF 39: ADD TEMP[3].x, TEMP[2].xxxx, IMM[0].zzzz 40: MUL TEMP[2].x, TEMP[3].xxxx, IMM[0].wwww 41: MOV_SAT TEMP[3].x, TEMP[2].xxxx 42: MUL TEMP[2].x, TEMP[3].xxxx, TEMP[3].xxxx 43: ADD TEMP[3].x, IMM[0].xxxx, -TEMP[2].xxxx 44: ADD TEMP[2].x, IMM[0].xxxx, -TEMP[3].xxxx 45: MOV_SAT TEMP[3].x, TEMP[2].xxxx 46: ADD TEMP[2].x, IMM[0].xxxx, -TEMP[3].xxxx 47: MUL TEMP[4].xyz, TEMP[1], TEMP[2].xxxx 48: MAD TEMP[1].xyz, IMM[1].xyzx, TEMP[3].xxxx, TEMP[4].xyzx 49: MUL TEMP[1].w, TEMP[0].xxxx, CONST[0].xxxw 50: MOV OUT[0], TEMP[1] 51: END # Vertex Program/Shader 21 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[16].xyz, TEMP[1].xyzx; 5: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 6: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 7: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 8: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 9: MOV OUTPUT[17].xy, INPUT[17].xyxx; 10: END InputsRead: 0x20001 (0b10,00000000,00000001) OutputsWritten: 0x30001 (0b11,00000000,00000001) NumInstructions=11 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {0.803, 0.717, 1.04, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {1.03, 0.348, -1.03, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-0.735, 1.27, -0.307, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {1.69, 0.843, -10.2, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL CONST[0..7] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[1].xyz, TEMP[1].xyzx 5: MUL TEMP[0], CONST[4], TEMP[1].xxxx 6: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 7: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 8: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 9: MOV OUT[2].xy, IN[1].xyxx 10: END # Fragment Program/Shader 27 0: TEX TEMP[0], INPUT[14].xyyy, texture[0], 2D; 1: MUL TEMP[1].x, TEMP[0].wwww, CONST[1].xxxx; 2: ADD TEMP[2].x, CONST[1].yyyy, TEMP[1].-x-x-x-x; 3: MAD TEMP[3].xyz, TEMP[1].xxxx, TEMP[0].xyzz, TEMP[2].xxxx; 4: MOV TEMP[0].w, CONST[1].yyyy; 5: MOV TEMP[0].xyz, TEMP[3].xyzx; 6: MOV OUTPUT[2], TEMP[0]; 7: END InputsRead: 0x4000 (0b1000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=8 NumTemporaries=4 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1 (0b1) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x0 param[0] sz=4 SAMPLER samp0 = {0, 0, 0, 0} param[1] sz=2 CONST (null) = {0.874, 1, 0, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL TEMP[0..3] IMM FLT32 { 0.8739, 1.0000, 0.0000, 0.0000} 0: TEX TEMP[0], IN[0].xyyy, SAMP[0], 2D 1: MUL TEMP[1].x, TEMP[0].wwww, IMM[0].xxxx 2: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[1].xxxx 3: MAD TEMP[3].xyz, TEMP[1].xxxx, TEMP[0].xyzz, TEMP[2].xxxx 4: MOV TEMP[0].w, IMM[0].yyyy 5: MOV TEMP[0].xyz, TEMP[3].xyzx 6: MOV OUT[0], TEMP[0] 7: END # Vertex Program/Shader 27 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 5: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 6: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 7: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 8: MOV OUTPUT[16].xy, INPUT[17].xyxx; 9: END InputsRead: 0x20001 (0b10,00000000,00000001) OutputsWritten: 0x10001 (0b1,00000000,00000001) NumInstructions=10 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {2, 4.44e-16, 4.44e-16, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {4.44e-16, 1.51e-07, -2, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-4.44e-16, 2, 1.51e-07, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {-1.25, -9.62, 0.192, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL CONST[0..7] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MUL TEMP[0], CONST[4], TEMP[1].xxxx 5: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 6: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 7: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 8: MOV OUT[1].xy, IN[1].xyxx 9: END # Fragment Program/Shader 42 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: MUL TEMP[2].x, INPUT[17].xxxx, CONST[25].yxxx; 5: MUL TEMP[2].y, INPUT[17].xyxx, CONST[25].xyxx; 6: MUL TEMP[2].z, INPUT[17].xxzx, CONST[25].xxyx; 7: TEX TEMP[0].w, INPUT[16].xyyy, texture[2], 2D; 8: MOV_SAT TEMP[3].x, TEMP[0].wwww; 9: TEX TEMP[0], INPUT[16].xyyy, texture[2], 2D; 10: MUL TEMP[4].xyz, TEMP[0].wwww, TEMP[0].xyzz; 11: MUL TEMP[0].xyz, TEMP[4].xyzz, TEMP[2].xyzz; 12: MOV TEMP[2].w, CONST[25].xxxx; 13: MOV TEMP[2].xyz, TEMP[0].xyzx; 14: MOV TEMP[4].w, CONST[25].xxxx; 15: MOV TEMP[4].xyz, TEMP[0].xyzx; 16: MOV TEMP[5].w, CONST[25].xxxx; 17: MOV TEMP[5].xyz, TEMP[0].xyzx; 18: DP3 TEMP[6].x, TEMP[1].xyzz, UNIFORM[17].xyzz; 19: MUL TEMP[7].x, TEMP[6].xxxx, CONST[25].zzzz; 20: MAX TEMP[6].x, TEMP[7].xxxx, CONST[25].wwww; 21: MUL TEMP[7], UNIFORM[16], TEMP[6].xxxx; 22: DP3 TEMP[6].x, TEMP[1].xyzz, UNIFORM[19].xyzz; 23: MAD TEMP[8].x, CONST[26].xxxx, TEMP[6].xxxx, CONST[26].xxxx; 24: MUL TEMP[6].x, TEMP[8].xxxx, CONST[25].zzzz; 25: MAX TEMP[8].x, TEMP[6].xxxx, CONST[25].wwww; 26: MUL TEMP[6], UNIFORM[18], TEMP[8].xxxx; 27: MUL TEMP[8], TEMP[2], CONST[26].yyyy; 28: MAD TEMP[2], TEMP[6], TEMP[4], TEMP[8]; 29: MAD TEMP[4], TEMP[7], TEMP[5], TEMP[2]; 30: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[15].-x-y-z-z; 31: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz; 32: RSQ TEMP[6].x, TEMP[5].xxxx; 33: MUL TEMP[5].xyz, TEMP[2].xyzz, TEMP[6].xxxx; 34: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[2].xyzz; 35: RSQ TEMP[2].x, TEMP[6].xxxx; 36: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[6].xxxx; 37: CMP TEMP[2].x, TEMP[6].-x-x-x-x, TEMP[2].xxxx, CONST[25].wwww; 38: ADD TEMP[6].x, CONST[26].zzzz, TEMP[2].xxxx; 39: RCP TEMP[2].x, TEMP[6].xxxx; 40: MUL TEMP[6].x, CONST[26].zzzz, TEMP[2].xxxx; 41: DP3 TEMP[2].x, TEMP[5].xyzz, UNIFORM[14].xyzz; 42: SLE TEMP[7].x, TEMP[2].xxxx, CONST[26].wwww; 43: IF TEMP[7].xxxx; # (if false, goto 45); 44: MOV TEMP[7].x, CONST[25].wwww; 45: ELSE; # (goto 56) 46: ADD TEMP[8].x, TEMP[2].xxxx, CONST[27].xxxx; 47: MUL TEMP[9].x, TEMP[8].xxxx, CONST[27].yyyy; 48: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 49: MUL TEMP[9].x, CONST[27].wwww, TEMP[8].xxxx; 50: ADD TEMP[10].x, CONST[27].zzzz, TEMP[9].-x-x-x-x; 51: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 52: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 53: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx; 54: MUL TEMP[2].x, TEMP[6].xxxx, TEMP[8].xxxx; 55: MOV TEMP[7].x, TEMP[2].xxxx; 56: ENDIF; 57: SLT TEMP[2].x, TEMP[7].xxxx, CONST[28].xxxx; 58: IF TEMP[2].xxxx; # (if false, goto 60); 59: MOV TEMP[2].x, CONST[25].wwww; 60: ELSE; # (goto 62) 61: MOV TEMP[2].x, TEMP[7].xxxx; 62: ENDIF; 63: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[5].xyzz; 64: MUL TEMP[5].x, TEMP[6].xxxx, TEMP[2].xxxx; 65: MUL TEMP[2].x, TEMP[5].xxxx, CONST[25].zzzz; 66: MAX TEMP[5].x, TEMP[2].xxxx, CONST[25].wwww; 67: SLE TEMP[2].x, TEMP[6].xxxx, CONST[25].wwww; 68: IF TEMP[2].xxxx; # (if false, goto 70); 69: MOV TEMP[2].x, CONST[25].wwww; 70: ELSE; # (goto 82) 71: MUL TEMP[6], UNIFORM[9], INPUT[15].xxxx; 72: MAD TEMP[7], UNIFORM[10], INPUT[15].yyyy, TEMP[6]; 73: MAD TEMP[6], UNIFORM[11], INPUT[15].zzzz, TEMP[7]; 74: ADD TEMP[7], TEMP[6], UNIFORM[12]; 75: MUL TEMP[6].x, CONST[28].yyyy, TEMP[7].wwww; 76: ADD TEMP[8].x, TEMP[7].zzzz, TEMP[6].-x-x-x-x; 77: MOV TEMP[6], TEMP[7].xyyy; 78: MOV TEMP[6].w, TEMP[7].wwww; 79: MOV TEMP[6].z, TEMP[8].xxxx; 80: TXP TEMP[7].x, TEMP[6], texture[1], 2D SHADOW; 81: MOV TEMP[2].x, TEMP[7].xxxx; 82: ENDIF; 83: MOV TEMP[6].w, CONST[25].wwww; 84: MUL TEMP[7].x, TEMP[5].xxxx, UNIFORM[8].xxxx; 85: ADD TEMP[5].x, CONST[25].xxxx, TEMP[2].-x-x-x-x; 86: MUL TEMP[2].x, TEMP[7].xxxx, TEMP[5].xxxx; 87: MUL TEMP[6].xyz, TEMP[0].xyzx, TEMP[2].xxxx; 88: ADD TEMP[2], TEMP[4], TEMP[6].-x-y-z-w; 89: ADD TEMP[4].xyz, INPUT[15].xyzz, UNIFORM[7].-x-y-z-z; 90: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz; 91: RSQ TEMP[6].x, TEMP[5].xxxx; 92: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[6].xxxx; 93: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz; 94: RSQ TEMP[4].x, TEMP[6].xxxx; 95: MUL TEMP[4].x, TEMP[4].xxxx, TEMP[6].xxxx; 96: CMP TEMP[4].x, TEMP[6].-x-x-x-x, TEMP[4].xxxx, CONST[25].wwww; 97: ADD TEMP[6].x, CONST[26].zzzz, TEMP[4].xxxx; 98: RCP TEMP[4].x, TEMP[6].xxxx; 99: MUL TEMP[6].x, CONST[26].zzzz, TEMP[4].xxxx; 100: DP3 TEMP[4].x, TEMP[5].xyzz, UNIFORM[6].xyzz; 101: SLE TEMP[7].x, TEMP[4].xxxx, CONST[26].wwww; 102: IF TEMP[7].xxxx; # (if false, goto 104); 103: MOV TEMP[7].x, CONST[25].wwww; 104: ELSE; # (goto 115) 105: ADD TEMP[8].x, TEMP[4].xxxx, CONST[27].xxxx; 106: MUL TEMP[9].x, TEMP[8].xxxx, CONST[27].yyyy; 107: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 108: MUL TEMP[9].x, CONST[27].wwww, TEMP[8].xxxx; 109: ADD TEMP[10].x, CONST[27].zzzz, TEMP[9].-x-x-x-x; 110: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 111: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 112: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[10].xxxx; 113: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[8].xxxx; 114: MOV TEMP[7].x, TEMP[4].xxxx; 115: ENDIF; 116: SLT TEMP[4].x, TEMP[7].xxxx, CONST[28].xxxx; 117: IF TEMP[4].xxxx; # (if false, goto 119); 118: MOV TEMP[4].x, CONST[25].wwww; 119: ELSE; # (goto 121) 120: MOV TEMP[4].x, TEMP[7].xxxx; 121: ENDIF; 122: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[5].xyzz; 123: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[4].xxxx; 124: MUL TEMP[4].x, TEMP[1].xxxx, CONST[25].zzzz; 125: MAX TEMP[1].x, TEMP[4].xxxx, CONST[25].wwww; 126: SLE TEMP[4].x, TEMP[6].xxxx, CONST[25].wwww; 127: IF TEMP[4].xxxx; # (if false, goto 129); 128: MOV TEMP[4].x, CONST[25].wwww; 129: ELSE; # (goto 141) 130: MUL TEMP[5], UNIFORM[1], INPUT[15].xxxx; 131: MAD TEMP[6], UNIFORM[2], INPUT[15].yyyy, TEMP[5]; 132: MAD TEMP[5], UNIFORM[3], INPUT[15].zzzz, TEMP[6]; 133: ADD TEMP[6], TEMP[5], UNIFORM[4]; 134: MUL TEMP[5].x, CONST[28].yyyy, TEMP[6].wwww; 135: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[5].-x-x-x-x; 136: MOV TEMP[5], TEMP[6].xyyy; 137: MOV TEMP[5].w, TEMP[6].wwww; 138: MOV TEMP[5].z, TEMP[7].xxxx; 139: TXP TEMP[6].x, TEMP[5], texture[0], 2D SHADOW; 140: MOV TEMP[4].x, TEMP[6].xxxx; 141: ENDIF; 142: MOV TEMP[5].w, CONST[25].wwww; 143: MUL TEMP[6].x, TEMP[1].xxxx, UNIFORM[0].xxxx; 144: ADD TEMP[1].x, CONST[25].xxxx, TEMP[4].-x-x-x-x; 145: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[1].xxxx; 146: MUL TEMP[1].xyz, TEMP[0].xyzz, TEMP[4].xxxx; 147: MOV TEMP[5].xyz, TEMP[1].xyzx; 148: ADD TEMP[0].xyz, TEMP[2], TEMP[1].-x-y-z-x; 149: MOV TEMP[1].xyz, TEMP[0].xyzx; 150: MOV TEMP[1].w, TEMP[3].xxxx; 151: SEQ TEMP[0].x, STATE[24].wwww, CONST[25].wwww; 152: IF TEMP[0].xxxx; # (if false, goto 158); 153: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 154: RSQ TEMP[2].x, TEMP[0].xxxx; 155: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx; 156: CMP TEMP[2].x, TEMP[0].-x-x-x-x, TEMP[2].xxxx, CONST[25].wwww; 157: MOV TEMP[0].x, TEMP[2].xxxx; 158: ELSE; # (goto 160) 159: MOV TEMP[0].x, INPUT[15].-z-z-z-z; 160: ENDIF; 161: ADD TEMP[2].x, TEMP[0].xxxx, CONST[28].zzzz; 162: MUL TEMP[0].x, TEMP[2].xxxx, CONST[28].wwww; 163: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 164: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx; 165: ADD TEMP[2].x, CONST[25].xxxx, TEMP[0].-x-x-x-x; 166: ADD TEMP[0].x, CONST[25].xxxx, TEMP[2].-x-x-x-x; 167: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 168: ADD TEMP[0].x, CONST[25].xxxx, TEMP[2].-x-x-x-x; 169: MUL TEMP[4], TEMP[1], TEMP[0].xxxx; 170: MAD TEMP[0], CONST[29], TEMP[2].xxxx, TEMP[4]; 171: MOV TEMP[0].w, TEMP[3].xxxx; 172: MOV OUTPUT[2], TEMP[0]; 173: END InputsRead: 0x3c000 (0b11,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=174 NumTemporaries=11 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x7 (0b111) Samplers=[ 2 1 0 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=1 UNIFORM unf151 = {1, 0, 0, 0} param[1] sz=16 UNIFORM unf145 = {5.7, -0.0767, 0.249, 0.191} param[2] sz=12 UNIFORM unf145 = {0.565, -1.44, -1.26, -0.969} param[3] sz=8 UNIFORM unf145 = {-0.271, -5.55, 0.208, 0.159} param[4] sz=4 UNIFORM unf145 = {17.1, -8.62, -8.83, 0.23} param[5] sz=4 SAMPLER samp2 = {0, 0, 0, 0} param[6] sz=3 UNIFORM unf126 = {0.191, -0.969, 0.159, 0} param[7] sz=3 UNIFORM unf119 = {-3.01, -0.58, -1.36, 0} param[8] sz=1 UNIFORM unf112 = {1, 0, 0, 0} param[9] sz=16 UNIFORM unf106 = {5.7, -0.0767, 0.249, 0.191} param[10] sz=12 UNIFORM unf106 = {0.565, -1.44, -1.26, -0.969} param[11] sz=8 UNIFORM unf106 = {-0.271, -5.55, 0.208, 0.159} param[12] sz=4 UNIFORM unf106 = {2.33, 3.5, 2.15, 8.65} param[13] sz=4 SAMPLER samp1 = {1, 0, 0, 0} param[14] sz=3 UNIFORM unf87 = {0.191, -0.969, 0.159, 0} param[15] sz=3 UNIFORM unf80 = {-1.32, 8.42, -1.54, 0} param[16] sz=4 UNIFORM unf73 = {2.2, 1.97, 1.79, 2.2} param[17] sz=3 UNIFORM unf61 = {0.233, -0.601, -0.764, 0} param[18] sz=4 UNIFORM unf55 = {0.551, 0.557, 0.68, 0.68} param[19] sz=3 UNIFORM unf41 = {-0.243, -0.303, 0.922, 0} param[20] sz=4 SAMPLER samp0 = {2, 0, 0, 0} param[21] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[22] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[23] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[24] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[25] sz=4 CONST (null) = {1, 0.00392, 0.95, 0} param[26] sz=4 CONST (null) = {0.5, 0.2, 20, 0.996} param[27] sz=4 CONST (null) = {-0.996, 1.75e+03, 3, 2} param[28] sz=4 CONST (null) = {0.001, 0.005, -6, 0.0385} param[29] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL IN[3], GENERIC[13], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL CONST[0..4] DCL CONST[6..12] DCL CONST[14..19] DCL CONST[21..24] DCL TEMP[0..10] IMM FLT32 { 1.0000, 0.0039, 0.9500, 0.0000} IMM FLT32 { 0.5000, 0.2000, 20.0000, 0.9962} IMM FLT32 { -0.9962, 1751.3136, 3.0000, 2.0000} IMM FLT32 { 0.0010, 0.0050, -6.0000, 0.0385} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: MUL TEMP[2].x, IN[3].xxxx, IMM[0].yxxx 5: MUL TEMP[2].y, IN[3].xyxx, IMM[0].xyxx 6: MUL TEMP[2].z, IN[3].xxzx, IMM[0].xxyx 7: TEX TEMP[0].w, IN[2].xyyy, SAMP[2], 2D 8: MOV_SAT TEMP[3].x, TEMP[0].wwww 9: TEX TEMP[0], IN[2].xyyy, SAMP[2], 2D 10: MUL TEMP[4].xyz, TEMP[0].wwww, TEMP[0].xyzz 11: MUL TEMP[0].xyz, TEMP[4].xyzz, TEMP[2].xyzz 12: MOV TEMP[2].w, IMM[0].xxxx 13: MOV TEMP[2].xyz, TEMP[0].xyzx 14: MOV TEMP[4].w, IMM[0].xxxx 15: MOV TEMP[4].xyz, TEMP[0].xyzx 16: MOV TEMP[5].w, IMM[0].xxxx 17: MOV TEMP[5].xyz, TEMP[0].xyzx 18: DP3 TEMP[6].x, TEMP[1].xyzz, CONST[17].xyzz 19: MUL TEMP[7].x, TEMP[6].xxxx, IMM[0].zzzz 20: MAX TEMP[6].x, TEMP[7].xxxx, IMM[0].wwww 21: MUL TEMP[7], CONST[16], TEMP[6].xxxx 22: DP3 TEMP[6].x, TEMP[1].xyzz, CONST[19].xyzz 23: MAD TEMP[8].x, IMM[1].xxxx, TEMP[6].xxxx, IMM[1].xxxx 24: MUL TEMP[6].x, TEMP[8].xxxx, IMM[0].zzzz 25: MAX TEMP[8].x, TEMP[6].xxxx, IMM[0].wwww 26: MUL TEMP[6], CONST[18], TEMP[8].xxxx 27: MUL TEMP[8], TEMP[2], IMM[1].yyyy 28: MAD TEMP[2], TEMP[6], TEMP[4], TEMP[8] 29: MAD TEMP[4], TEMP[7], TEMP[5], TEMP[2] 30: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[15].xyzz 31: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz 32: RSQ TEMP[6].x, TEMP[5].xxxx 33: MUL TEMP[5].xyz, TEMP[2].xyzz, TEMP[6].xxxx 34: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[2].xyzz 35: RSQ TEMP[2].x, TEMP[6].xxxx 36: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[6].xxxx 37: CMP TEMP[2].x, -TEMP[6].xxxx, TEMP[2].xxxx, IMM[0].wwww 38: ADD TEMP[6].x, IMM[1].zzzz, TEMP[2].xxxx 39: RCP TEMP[2].x, TEMP[6].xxxx 40: MUL TEMP[6].x, IMM[1].zzzz, TEMP[2].xxxx 41: DP3 TEMP[2].x, TEMP[5].xyzz, CONST[14].xyzz 42: SLE TEMP[7].x, TEMP[2].xxxx, IMM[1].wwww 43: IF TEMP[7].xxxx :45 44: MOV TEMP[7].x, IMM[0].wwww 45: ELSE :56 46: ADD TEMP[8].x, TEMP[2].xxxx, IMM[2].xxxx 47: MUL TEMP[9].x, TEMP[8].xxxx, IMM[2].yyyy 48: MOV_SAT TEMP[8].x, TEMP[9].xxxx 49: MUL TEMP[9].x, IMM[2].wwww, TEMP[8].xxxx 50: ADD TEMP[10].x, IMM[2].zzzz, -TEMP[9].xxxx 51: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 52: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 53: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx 54: MUL TEMP[2].x, TEMP[6].xxxx, TEMP[8].xxxx 55: MOV TEMP[7].x, TEMP[2].xxxx 56: ENDIF 57: SLT TEMP[2].x, TEMP[7].xxxx, IMM[3].xxxx 58: IF TEMP[2].xxxx :60 59: MOV TEMP[2].x, IMM[0].wwww 60: ELSE :62 61: MOV TEMP[2].x, TEMP[7].xxxx 62: ENDIF 63: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[5].xyzz 64: MUL TEMP[5].x, TEMP[6].xxxx, TEMP[2].xxxx 65: MUL TEMP[2].x, TEMP[5].xxxx, IMM[0].zzzz 66: MAX TEMP[5].x, TEMP[2].xxxx, IMM[0].wwww 67: SLE TEMP[2].x, TEMP[6].xxxx, IMM[0].wwww 68: IF TEMP[2].xxxx :70 69: MOV TEMP[2].x, IMM[0].wwww 70: ELSE :82 71: MUL TEMP[6], CONST[9], IN[1].xxxx 72: MAD TEMP[7], CONST[10], IN[1].yyyy, TEMP[6] 73: MAD TEMP[6], CONST[11], IN[1].zzzz, TEMP[7] 74: ADD TEMP[7], TEMP[6], CONST[12] 75: MUL TEMP[6].x, IMM[3].yyyy, TEMP[7].wwww 76: ADD TEMP[8].x, TEMP[7].zzzz, -TEMP[6].xxxx 77: MOV TEMP[6], TEMP[7].xyyy 78: MOV TEMP[6].w, TEMP[7].wwww 79: MOV TEMP[6].z, TEMP[8].xxxx 80: TXP TEMP[7].x, TEMP[6], SAMP[1], SHADOW2D 81: MOV TEMP[2].x, TEMP[7].xxxx 82: ENDIF 83: MOV TEMP[6].w, IMM[0].wwww 84: MUL TEMP[7].x, TEMP[5].xxxx, CONST[8].xxxx 85: ADD TEMP[5].x, IMM[0].xxxx, -TEMP[2].xxxx 86: MUL TEMP[2].x, TEMP[7].xxxx, TEMP[5].xxxx 87: MUL TEMP[6].xyz, TEMP[0].xyzx, TEMP[2].xxxx 88: ADD TEMP[2], TEMP[4], -TEMP[6] 89: ADD TEMP[4].xyz, IN[1].xyzz, -CONST[7].xyzz 90: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz 91: RSQ TEMP[6].x, TEMP[5].xxxx 92: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[6].xxxx 93: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz 94: RSQ TEMP[4].x, TEMP[6].xxxx 95: MUL TEMP[4].x, TEMP[4].xxxx, TEMP[6].xxxx 96: CMP TEMP[4].x, -TEMP[6].xxxx, TEMP[4].xxxx, IMM[0].wwww 97: ADD TEMP[6].x, IMM[1].zzzz, TEMP[4].xxxx 98: RCP TEMP[4].x, TEMP[6].xxxx 99: MUL TEMP[6].x, IMM[1].zzzz, TEMP[4].xxxx 100: DP3 TEMP[4].x, TEMP[5].xyzz, CONST[6].xyzz 101: SLE TEMP[7].x, TEMP[4].xxxx, IMM[1].wwww 102: IF TEMP[7].xxxx :104 103: MOV TEMP[7].x, IMM[0].wwww 104: ELSE :115 105: ADD TEMP[8].x, TEMP[4].xxxx, IMM[2].xxxx 106: MUL TEMP[9].x, TEMP[8].xxxx, IMM[2].yyyy 107: MOV_SAT TEMP[8].x, TEMP[9].xxxx 108: MUL TEMP[9].x, IMM[2].wwww, TEMP[8].xxxx 109: ADD TEMP[10].x, IMM[2].zzzz, -TEMP[9].xxxx 110: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 111: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 112: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[10].xxxx 113: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[8].xxxx 114: MOV TEMP[7].x, TEMP[4].xxxx 115: ENDIF 116: SLT TEMP[4].x, TEMP[7].xxxx, IMM[3].xxxx 117: IF TEMP[4].xxxx :119 118: MOV TEMP[4].x, IMM[0].wwww 119: ELSE :121 120: MOV TEMP[4].x, TEMP[7].xxxx 121: ENDIF 122: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[5].xyzz 123: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[4].xxxx 124: MUL TEMP[4].x, TEMP[1].xxxx, IMM[0].zzzz 125: MAX TEMP[1].x, TEMP[4].xxxx, IMM[0].wwww 126: SLE TEMP[4].x, TEMP[6].xxxx, IMM[0].wwww 127: IF TEMP[4].xxxx :129 128: MOV TEMP[4].x, IMM[0].wwww 129: ELSE :141 130: MUL TEMP[5], CONST[1], IN[1].xxxx 131: MAD TEMP[6], CONST[2], IN[1].yyyy, TEMP[5] 132: MAD TEMP[5], CONST[3], IN[1].zzzz, TEMP[6] 133: ADD TEMP[6], TEMP[5], CONST[4] 134: MUL TEMP[5].x, IMM[3].yyyy, TEMP[6].wwww 135: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[5].xxxx 136: MOV TEMP[5], TEMP[6].xyyy 137: MOV TEMP[5].w, TEMP[6].wwww 138: MOV TEMP[5].z, TEMP[7].xxxx 139: TXP TEMP[6].x, TEMP[5], SAMP[0], SHADOW2D 140: MOV TEMP[4].x, TEMP[6].xxxx 141: ENDIF 142: MOV TEMP[5].w, IMM[0].wwww 143: MUL TEMP[6].x, TEMP[1].xxxx, CONST[0].xxxx 144: ADD TEMP[1].x, IMM[0].xxxx, -TEMP[4].xxxx 145: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[1].xxxx 146: MUL TEMP[1].xyz, TEMP[0].xyzz, TEMP[4].xxxx 147: MOV TEMP[5].xyz, TEMP[1].xyzx 148: ADD TEMP[0].xyz, TEMP[2], -TEMP[1].xyzx 149: MOV TEMP[1].xyz, TEMP[0].xyzx 150: MOV TEMP[1].w, TEMP[3].xxxx 151: SEQ TEMP[0].x, CONST[24].wwww, IMM[0].wwww 152: IF TEMP[0].xxxx :158 153: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 154: RSQ TEMP[2].x, TEMP[0].xxxx 155: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx 156: CMP TEMP[2].x, -TEMP[0].xxxx, TEMP[2].xxxx, IMM[0].wwww 157: MOV TEMP[0].x, TEMP[2].xxxx 158: ELSE :160 159: MOV TEMP[0].x, -IN[1].zzzz 160: ENDIF 161: ADD TEMP[2].x, TEMP[0].xxxx, IMM[3].zzzz 162: MUL TEMP[0].x, TEMP[2].xxxx, IMM[3].wwww 163: MOV_SAT TEMP[2].x, TEMP[0].xxxx 164: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx 165: ADD TEMP[2].x, IMM[0].xxxx, -TEMP[0].xxxx 166: ADD TEMP[0].x, IMM[0].xxxx, -TEMP[2].xxxx 167: MOV_SAT TEMP[2].x, TEMP[0].xxxx 168: ADD TEMP[0].x, IMM[0].xxxx, -TEMP[2].xxxx 169: MUL TEMP[4], TEMP[1], TEMP[0].xxxx 170: MAD TEMP[0], IMM[4], TEMP[2].xxxx, TEMP[4] 171: MOV TEMP[0].w, TEMP[3].xxxx 172: MOV OUT[0], TEMP[0] 173: END # Vertex Program/Shader 42 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[19], INPUT[18]; 13: MOV OUTPUT[18].xy, INPUT[17].xyxx; 14: END InputsRead: 0x60005 (0b110,00000000,00000101) OutputsWritten: 0xf0001 (0b1111,00000000,00000001) NumInstructions=15 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {0.395, 0.131, 0.909, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {0.907, 0.0984, -0.408, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-0.143, 0.987, -0.0798, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {10.5, 5.77, -4.76, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {0.395, 0.131, 0.909, -0.56} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {0.907, 0.0984, -0.408, -12} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-0.143, 0.987, -0.0798, -4.57} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL OUT[4], GENERIC[13] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[4], IN[3] 13: MOV OUT[3].xy, IN[2].xyxx 14: END # Fragment Program/Shader 45 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[27].wwww, CONST[28].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[29].xyzx; 12: ENDIF; 13: MUL TEMP[3].x, INPUT[18].xxxx, CONST[28].zxxx; 14: MUL TEMP[3].y, INPUT[18].xyxx, CONST[28].xzxx; 15: MUL TEMP[3].z, INPUT[18].xxzx, CONST[28].xxzx; 16: TEX TEMP[0].xyz, INPUT[17].xyyy, texture[5], 2D; 17: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[3].xyzz; 18: TEX TEMP[0].xyz, INPUT[17].xyyy, texture[4], 2D; 19: MOV TEMP[3].x, TEMP[0].xxxx; 20: MOV TEMP[3].y, TEMP[0].-y-y-y-y; 21: MOV TEMP[3].z, TEMP[0].zzzz; 22: ADD TEMP[0].xyz, TEMP[3].xyzz, CONST[30]; 23: MUL TEMP[3].xyz, CONST[28].wwww, TEMP[0].xyzz; 24: DP3 TEMP[0].x, INPUT[16].xyzz, INPUT[16].xyzz; 25: RSQ TEMP[5].x, TEMP[0].xxxx; 26: MUL TEMP[0].xyz, INPUT[16].xyzz, TEMP[5].xxxx; 27: MUL TEMP[5].xyz, TEMP[1].zxyy, TEMP[0].yzxx; 28: MAD TEMP[6].xyz, TEMP[1].yzxx, TEMP[0].zxyy, TEMP[5].-x-y-z-z; 29: MUL TEMP[5].xyz, TEMP[3].xxxx, TEMP[0].xyzz; 30: MAD TEMP[0].xyz, TEMP[3].yyyy, TEMP[6].xyzz, TEMP[5].xyzz; 31: MAD TEMP[5].xyz, TEMP[3].zzzz, TEMP[1].xyzz, TEMP[0].xyzz; 32: DP3 TEMP[0].x, TEMP[5].xyzz, TEMP[5].xyzz; 33: RSQ TEMP[1].x, TEMP[0].xxxx; 34: MUL TEMP[0].xyz, TEMP[5].xyzz, TEMP[1].xxxx; 35: DP3 TEMP[1].x, TEMP[0].xyzz, UNIFORM[21].xyzz; 36: MAD TEMP[3].x, CONST[30].yyyy, TEMP[1].xxxx, CONST[30].yyyy; 37: MAX TEMP[1].x, TEMP[3].xxxx, CONST[28].xxxx; 38: MUL TEMP[3], UNIFORM[20], TEMP[1].xxxx; 39: DP3 TEMP[1].x, TEMP[2].xyzz, TEMP[0].xyzz; 40: TEX TEMP[5], TEMP[1].xxxx, texture[3], 1D; 41: MOV TEMP[1].w, CONST[28].yyyy; 42: MOV TEMP[1].xyz, TEMP[4].xyzx; 43: MUL TEMP[6].x, TEMP[5].wwww, CONST[29].wwww; 44: MOV_SAT TEMP[7].x, TEMP[6].xxxx; 45: ADD TEMP[6].x, CONST[28].yyyy, TEMP[7].-x-x-x-x; 46: MOV TEMP[8], TEMP[1]; 47: SLT TEMP[1].x, TEMP[4].xxxx, CONST[30].yyyy; 48: IF TEMP[1].xxxx; # (if false, goto 53); 49: MUL TEMP[1].x, CONST[28].wwww, TEMP[7].xxxx; 50: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].xxxx, TEMP[6].xxxx; 51: MUL TEMP[1].x, TEMP[4].xxxx, TEMP[9].xxxx; 52: MOV TEMP[8].x, TEMP[1].xxxx; 53: ELSE; # (goto 61) 54: MUL TEMP[1].x, CONST[28].wwww, TEMP[7].xxxx; 55: ADD TEMP[9].x, CONST[28].yyyy, TEMP[5].-x-x-x-x; 56: MAD TEMP[10].x, TEMP[1].xxxx, TEMP[9].xxxx, TEMP[6].xxxx; 57: ADD TEMP[1].x, CONST[28].yyyy, TEMP[8].-x-x-x-x; 58: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[1].xxxx; 59: ADD TEMP[1].x, CONST[28].yyyy, TEMP[9].-x-x-x-x; 60: MOV TEMP[8].x, TEMP[1].xxxx; 61: ENDIF; 62: SLT TEMP[1].x, TEMP[4].yyyy, CONST[30].yyyy; 63: IF TEMP[1].xxxx; # (if false, goto 68); 64: MUL TEMP[1].x, CONST[28].wwww, TEMP[7].xxxx; 65: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].yyyy, TEMP[6].xxxx; 66: MUL TEMP[1].x, TEMP[4].yyyy, TEMP[9].xxxx; 67: MOV TEMP[8].y, TEMP[1].xxxx; 68: ELSE; # (goto 76) 69: MUL TEMP[1].x, CONST[28].wwww, TEMP[7].xxxx; 70: ADD TEMP[9].x, CONST[28].yyyy, TEMP[5].-y-y-y-y; 71: MAD TEMP[10].x, TEMP[1].xxxx, TEMP[9].xxxx, TEMP[6].xxxx; 72: ADD TEMP[1].x, CONST[28].yyyy, TEMP[8].-y-y-y-y; 73: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[1].xxxx; 74: ADD TEMP[1].x, CONST[28].yyyy, TEMP[9].-x-x-x-x; 75: MOV TEMP[8].y, TEMP[1].xxxx; 76: ENDIF; 77: SLT TEMP[1].x, TEMP[4].zzzz, CONST[30].yyyy; 78: IF TEMP[1].xxxx; # (if false, goto 83); 79: MUL TEMP[1].x, CONST[28].wwww, TEMP[7].xxxx; 80: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].zzzz, TEMP[6].xxxx; 81: MUL TEMP[1].x, TEMP[4].zzzz, TEMP[9].xxxx; 82: MOV TEMP[8].z, TEMP[1].xxxx; 83: ELSE; # (goto 91) 84: MUL TEMP[1].x, CONST[28].wwww, TEMP[7].xxxx; 85: ADD TEMP[7].x, CONST[28].yyyy, TEMP[5].-z-z-z-z; 86: MAD TEMP[5].x, TEMP[1].xxxx, TEMP[7].xxxx, TEMP[6].xxxx; 87: ADD TEMP[1].x, CONST[28].yyyy, TEMP[8].-z-z-z-z; 88: MUL TEMP[6].x, TEMP[5].xxxx, TEMP[1].xxxx; 89: ADD TEMP[1].x, CONST[28].yyyy, TEMP[6].-x-x-x-x; 90: MOV TEMP[8].z, TEMP[1].xxxx; 91: ENDIF; 92: MAD TEMP[1], TEMP[3], TEMP[8], CONST[28].xxxy; 93: DP3 TEMP[3].x, TEMP[0].xyzz, UNIFORM[18].xyzz; 94: MAX TEMP[5].x, TEMP[3].xxxx, CONST[28].xxxx; 95: MUL TEMP[3], UNIFORM[17], TEMP[5].xxxx; 96: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[0].xyzz; 97: TEX TEMP[2], TEMP[5].xxxx, texture[2], 1D; 98: MOV TEMP[5].w, CONST[28].yyyy; 99: MOV TEMP[5].xyz, TEMP[4].xyzx; 100: MUL TEMP[6].x, TEMP[2].wwww, CONST[29].wwww; 101: MOV_SAT TEMP[7].x, TEMP[6].xxxx; 102: ADD TEMP[6].x, CONST[28].yyyy, TEMP[7].-x-x-x-x; 103: MOV TEMP[8], TEMP[5]; 104: SLT TEMP[5].x, TEMP[4].xxxx, CONST[30].yyyy; 105: IF TEMP[5].xxxx; # (if false, goto 110); 106: MUL TEMP[5].x, CONST[28].wwww, TEMP[7].xxxx; 107: MAD TEMP[9].x, TEMP[5].xxxx, TEMP[2].xxxx, TEMP[6].xxxx; 108: MUL TEMP[5].x, TEMP[4].xxxx, TEMP[9].xxxx; 109: MOV TEMP[8].x, TEMP[5].xxxx; 110: ELSE; # (goto 118) 111: MUL TEMP[5].x, CONST[28].wwww, TEMP[7].xxxx; 112: ADD TEMP[9].x, CONST[28].yyyy, TEMP[2].-x-x-x-x; 113: MAD TEMP[10].x, TEMP[5].xxxx, TEMP[9].xxxx, TEMP[6].xxxx; 114: ADD TEMP[5].x, CONST[28].yyyy, TEMP[8].-x-x-x-x; 115: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[5].xxxx; 116: ADD TEMP[5].x, CONST[28].yyyy, TEMP[9].-x-x-x-x; 117: MOV TEMP[8].x, TEMP[5].xxxx; 118: ENDIF; 119: SLT TEMP[5].x, TEMP[4].yyyy, CONST[30].yyyy; 120: IF TEMP[5].xxxx; # (if false, goto 125); 121: MUL TEMP[5].x, CONST[28].wwww, TEMP[7].xxxx; 122: MAD TEMP[9].x, TEMP[5].xxxx, TEMP[2].yyyy, TEMP[6].xxxx; 123: MUL TEMP[5].x, TEMP[4].yyyy, TEMP[9].xxxx; 124: MOV TEMP[8].y, TEMP[5].xxxx; 125: ELSE; # (goto 133) 126: MUL TEMP[5].x, CONST[28].wwww, TEMP[7].xxxx; 127: ADD TEMP[9].x, CONST[28].yyyy, TEMP[2].-y-y-y-y; 128: MAD TEMP[10].x, TEMP[5].xxxx, TEMP[9].xxxx, TEMP[6].xxxx; 129: ADD TEMP[5].x, CONST[28].yyyy, TEMP[8].-y-y-y-y; 130: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[5].xxxx; 131: ADD TEMP[5].x, CONST[28].yyyy, TEMP[9].-x-x-x-x; 132: MOV TEMP[8].y, TEMP[5].xxxx; 133: ENDIF; 134: SLT TEMP[5].x, TEMP[4].zzzz, CONST[30].yyyy; 135: IF TEMP[5].xxxx; # (if false, goto 140); 136: MUL TEMP[5].x, CONST[28].wwww, TEMP[7].xxxx; 137: MAD TEMP[9].x, TEMP[5].xxxx, TEMP[2].zzzz, TEMP[6].xxxx; 138: MUL TEMP[5].x, TEMP[4].zzzz, TEMP[9].xxxx; 139: MOV TEMP[8].z, TEMP[5].xxxx; 140: ELSE; # (goto 148) 141: MUL TEMP[5].x, CONST[28].wwww, TEMP[7].xxxx; 142: ADD TEMP[7].x, CONST[28].yyyy, TEMP[2].-z-z-z-z; 143: MAD TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx, TEMP[6].xxxx; 144: ADD TEMP[5].x, CONST[28].yyyy, TEMP[8].-z-z-z-z; 145: MUL TEMP[6].x, TEMP[2].xxxx, TEMP[5].xxxx; 146: ADD TEMP[2].x, CONST[28].yyyy, TEMP[6].-x-x-x-x; 147: MOV TEMP[8].z, TEMP[2].xxxx; 148: ENDIF; 149: MAD TEMP[2], TEMP[3], TEMP[8], TEMP[1]; 150: ADD TEMP[1].xyz, INPUT[15].xyzz, UNIFORM[15].-x-y-z-z; 151: DP3 TEMP[3].x, TEMP[1].xyzz, TEMP[1].xyzz; 152: RSQ TEMP[5].x, TEMP[3].xxxx; 153: MUL TEMP[3].xyz, TEMP[1].xyzz, TEMP[5].xxxx; 154: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[1].xyzz; 155: RSQ TEMP[1].x, TEMP[5].xxxx; 156: MUL TEMP[1].x, TEMP[1].xxxx, TEMP[5].xxxx; 157: CMP TEMP[1].x, TEMP[5].-x-x-x-x, TEMP[1].xxxx, CONST[28].xxxx; 158: ADD TEMP[5].x, CONST[30].wwww, TEMP[1].xxxx; 159: RCP TEMP[1].x, TEMP[5].xxxx; 160: MUL TEMP[5].x, CONST[30].wwww, TEMP[1].xxxx; 161: DP3 TEMP[1].x, TEMP[3].xyzz, UNIFORM[14].xyzz; 162: SLE TEMP[6].x, TEMP[1].xxxx, CONST[31].xxxx; 163: IF TEMP[6].xxxx; # (if false, goto 165); 164: MOV TEMP[6].x, CONST[28].xxxx; 165: ELSE; # (goto 176) 166: ADD TEMP[7].x, TEMP[1].xxxx, CONST[31].yyyy; 167: MUL TEMP[8].x, TEMP[7].xxxx, CONST[31].zzzz; 168: MOV_SAT TEMP[7].x, TEMP[8].xxxx; 169: MUL TEMP[8].x, CONST[28].wwww, TEMP[7].xxxx; 170: ADD TEMP[9].x, CONST[31].wwww, TEMP[8].-x-x-x-x; 171: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx; 172: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx; 173: MUL TEMP[7].x, TEMP[1].xxxx, TEMP[9].xxxx; 174: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[7].xxxx; 175: MOV TEMP[6].x, TEMP[1].xxxx; 176: ENDIF; 177: SLT TEMP[1].x, TEMP[6].xxxx, CONST[32].xxxx; 178: IF TEMP[1].xxxx; # (if false, goto 180); 179: MOV TEMP[1].x, CONST[28].xxxx; 180: ELSE; # (goto 182) 181: MOV TEMP[1].x, TEMP[6].xxxx; 182: ENDIF; 183: DP3 TEMP[5].x, TEMP[0].xyzz, TEMP[3].xyzz; 184: MUL TEMP[3].x, TEMP[5].xxxx, TEMP[1].xxxx; 185: MAX TEMP[1].x, TEMP[3].xxxx, CONST[28].xxxx; 186: SLE TEMP[3].x, TEMP[5].xxxx, CONST[28].xxxx; 187: IF TEMP[3].xxxx; # (if false, goto 189); 188: MOV TEMP[3].x, CONST[28].xxxx; 189: ELSE; # (goto 201) 190: MUL TEMP[5], UNIFORM[9], INPUT[15].xxxx; 191: MAD TEMP[6], UNIFORM[10], INPUT[15].yyyy, TEMP[5]; 192: MAD TEMP[5], UNIFORM[11], INPUT[15].zzzz, TEMP[6]; 193: ADD TEMP[6], TEMP[5], UNIFORM[12]; 194: MUL TEMP[5].x, CONST[32].yyyy, TEMP[6].wwww; 195: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[5].-x-x-x-x; 196: MOV TEMP[5], TEMP[6].xyyy; 197: MOV TEMP[5].w, TEMP[6].wwww; 198: MOV TEMP[5].z, TEMP[7].xxxx; 199: TXP TEMP[6].x, TEMP[5], texture[1], 2D SHADOW; 200: MOV TEMP[3].x, TEMP[6].xxxx; 201: ENDIF; 202: MOV TEMP[5].w, CONST[28].xxxx; 203: MUL TEMP[6].x, TEMP[1].xxxx, UNIFORM[8].xxxx; 204: ADD TEMP[1].x, CONST[28].yyyy, TEMP[3].-x-x-x-x; 205: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[1].xxxx; 206: MUL TEMP[5].xyz, TEMP[4].xyzx, TEMP[3].xxxx; 207: ADD TEMP[1], TEMP[2], TEMP[5].-x-y-z-w; 208: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[7].-x-y-z-z; 209: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[2].xyzz; 210: RSQ TEMP[5].x, TEMP[3].xxxx; 211: MUL TEMP[3].xyz, TEMP[2].xyzz, TEMP[5].xxxx; 212: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz; 213: RSQ TEMP[2].x, TEMP[5].xxxx; 214: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx; 215: CMP TEMP[2].x, TEMP[5].-x-x-x-x, TEMP[2].xxxx, CONST[28].xxxx; 216: ADD TEMP[5].x, CONST[30].wwww, TEMP[2].xxxx; 217: RCP TEMP[2].x, TEMP[5].xxxx; 218: MUL TEMP[5].x, CONST[30].wwww, TEMP[2].xxxx; 219: DP3 TEMP[2].x, TEMP[3].xyzz, UNIFORM[6].xyzz; 220: SLE TEMP[6].x, TEMP[2].xxxx, CONST[31].xxxx; 221: IF TEMP[6].xxxx; # (if false, goto 223); 222: MOV TEMP[6].x, CONST[28].xxxx; 223: ELSE; # (goto 234) 224: ADD TEMP[7].x, TEMP[2].xxxx, CONST[31].yyyy; 225: MUL TEMP[8].x, TEMP[7].xxxx, CONST[31].zzzz; 226: MOV_SAT TEMP[7].x, TEMP[8].xxxx; 227: MUL TEMP[8].x, CONST[28].wwww, TEMP[7].xxxx; 228: ADD TEMP[9].x, CONST[31].wwww, TEMP[8].-x-x-x-x; 229: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx; 230: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx; 231: MUL TEMP[7].x, TEMP[2].xxxx, TEMP[9].xxxx; 232: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx; 233: MOV TEMP[6].x, TEMP[2].xxxx; 234: ENDIF; 235: SLT TEMP[2].x, TEMP[6].xxxx, CONST[32].xxxx; 236: IF TEMP[2].xxxx; # (if false, goto 238); 237: MOV TEMP[2].x, CONST[28].xxxx; 238: ELSE; # (goto 240) 239: MOV TEMP[2].x, TEMP[6].xxxx; 240: ENDIF; 241: DP3 TEMP[5].x, TEMP[0].xyzz, TEMP[3].xyzz; 242: MUL TEMP[0].x, TEMP[5].xxxx, TEMP[2].xxxx; 243: MAX TEMP[2].x, TEMP[0].xxxx, CONST[28].xxxx; 244: SLE TEMP[0].x, TEMP[5].xxxx, CONST[28].xxxx; 245: IF TEMP[0].xxxx; # (if false, goto 247); 246: MOV TEMP[0].x, CONST[28].xxxx; 247: ELSE; # (goto 259) 248: MUL TEMP[3], UNIFORM[1], INPUT[15].xxxx; 249: MAD TEMP[5], UNIFORM[2], INPUT[15].yyyy, TEMP[3]; 250: MAD TEMP[3], UNIFORM[3], INPUT[15].zzzz, TEMP[5]; 251: ADD TEMP[5], TEMP[3], UNIFORM[4]; 252: MUL TEMP[3].x, CONST[32].yyyy, TEMP[5].wwww; 253: ADD TEMP[6].x, TEMP[5].zzzz, TEMP[3].-x-x-x-x; 254: MOV TEMP[3], TEMP[5].xyyy; 255: MOV TEMP[3].w, TEMP[5].wwww; 256: MOV TEMP[3].z, TEMP[6].xxxx; 257: TXP TEMP[5].x, TEMP[3], texture[0], 2D SHADOW; 258: MOV TEMP[0].x, TEMP[5].xxxx; 259: ENDIF; 260: MOV TEMP[3].w, CONST[28].xxxx; 261: MUL TEMP[5].x, TEMP[2].xxxx, UNIFORM[0].xxxx; 262: ADD TEMP[2].x, CONST[28].yyyy, TEMP[0].-x-x-x-x; 263: MUL TEMP[0].x, TEMP[5].xxxx, TEMP[2].xxxx; 264: MUL TEMP[2].xyz, TEMP[4].xyzz, TEMP[0].xxxx; 265: MOV TEMP[3].xyz, TEMP[2].xyzx; 266: ADD TEMP[0].xyz, TEMP[1], TEMP[2].-x-y-z-x; 267: MOV TEMP[1].xyz, TEMP[0].xyzx; 268: MOV TEMP[1].w, CONST[28].yyyy; 269: SEQ TEMP[0].x, STATE[27].wwww, CONST[28].xxxx; 270: IF TEMP[0].xxxx; # (if false, goto 276); 271: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 272: RSQ TEMP[2].x, TEMP[0].xxxx; 273: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx; 274: CMP TEMP[2].x, TEMP[0].-x-x-x-x, TEMP[2].xxxx, CONST[28].xxxx; 275: MOV TEMP[0].x, TEMP[2].xxxx; 276: ELSE; # (goto 278) 277: MOV TEMP[0].x, INPUT[15].-z-z-z-z; 278: ENDIF; 279: ADD TEMP[2].x, TEMP[0].xxxx, CONST[32].zzzz; 280: MUL TEMP[0].x, TEMP[2].xxxx, CONST[32].wwww; 281: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 282: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx; 283: ADD TEMP[2].x, CONST[28].yyyy, TEMP[0].-x-x-x-x; 284: ADD TEMP[0].x, CONST[28].yyyy, TEMP[2].-x-x-x-x; 285: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 286: ADD TEMP[0].x, CONST[28].yyyy, TEMP[2].-x-x-x-x; 287: MUL TEMP[3], TEMP[1], TEMP[0].xxxx; 288: MAD TEMP[0].xyz, CONST[33], TEMP[2].xxxx, TEMP[3]; 289: MOV TEMP[1].w, CONST[28].yyyy; 290: MOV TEMP[1].xyz, TEMP[0].xyzx; 291: MOV OUTPUT[2], TEMP[1]; 292: END InputsRead: 0x7c000 (0b111,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=293 NumTemporaries=11 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x3f (0b111111) Samplers=[ 5 4 3 2 1 0 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=1 UNIFORM unf178 = {1, 0, 0, 0} param[1] sz=16 UNIFORM unf172 = {5.7, -0.0767, 0.249, 0.191} param[2] sz=12 UNIFORM unf172 = {0.565, -1.44, -1.26, -0.969} param[3] sz=8 UNIFORM unf172 = {-0.271, -5.55, 0.208, 0.159} param[4] sz=4 UNIFORM unf172 = {17.1, -8.62, -8.83, 0.23} param[5] sz=4 SAMPLER samp5 = {0, 0, 0, 0} param[6] sz=3 UNIFORM unf153 = {0.191, -0.969, 0.159, 0} param[7] sz=3 UNIFORM unf146 = {-3.01, -0.58, -1.36, 0} param[8] sz=1 UNIFORM unf139 = {1, 0, 0, 0} param[9] sz=16 UNIFORM unf133 = {5.7, -0.0767, 0.249, 0.191} param[10] sz=12 UNIFORM unf133 = {0.565, -1.44, -1.26, -0.969} param[11] sz=8 UNIFORM unf133 = {-0.271, -5.55, 0.208, 0.159} param[12] sz=4 UNIFORM unf133 = {2.33, 3.5, 2.15, 8.65} param[13] sz=4 SAMPLER samp4 = {1, 0, 0, 0} param[14] sz=3 UNIFORM unf114 = {0.191, -0.969, 0.159, 0} param[15] sz=3 UNIFORM unf107 = {-1.32, 8.42, -1.54, 0} param[16] sz=4 SAMPLER samp3 = {2, 0, 0, 0} param[17] sz=4 UNIFORM unf83 = {2.2, 1.97, 1.79, 2.2} param[18] sz=3 UNIFORM unf71 = {0.233, -0.601, -0.764, 0} param[19] sz=4 SAMPLER samp2 = {3, 0, 0, 0} param[20] sz=4 UNIFORM unf48 = {0.551, 0.557, 0.68, 0.68} param[21] sz=3 UNIFORM unf34 = {-0.243, -0.303, 0.922, 0} param[22] sz=4 SAMPLER samp1 = {4, 0, 0, 0} param[23] sz=4 SAMPLER samp0 = {5, 0, 0, 0} param[24] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[25] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[26] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[27] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[28] sz=4 CONST (null) = {0, 1, 0.00392, 2} param[29] sz=4 CONST (null) = {0, 0, -1, 0.802} param[30] sz=4 CONST (null) = {-0.5, 0.5, -0.5, 20} param[31] sz=4 CONST (null) = {0.996, -0.996, 1.75e+03, 3} param[32] sz=4 CONST (null) = {0.001, 0.005, -6, 0.0385} param[33] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL IN[3], GENERIC[13], PERSPECTIVE DCL IN[4], GENERIC[14], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL SAMP[3] DCL SAMP[4] DCL SAMP[5] DCL CONST[0..4] DCL CONST[6..12] DCL CONST[14..15] DCL CONST[17..18] DCL CONST[20..21] DCL CONST[24..27] DCL TEMP[0..10] IMM FLT32 { 0.0000, 1.0000, 0.0039, 2.0000} IMM FLT32 { 0.0000, -1.0000, 0.8019, 0.9063} IMM FLT32 { -0.5000, 0.5000, 20.0000, 0.9063} IMM FLT32 { 0.9962, -0.9962, 1751.3136, 3.0000} IMM FLT32 { 0.0010, 0.0050, -6.0000, 0.0385} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[27].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: MUL TEMP[3].x, IN[4].xxxx, IMM[0].zxxx 14: MUL TEMP[3].y, IN[4].xyxx, IMM[0].xzxx 15: MUL TEMP[3].z, IN[4].xxzx, IMM[0].xxzx 16: TEX TEMP[0].xyz, IN[3].xyyy, SAMP[5], 2D 17: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[3].xyzz 18: TEX TEMP[0].xyz, IN[3].xyyy, SAMP[4], 2D 19: MOV TEMP[3].x, TEMP[0].xxxx 20: MOV TEMP[3].y, -TEMP[0].yyyy 21: MOV TEMP[3].z, TEMP[0].zzzz 22: ADD TEMP[0].xyz, TEMP[3].xyzz, IMM[2].xyxz 23: MUL TEMP[3].xyz, IMM[0].wwww, TEMP[0].xyzz 24: DP3 TEMP[0].x, IN[2].xyzz, IN[2].xyzz 25: RSQ TEMP[5].x, TEMP[0].xxxx 26: MUL TEMP[0].xyz, IN[2].xyzz, TEMP[5].xxxx 27: MUL TEMP[5].xyz, TEMP[1].zxyy, TEMP[0].yzxx 28: MAD TEMP[6].xyz, TEMP[1].yzxx, TEMP[0].zxyy, -TEMP[5].xyzz 29: MUL TEMP[5].xyz, TEMP[3].xxxx, TEMP[0].xyzz 30: MAD TEMP[0].xyz, TEMP[3].yyyy, TEMP[6].xyzz, TEMP[5].xyzz 31: MAD TEMP[5].xyz, TEMP[3].zzzz, TEMP[1].xyzz, TEMP[0].xyzz 32: DP3 TEMP[0].x, TEMP[5].xyzz, TEMP[5].xyzz 33: RSQ TEMP[1].x, TEMP[0].xxxx 34: MUL TEMP[0].xyz, TEMP[5].xyzz, TEMP[1].xxxx 35: DP3 TEMP[1].x, TEMP[0].xyzz, CONST[21].xyzz 36: MAD TEMP[3].x, IMM[2].yyyy, TEMP[1].xxxx, IMM[2].yyyy 37: MAX TEMP[1].x, TEMP[3].xxxx, IMM[0].xxxx 38: MUL TEMP[3], CONST[20], TEMP[1].xxxx 39: DP3 TEMP[1].x, TEMP[2].xyzz, TEMP[0].xyzz 40: TEX TEMP[5], TEMP[1].xxxx, SAMP[3], 1D 41: MOV TEMP[1].w, IMM[0].yyyy 42: MOV TEMP[1].xyz, TEMP[4].xyzx 43: MUL TEMP[6].x, TEMP[5].wwww, IMM[1].zzzz 44: MOV_SAT TEMP[7].x, TEMP[6].xxxx 45: ADD TEMP[6].x, IMM[0].yyyy, -TEMP[7].xxxx 46: MOV TEMP[8], TEMP[1] 47: SLT TEMP[1].x, TEMP[4].xxxx, IMM[2].yyyy 48: IF TEMP[1].xxxx :53 49: MUL TEMP[1].x, IMM[0].wwww, TEMP[7].xxxx 50: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].xxxx, TEMP[6].xxxx 51: MUL TEMP[1].x, TEMP[4].xxxx, TEMP[9].xxxx 52: MOV TEMP[8].x, TEMP[1].xxxx 53: ELSE :61 54: MUL TEMP[1].x, IMM[0].wwww, TEMP[7].xxxx 55: ADD TEMP[9].x, IMM[0].yyyy, -TEMP[5].xxxx 56: MAD TEMP[10].x, TEMP[1].xxxx, TEMP[9].xxxx, TEMP[6].xxxx 57: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[8].xxxx 58: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[1].xxxx 59: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[9].xxxx 60: MOV TEMP[8].x, TEMP[1].xxxx 61: ENDIF 62: SLT TEMP[1].x, TEMP[4].yyyy, IMM[2].yyyy 63: IF TEMP[1].xxxx :68 64: MUL TEMP[1].x, IMM[0].wwww, TEMP[7].xxxx 65: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].yyyy, TEMP[6].xxxx 66: MUL TEMP[1].x, TEMP[4].yyyy, TEMP[9].xxxx 67: MOV TEMP[8].y, TEMP[1].xxxx 68: ELSE :76 69: MUL TEMP[1].x, IMM[0].wwww, TEMP[7].xxxx 70: ADD TEMP[9].x, IMM[0].yyyy, -TEMP[5].yyyy 71: MAD TEMP[10].x, TEMP[1].xxxx, TEMP[9].xxxx, TEMP[6].xxxx 72: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[8].yyyy 73: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[1].xxxx 74: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[9].xxxx 75: MOV TEMP[8].y, TEMP[1].xxxx 76: ENDIF 77: SLT TEMP[1].x, TEMP[4].zzzz, IMM[2].yyyy 78: IF TEMP[1].xxxx :83 79: MUL TEMP[1].x, IMM[0].wwww, TEMP[7].xxxx 80: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].zzzz, TEMP[6].xxxx 81: MUL TEMP[1].x, TEMP[4].zzzz, TEMP[9].xxxx 82: MOV TEMP[8].z, TEMP[1].xxxx 83: ELSE :91 84: MUL TEMP[1].x, IMM[0].wwww, TEMP[7].xxxx 85: ADD TEMP[7].x, IMM[0].yyyy, -TEMP[5].zzzz 86: MAD TEMP[5].x, TEMP[1].xxxx, TEMP[7].xxxx, TEMP[6].xxxx 87: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[8].zzzz 88: MUL TEMP[6].x, TEMP[5].xxxx, TEMP[1].xxxx 89: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[6].xxxx 90: MOV TEMP[8].z, TEMP[1].xxxx 91: ENDIF 92: MAD TEMP[1], TEMP[3], TEMP[8], IMM[0].xxxy 93: DP3 TEMP[3].x, TEMP[0].xyzz, CONST[18].xyzz 94: MAX TEMP[5].x, TEMP[3].xxxx, IMM[0].xxxx 95: MUL TEMP[3], CONST[17], TEMP[5].xxxx 96: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[0].xyzz 97: TEX TEMP[2], TEMP[5].xxxx, SAMP[2], 1D 98: MOV TEMP[5].w, IMM[0].yyyy 99: MOV TEMP[5].xyz, TEMP[4].xyzx 100: MUL TEMP[6].x, TEMP[2].wwww, IMM[1].zzzz 101: MOV_SAT TEMP[7].x, TEMP[6].xxxx 102: ADD TEMP[6].x, IMM[0].yyyy, -TEMP[7].xxxx 103: MOV TEMP[8], TEMP[5] 104: SLT TEMP[5].x, TEMP[4].xxxx, IMM[2].yyyy 105: IF TEMP[5].xxxx :110 106: MUL TEMP[5].x, IMM[0].wwww, TEMP[7].xxxx 107: MAD TEMP[9].x, TEMP[5].xxxx, TEMP[2].xxxx, TEMP[6].xxxx 108: MUL TEMP[5].x, TEMP[4].xxxx, TEMP[9].xxxx 109: MOV TEMP[8].x, TEMP[5].xxxx 110: ELSE :118 111: MUL TEMP[5].x, IMM[0].wwww, TEMP[7].xxxx 112: ADD TEMP[9].x, IMM[0].yyyy, -TEMP[2].xxxx 113: MAD TEMP[10].x, TEMP[5].xxxx, TEMP[9].xxxx, TEMP[6].xxxx 114: ADD TEMP[5].x, IMM[0].yyyy, -TEMP[8].xxxx 115: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[5].xxxx 116: ADD TEMP[5].x, IMM[0].yyyy, -TEMP[9].xxxx 117: MOV TEMP[8].x, TEMP[5].xxxx 118: ENDIF 119: SLT TEMP[5].x, TEMP[4].yyyy, IMM[2].yyyy 120: IF TEMP[5].xxxx :125 121: MUL TEMP[5].x, IMM[0].wwww, TEMP[7].xxxx 122: MAD TEMP[9].x, TEMP[5].xxxx, TEMP[2].yyyy, TEMP[6].xxxx 123: MUL TEMP[5].x, TEMP[4].yyyy, TEMP[9].xxxx 124: MOV TEMP[8].y, TEMP[5].xxxx 125: ELSE :133 126: MUL TEMP[5].x, IMM[0].wwww, TEMP[7].xxxx 127: ADD TEMP[9].x, IMM[0].yyyy, -TEMP[2].yyyy 128: MAD TEMP[10].x, TEMP[5].xxxx, TEMP[9].xxxx, TEMP[6].xxxx 129: ADD TEMP[5].x, IMM[0].yyyy, -TEMP[8].yyyy 130: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[5].xxxx 131: ADD TEMP[5].x, IMM[0].yyyy, -TEMP[9].xxxx 132: MOV TEMP[8].y, TEMP[5].xxxx 133: ENDIF 134: SLT TEMP[5].x, TEMP[4].zzzz, IMM[2].yyyy 135: IF TEMP[5].xxxx :140 136: MUL TEMP[5].x, IMM[0].wwww, TEMP[7].xxxx 137: MAD TEMP[9].x, TEMP[5].xxxx, TEMP[2].zzzz, TEMP[6].xxxx 138: MUL TEMP[5].x, TEMP[4].zzzz, TEMP[9].xxxx 139: MOV TEMP[8].z, TEMP[5].xxxx 140: ELSE :148 141: MUL TEMP[5].x, IMM[0].wwww, TEMP[7].xxxx 142: ADD TEMP[7].x, IMM[0].yyyy, -TEMP[2].zzzz 143: MAD TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx, TEMP[6].xxxx 144: ADD TEMP[5].x, IMM[0].yyyy, -TEMP[8].zzzz 145: MUL TEMP[6].x, TEMP[2].xxxx, TEMP[5].xxxx 146: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[6].xxxx 147: MOV TEMP[8].z, TEMP[2].xxxx 148: ENDIF 149: MAD TEMP[2], TEMP[3], TEMP[8], TEMP[1] 150: ADD TEMP[1].xyz, IN[1].xyzz, -CONST[15].xyzz 151: DP3 TEMP[3].x, TEMP[1].xyzz, TEMP[1].xyzz 152: RSQ TEMP[5].x, TEMP[3].xxxx 153: MUL TEMP[3].xyz, TEMP[1].xyzz, TEMP[5].xxxx 154: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[1].xyzz 155: RSQ TEMP[1].x, TEMP[5].xxxx 156: MUL TEMP[1].x, TEMP[1].xxxx, TEMP[5].xxxx 157: CMP TEMP[1].x, -TEMP[5].xxxx, TEMP[1].xxxx, IMM[0].xxxx 158: ADD TEMP[5].x, IMM[2].zzzz, TEMP[1].xxxx 159: RCP TEMP[1].x, TEMP[5].xxxx 160: MUL TEMP[5].x, IMM[2].zzzz, TEMP[1].xxxx 161: DP3 TEMP[1].x, TEMP[3].xyzz, CONST[14].xyzz 162: SLE TEMP[6].x, TEMP[1].xxxx, IMM[3].xxxx 163: IF TEMP[6].xxxx :165 164: MOV TEMP[6].x, IMM[0].xxxx 165: ELSE :176 166: ADD TEMP[7].x, TEMP[1].xxxx, IMM[3].yyyy 167: MUL TEMP[8].x, TEMP[7].xxxx, IMM[3].zzzz 168: MOV_SAT TEMP[7].x, TEMP[8].xxxx 169: MUL TEMP[8].x, IMM[0].wwww, TEMP[7].xxxx 170: ADD TEMP[9].x, IMM[3].wwww, -TEMP[8].xxxx 171: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx 172: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx 173: MUL TEMP[7].x, TEMP[1].xxxx, TEMP[9].xxxx 174: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[7].xxxx 175: MOV TEMP[6].x, TEMP[1].xxxx 176: ENDIF 177: SLT TEMP[1].x, TEMP[6].xxxx, IMM[4].xxxx 178: IF TEMP[1].xxxx :180 179: MOV TEMP[1].x, IMM[0].xxxx 180: ELSE :182 181: MOV TEMP[1].x, TEMP[6].xxxx 182: ENDIF 183: DP3 TEMP[5].x, TEMP[0].xyzz, TEMP[3].xyzz 184: MUL TEMP[3].x, TEMP[5].xxxx, TEMP[1].xxxx 185: MAX TEMP[1].x, TEMP[3].xxxx, IMM[0].xxxx 186: SLE TEMP[3].x, TEMP[5].xxxx, IMM[0].xxxx 187: IF TEMP[3].xxxx :189 188: MOV TEMP[3].x, IMM[0].xxxx 189: ELSE :201 190: MUL TEMP[5], CONST[9], IN[1].xxxx 191: MAD TEMP[6], CONST[10], IN[1].yyyy, TEMP[5] 192: MAD TEMP[5], CONST[11], IN[1].zzzz, TEMP[6] 193: ADD TEMP[6], TEMP[5], CONST[12] 194: MUL TEMP[5].x, IMM[4].yyyy, TEMP[6].wwww 195: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[5].xxxx 196: MOV TEMP[5], TEMP[6].xyyy 197: MOV TEMP[5].w, TEMP[6].wwww 198: MOV TEMP[5].z, TEMP[7].xxxx 199: TXP TEMP[6].x, TEMP[5], SAMP[1], SHADOW2D 200: MOV TEMP[3].x, TEMP[6].xxxx 201: ENDIF 202: MOV TEMP[5].w, IMM[0].xxxx 203: MUL TEMP[6].x, TEMP[1].xxxx, CONST[8].xxxx 204: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[3].xxxx 205: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[1].xxxx 206: MUL TEMP[5].xyz, TEMP[4].xyzx, TEMP[3].xxxx 207: ADD TEMP[1], TEMP[2], -TEMP[5] 208: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[7].xyzz 209: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[2].xyzz 210: RSQ TEMP[5].x, TEMP[3].xxxx 211: MUL TEMP[3].xyz, TEMP[2].xyzz, TEMP[5].xxxx 212: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz 213: RSQ TEMP[2].x, TEMP[5].xxxx 214: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx 215: CMP TEMP[2].x, -TEMP[5].xxxx, TEMP[2].xxxx, IMM[0].xxxx 216: ADD TEMP[5].x, IMM[2].zzzz, TEMP[2].xxxx 217: RCP TEMP[2].x, TEMP[5].xxxx 218: MUL TEMP[5].x, IMM[2].zzzz, TEMP[2].xxxx 219: DP3 TEMP[2].x, TEMP[3].xyzz, CONST[6].xyzz 220: SLE TEMP[6].x, TEMP[2].xxxx, IMM[3].xxxx 221: IF TEMP[6].xxxx :223 222: MOV TEMP[6].x, IMM[0].xxxx 223: ELSE :234 224: ADD TEMP[7].x, TEMP[2].xxxx, IMM[3].yyyy 225: MUL TEMP[8].x, TEMP[7].xxxx, IMM[3].zzzz 226: MOV_SAT TEMP[7].x, TEMP[8].xxxx 227: MUL TEMP[8].x, IMM[0].wwww, TEMP[7].xxxx 228: ADD TEMP[9].x, IMM[3].wwww, -TEMP[8].xxxx 229: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx 230: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx 231: MUL TEMP[7].x, TEMP[2].xxxx, TEMP[9].xxxx 232: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx 233: MOV TEMP[6].x, TEMP[2].xxxx 234: ENDIF 235: SLT TEMP[2].x, TEMP[6].xxxx, IMM[4].xxxx 236: IF TEMP[2].xxxx :238 237: MOV TEMP[2].x, IMM[0].xxxx 238: ELSE :240 239: MOV TEMP[2].x, TEMP[6].xxxx 240: ENDIF 241: DP3 TEMP[5].x, TEMP[0].xyzz, TEMP[3].xyzz 242: MUL TEMP[0].x, TEMP[5].xxxx, TEMP[2].xxxx 243: MAX TEMP[2].x, TEMP[0].xxxx, IMM[0].xxxx 244: SLE TEMP[0].x, TEMP[5].xxxx, IMM[0].xxxx 245: IF TEMP[0].xxxx :247 246: MOV TEMP[0].x, IMM[0].xxxx 247: ELSE :259 248: MUL TEMP[3], CONST[1], IN[1].xxxx 249: MAD TEMP[5], CONST[2], IN[1].yyyy, TEMP[3] 250: MAD TEMP[3], CONST[3], IN[1].zzzz, TEMP[5] 251: ADD TEMP[5], TEMP[3], CONST[4] 252: MUL TEMP[3].x, IMM[4].yyyy, TEMP[5].wwww 253: ADD TEMP[6].x, TEMP[5].zzzz, -TEMP[3].xxxx 254: MOV TEMP[3], TEMP[5].xyyy 255: MOV TEMP[3].w, TEMP[5].wwww 256: MOV TEMP[3].z, TEMP[6].xxxx 257: TXP TEMP[5].x, TEMP[3], SAMP[0], SHADOW2D 258: MOV TEMP[0].x, TEMP[5].xxxx 259: ENDIF 260: MOV TEMP[3].w, IMM[0].xxxx 261: MUL TEMP[5].x, TEMP[2].xxxx, CONST[0].xxxx 262: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[0].xxxx 263: MUL TEMP[0].x, TEMP[5].xxxx, TEMP[2].xxxx 264: MUL TEMP[2].xyz, TEMP[4].xyzz, TEMP[0].xxxx 265: MOV TEMP[3].xyz, TEMP[2].xyzx 266: ADD TEMP[0].xyz, TEMP[1], -TEMP[2].xyzx 267: MOV TEMP[1].xyz, TEMP[0].xyzx 268: MOV TEMP[1].w, IMM[0].yyyy 269: SEQ TEMP[0].x, CONST[27].wwww, IMM[0].xxxx 270: IF TEMP[0].xxxx :276 271: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 272: RSQ TEMP[2].x, TEMP[0].xxxx 273: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx 274: CMP TEMP[2].x, -TEMP[0].xxxx, TEMP[2].xxxx, IMM[0].xxxx 275: MOV TEMP[0].x, TEMP[2].xxxx 276: ELSE :278 277: MOV TEMP[0].x, -IN[1].zzzz 278: ENDIF 279: ADD TEMP[2].x, TEMP[0].xxxx, IMM[4].zzzz 280: MUL TEMP[0].x, TEMP[2].xxxx, IMM[4].wwww 281: MOV_SAT TEMP[2].x, TEMP[0].xxxx 282: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx 283: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[0].xxxx 284: ADD TEMP[0].x, IMM[0].yyyy, -TEMP[2].xxxx 285: MOV_SAT TEMP[2].x, TEMP[0].xxxx 286: ADD TEMP[0].x, IMM[0].yyyy, -TEMP[2].xxxx 287: MUL TEMP[3], TEMP[1], TEMP[0].xxxx 288: MAD TEMP[0].xyz, IMM[5], TEMP[2].xxxx, TEMP[3] 289: MOV TEMP[1].w, IMM[0].yyyy 290: MOV TEMP[1].xyz, TEMP[0].xyzx 291: MOV OUT[0], TEMP[1] 292: END # Vertex Program/Shader 45 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[20], INPUT[19]; 13: MOV OUTPUT[19].xy, INPUT[18].xyxx; 14: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[17].xxxx; 15: MAD TEMP[1].xyz, STATE[9].xyzz, INPUT[17].yyyy, TEMP[0].xyzz; 16: MAD OUTPUT[18].xyz, STATE[10].xyzx, INPUT[17].zzzx, TEMP[1].xyzx; 17: END InputsRead: 0xe0005 (0b1110,00000000,00000101) OutputsWritten: 0x1f0001 (0b11111,00000000,00000001) NumInstructions=18 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {0.395, 0.131, 0.909, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {0.907, 0.0984, -0.408, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-0.143, 0.987, -0.0798, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {8.31, 0.354, -3.91, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {0.395, 0.131, 0.909, 0.226} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {0.907, 0.0984, -0.408, -9.17} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-0.143, 0.987, -0.0798, 0.526} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL IN[4] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL OUT[4], GENERIC[13] DCL OUT[5], GENERIC[14] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[5], IN[4] 13: MOV OUT[4].xy, IN[3].xyxx 14: MUL TEMP[0].xyz, CONST[8].xyzz, IN[2].xxxx 15: MAD TEMP[1].xyz, CONST[9].xyzz, IN[2].yyyy, TEMP[0].xyzz 16: MAD OUT[3].xyz, CONST[10].xyzx, IN[2].zzzx, TEMP[1].xyzx 17: END # Fragment Program/Shader 48 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[29].wwww, CONST[30].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[31].xyzx; 12: ENDIF; 13: TEX TEMP[0], INPUT[17].xyyy, texture[5], 2D; 14: TEX TEMP[3], INPUT[17].xyyy, texture[4], 2D; 15: MOV TEMP[4].x, TEMP[3].xxxx; 16: MOV TEMP[4].y, TEMP[3].-y-y-y-y; 17: MOV TEMP[4].z, TEMP[3].zzzz; 18: ADD TEMP[3].xyz, TEMP[4].xyzz, CONST[32]; 19: MUL TEMP[4].xyz, CONST[30].yyyy, TEMP[3].xyzz; 20: DP3 TEMP[3].x, INPUT[16].xyzz, INPUT[16].xyzz; 21: RSQ TEMP[5].x, TEMP[3].xxxx; 22: MUL TEMP[3].xyz, INPUT[16].xyzz, TEMP[5].xxxx; 23: MUL TEMP[5].xyz, TEMP[1].zxyy, TEMP[3].yzxx; 24: MAD TEMP[6].xyz, TEMP[1].yzxx, TEMP[3].zxyy, TEMP[5].-x-y-z-z; 25: MUL TEMP[5].xyz, TEMP[4].xxxx, TEMP[3].xyzz; 26: MAD TEMP[3].xyz, TEMP[4].yyyy, TEMP[6].xyzz, TEMP[5].xyzz; 27: MAD TEMP[5].xyz, TEMP[4].zzzz, TEMP[1].xyzz, TEMP[3].xyzz; 28: DP3 TEMP[3].x, TEMP[5].xyzz, TEMP[5].xyzz; 29: RSQ TEMP[4].x, TEMP[3].xxxx; 30: MUL TEMP[3].xyz, TEMP[5].xyzz, TEMP[4].xxxx; 31: MUL TEMP[4].xyz, CONST[32].yyyy, TEMP[1].xyzz; 32: MAD TEMP[1].xyz, CONST[32].yyyy, TEMP[3].xyzz, TEMP[4].xyzz; 33: DP3 TEMP[3].x, TEMP[1].xyzz, TEMP[1].xyzz; 34: RSQ TEMP[4].x, TEMP[3].xxxx; 35: MUL TEMP[3].xyz, TEMP[1].xyzz, TEMP[4].xxxx; 36: DP3 TEMP[1].x, TEMP[3].xyzz, UNIFORM[23].xyzz; 37: MAD TEMP[4].x, CONST[32].yyyy, TEMP[1].xxxx, CONST[32].yyyy; 38: MAX TEMP[1].x, TEMP[4].xxxx, CONST[30].xxxx; 39: MUL TEMP[4], UNIFORM[22], TEMP[1].xxxx; 40: DP3 TEMP[1].x, TEMP[2].xyzz, TEMP[3].xyzz; 41: TEX TEMP[5], TEMP[1].xxxx, texture[3], 1D; 42: MOV TEMP[1].w, CONST[30].zzzz; 43: MOV TEMP[1].xyz, TEMP[0].xyzx; 44: MOV_SAT TEMP[6].x, TEMP[5].wwww; 45: ADD TEMP[7].x, CONST[30].zzzz, TEMP[6].-x-x-x-x; 46: MOV TEMP[8], TEMP[1]; 47: SLT TEMP[1].x, TEMP[0].xxxx, CONST[32].yyyy; 48: IF TEMP[1].xxxx; # (if false, goto 53); 49: MUL TEMP[1].x, CONST[30].yyyy, TEMP[6].xxxx; 50: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].xxxx, TEMP[7].xxxx; 51: MUL TEMP[1].x, TEMP[0].xxxx, TEMP[9].xxxx; 52: MOV TEMP[8].x, TEMP[1].xxxx; 53: ELSE; # (goto 61) 54: MUL TEMP[1].x, CONST[30].yyyy, TEMP[6].xxxx; 55: ADD TEMP[9].x, CONST[30].zzzz, TEMP[5].-x-x-x-x; 56: MAD TEMP[10].x, TEMP[1].xxxx, TEMP[9].xxxx, TEMP[7].xxxx; 57: ADD TEMP[1].x, CONST[30].zzzz, TEMP[8].-x-x-x-x; 58: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[1].xxxx; 59: ADD TEMP[1].x, CONST[30].zzzz, TEMP[9].-x-x-x-x; 60: MOV TEMP[8].x, TEMP[1].xxxx; 61: ENDIF; 62: SLT TEMP[1].x, TEMP[0].yyyy, CONST[32].yyyy; 63: IF TEMP[1].xxxx; # (if false, goto 68); 64: MUL TEMP[1].x, CONST[30].yyyy, TEMP[6].xxxx; 65: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].yyyy, TEMP[7].xxxx; 66: MUL TEMP[1].x, TEMP[0].yyyy, TEMP[9].xxxx; 67: MOV TEMP[8].y, TEMP[1].xxxx; 68: ELSE; # (goto 76) 69: MUL TEMP[1].x, CONST[30].yyyy, TEMP[6].xxxx; 70: ADD TEMP[9].x, CONST[30].zzzz, TEMP[5].-y-y-y-y; 71: MAD TEMP[10].x, TEMP[1].xxxx, TEMP[9].xxxx, TEMP[7].xxxx; 72: ADD TEMP[1].x, CONST[30].zzzz, TEMP[8].-y-y-y-y; 73: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[1].xxxx; 74: ADD TEMP[1].x, CONST[30].zzzz, TEMP[9].-x-x-x-x; 75: MOV TEMP[8].y, TEMP[1].xxxx; 76: ENDIF; 77: SLT TEMP[1].x, TEMP[0].zzzz, CONST[32].yyyy; 78: IF TEMP[1].xxxx; # (if false, goto 83); 79: MUL TEMP[1].x, CONST[30].yyyy, TEMP[6].xxxx; 80: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].zzzz, TEMP[7].xxxx; 81: MUL TEMP[1].x, TEMP[0].zzzz, TEMP[9].xxxx; 82: MOV TEMP[8].z, TEMP[1].xxxx; 83: ELSE; # (goto 91) 84: MUL TEMP[1].x, CONST[30].yyyy, TEMP[6].xxxx; 85: ADD TEMP[6].x, CONST[30].zzzz, TEMP[5].-z-z-z-z; 86: MAD TEMP[5].x, TEMP[1].xxxx, TEMP[6].xxxx, TEMP[7].xxxx; 87: ADD TEMP[1].x, CONST[30].zzzz, TEMP[8].-z-z-z-z; 88: MUL TEMP[6].x, TEMP[5].xxxx, TEMP[1].xxxx; 89: ADD TEMP[1].x, CONST[30].zzzz, TEMP[6].-x-x-x-x; 90: MOV TEMP[8].z, TEMP[1].xxxx; 91: ENDIF; 92: MAD TEMP[1], TEMP[4], TEMP[8], CONST[33]; 93: ADD TEMP[4].xyz, UNIFORM[23].xyzz, TEMP[2].xyzz; 94: MOV TEMP[5].w, CONST[30].zzzz; 95: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz; 96: RSQ TEMP[7].x, TEMP[6].xxxx; 97: MUL TEMP[6].xyz, TEMP[4].xyzz, TEMP[7].xxxx; 98: DP3 TEMP[4].x, TEMP[3].xyzz, TEMP[6].xyzz; 99: MAD TEMP[6].x, CONST[32].yyyy, TEMP[4].xxxx, CONST[32].yyyy; 100: POW TEMP[4].x, TEMP[6].xxxx, CONST[31].wwww; 101: MUL TEMP[6].x, CONST[30].wwww, TEMP[4].xxxx; 102: MUL TEMP[5].xyz, TEMP[6].xxxx, UNIFORM[20].xyzx; 103: ADD TEMP[4], CONST[30].xxxz, TEMP[5]; 104: DP3 TEMP[5].x, TEMP[3].xyzz, UNIFORM[19].xyzz; 105: MAX TEMP[6].x, TEMP[5].xxxx, CONST[30].xxxx; 106: MUL TEMP[5], UNIFORM[18], TEMP[6].xxxx; 107: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[3].xyzz; 108: TEX TEMP[7], TEMP[6].xxxx, texture[2], 1D; 109: MOV TEMP[6].w, CONST[30].zzzz; 110: MOV TEMP[6].xyz, TEMP[0].xyzx; 111: MOV_SAT TEMP[8].x, TEMP[7].wwww; 112: ADD TEMP[9].x, CONST[30].zzzz, TEMP[8].-x-x-x-x; 113: MOV TEMP[10], TEMP[6]; 114: SLT TEMP[6].x, TEMP[0].xxxx, CONST[32].yyyy; 115: IF TEMP[6].xxxx; # (if false, goto 120); 116: MUL TEMP[6].x, CONST[30].yyyy, TEMP[8].xxxx; 117: MAD TEMP[11].x, TEMP[6].xxxx, TEMP[7].xxxx, TEMP[9].xxxx; 118: MUL TEMP[6].x, TEMP[0].xxxx, TEMP[11].xxxx; 119: MOV TEMP[10].x, TEMP[6].xxxx; 120: ELSE; # (goto 128) 121: MUL TEMP[6].x, CONST[30].yyyy, TEMP[8].xxxx; 122: ADD TEMP[11].x, CONST[30].zzzz, TEMP[7].-x-x-x-x; 123: MAD TEMP[12].x, TEMP[6].xxxx, TEMP[11].xxxx, TEMP[9].xxxx; 124: ADD TEMP[6].x, CONST[30].zzzz, TEMP[10].-x-x-x-x; 125: MUL TEMP[11].x, TEMP[12].xxxx, TEMP[6].xxxx; 126: ADD TEMP[6].x, CONST[30].zzzz, TEMP[11].-x-x-x-x; 127: MOV TEMP[10].x, TEMP[6].xxxx; 128: ENDIF; 129: SLT TEMP[6].x, TEMP[0].yyyy, CONST[32].yyyy; 130: IF TEMP[6].xxxx; # (if false, goto 135); 131: MUL TEMP[6].x, CONST[30].yyyy, TEMP[8].xxxx; 132: MAD TEMP[11].x, TEMP[6].xxxx, TEMP[7].yyyy, TEMP[9].xxxx; 133: MUL TEMP[6].x, TEMP[0].yyyy, TEMP[11].xxxx; 134: MOV TEMP[10].y, TEMP[6].xxxx; 135: ELSE; # (goto 143) 136: MUL TEMP[6].x, CONST[30].yyyy, TEMP[8].xxxx; 137: ADD TEMP[11].x, CONST[30].zzzz, TEMP[7].-y-y-y-y; 138: MAD TEMP[12].x, TEMP[6].xxxx, TEMP[11].xxxx, TEMP[9].xxxx; 139: ADD TEMP[6].x, CONST[30].zzzz, TEMP[10].-y-y-y-y; 140: MUL TEMP[11].x, TEMP[12].xxxx, TEMP[6].xxxx; 141: ADD TEMP[6].x, CONST[30].zzzz, TEMP[11].-x-x-x-x; 142: MOV TEMP[10].y, TEMP[6].xxxx; 143: ENDIF; 144: SLT TEMP[6].x, TEMP[0].zzzz, CONST[32].yyyy; 145: IF TEMP[6].xxxx; # (if false, goto 150); 146: MUL TEMP[6].x, CONST[30].yyyy, TEMP[8].xxxx; 147: MAD TEMP[11].x, TEMP[6].xxxx, TEMP[7].zzzz, TEMP[9].xxxx; 148: MUL TEMP[6].x, TEMP[0].zzzz, TEMP[11].xxxx; 149: MOV TEMP[10].z, TEMP[6].xxxx; 150: ELSE; # (goto 158) 151: MUL TEMP[6].x, CONST[30].yyyy, TEMP[8].xxxx; 152: ADD TEMP[8].x, CONST[30].zzzz, TEMP[7].-z-z-z-z; 153: MAD TEMP[7].x, TEMP[6].xxxx, TEMP[8].xxxx, TEMP[9].xxxx; 154: ADD TEMP[6].x, CONST[30].zzzz, TEMP[10].-z-z-z-z; 155: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[6].xxxx; 156: ADD TEMP[6].x, CONST[30].zzzz, TEMP[8].-x-x-x-x; 157: MOV TEMP[10].z, TEMP[6].xxxx; 158: ENDIF; 159: MAD TEMP[6], TEMP[5], TEMP[10], TEMP[1]; 160: ADD TEMP[1].xyz, UNIFORM[19].xyzz, TEMP[2].xyzz; 161: MOV TEMP[2].w, CONST[30].zzzz; 162: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[1].xyzz; 163: RSQ TEMP[7].x, TEMP[5].xxxx; 164: MUL TEMP[5].xyz, TEMP[1].xyzz, TEMP[7].xxxx; 165: DP3 TEMP[1].x, TEMP[5].xyzz, TEMP[3].xyzz; 166: MAX TEMP[5].x, TEMP[1].xxxx, CONST[30].xxxx; 167: POW TEMP[1].x, TEMP[5].xxxx, CONST[31].wwww; 168: MUL TEMP[5].x, CONST[30].wwww, TEMP[1].xxxx; 169: MUL TEMP[2].xyz, TEMP[5].xxxx, UNIFORM[16].xyzx; 170: ADD TEMP[1], TEMP[4], TEMP[2]; 171: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[15].-x-y-z-z; 172: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz; 173: RSQ TEMP[5].x, TEMP[4].xxxx; 174: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[5].xxxx; 175: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz; 176: RSQ TEMP[2].x, TEMP[5].xxxx; 177: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx; 178: CMP TEMP[2].x, TEMP[5].-x-x-x-x, TEMP[2].xxxx, CONST[30].xxxx; 179: ADD TEMP[5].x, CONST[31].wwww, TEMP[2].xxxx; 180: RCP TEMP[2].x, TEMP[5].xxxx; 181: MUL TEMP[5].x, CONST[31].wwww, TEMP[2].xxxx; 182: DP3 TEMP[2].x, TEMP[4].xyzz, UNIFORM[14].xyzz; 183: SLE TEMP[7].x, TEMP[2].xxxx, CONST[32].wwww; 184: IF TEMP[7].xxxx; # (if false, goto 186); 185: MOV TEMP[7].x, CONST[30].xxxx; 186: ELSE; # (goto 197) 187: ADD TEMP[8].x, TEMP[2].xxxx, CONST[34].xxxx; 188: MUL TEMP[9].x, TEMP[8].xxxx, CONST[34].yyyy; 189: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 190: MUL TEMP[9].x, CONST[30].yyyy, TEMP[8].xxxx; 191: ADD TEMP[10].x, CONST[34].zzzz, TEMP[9].-x-x-x-x; 192: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 193: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 194: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx; 195: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[8].xxxx; 196: MOV TEMP[7].x, TEMP[2].xxxx; 197: ENDIF; 198: SLT TEMP[2].x, TEMP[7].xxxx, CONST[34].wwww; 199: IF TEMP[2].xxxx; # (if false, goto 201); 200: MOV TEMP[2].x, CONST[30].xxxx; 201: ELSE; # (goto 203) 202: MOV TEMP[2].x, TEMP[7].xxxx; 203: ENDIF; 204: DP3 TEMP[5].x, TEMP[3].xyzz, TEMP[4].xyzz; 205: MUL TEMP[4].x, TEMP[5].xxxx, TEMP[2].xxxx; 206: MAX TEMP[2].x, TEMP[4].xxxx, CONST[30].xxxx; 207: SLE TEMP[4].x, TEMP[5].xxxx, CONST[30].xxxx; 208: IF TEMP[4].xxxx; # (if false, goto 210); 209: MOV TEMP[4].x, CONST[30].xxxx; 210: ELSE; # (goto 222) 211: MUL TEMP[5], UNIFORM[9], INPUT[15].xxxx; 212: MAD TEMP[7], UNIFORM[10], INPUT[15].yyyy, TEMP[5]; 213: MAD TEMP[5], UNIFORM[11], INPUT[15].zzzz, TEMP[7]; 214: ADD TEMP[7], TEMP[5], UNIFORM[12]; 215: MUL TEMP[5].x, CONST[35].xxxx, TEMP[7].wwww; 216: ADD TEMP[8].x, TEMP[7].zzzz, TEMP[5].-x-x-x-x; 217: MOV TEMP[5], TEMP[7].xyyy; 218: MOV TEMP[5].w, TEMP[7].wwww; 219: MOV TEMP[5].z, TEMP[8].xxxx; 220: TXP TEMP[7].x, TEMP[5], texture[1], 2D SHADOW; 221: MOV TEMP[4].x, TEMP[7].xxxx; 222: ENDIF; 223: MOV TEMP[5].w, CONST[30].xxxx; 224: MUL TEMP[7].x, TEMP[2].xxxx, UNIFORM[8].xxxx; 225: ADD TEMP[2].x, CONST[30].zzzz, TEMP[4].-x-x-x-x; 226: MUL TEMP[4].x, TEMP[7].xxxx, TEMP[2].xxxx; 227: MUL TEMP[5].xyz, TEMP[0].xyzx, TEMP[4].xxxx; 228: ADD TEMP[2], TEMP[6], TEMP[5].-x-y-z-w; 229: ADD TEMP[4].xyz, INPUT[15].xyzz, UNIFORM[7].-x-y-z-z; 230: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz; 231: RSQ TEMP[6].x, TEMP[5].xxxx; 232: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[6].xxxx; 233: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz; 234: RSQ TEMP[4].x, TEMP[6].xxxx; 235: MUL TEMP[4].x, TEMP[4].xxxx, TEMP[6].xxxx; 236: CMP TEMP[4].x, TEMP[6].-x-x-x-x, TEMP[4].xxxx, CONST[30].xxxx; 237: ADD TEMP[6].x, CONST[31].wwww, TEMP[4].xxxx; 238: RCP TEMP[4].x, TEMP[6].xxxx; 239: MUL TEMP[6].x, CONST[31].wwww, TEMP[4].xxxx; 240: DP3 TEMP[4].x, TEMP[5].xyzz, UNIFORM[6].xyzz; 241: SLE TEMP[7].x, TEMP[4].xxxx, CONST[32].wwww; 242: IF TEMP[7].xxxx; # (if false, goto 244); 243: MOV TEMP[7].x, CONST[30].xxxx; 244: ELSE; # (goto 255) 245: ADD TEMP[8].x, TEMP[4].xxxx, CONST[34].xxxx; 246: MUL TEMP[9].x, TEMP[8].xxxx, CONST[34].yyyy; 247: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 248: MUL TEMP[9].x, CONST[30].yyyy, TEMP[8].xxxx; 249: ADD TEMP[10].x, CONST[34].zzzz, TEMP[9].-x-x-x-x; 250: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 251: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 252: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[10].xxxx; 253: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[8].xxxx; 254: MOV TEMP[7].x, TEMP[4].xxxx; 255: ENDIF; 256: SLT TEMP[4].x, TEMP[7].xxxx, CONST[34].wwww; 257: IF TEMP[4].xxxx; # (if false, goto 259); 258: MOV TEMP[4].x, CONST[30].xxxx; 259: ELSE; # (goto 261) 260: MOV TEMP[4].x, TEMP[7].xxxx; 261: ENDIF; 262: DP3 TEMP[6].x, TEMP[3].xyzz, TEMP[5].xyzz; 263: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[4].xxxx; 264: MAX TEMP[4].x, TEMP[3].xxxx, CONST[30].xxxx; 265: SLE TEMP[3].x, TEMP[6].xxxx, CONST[30].xxxx; 266: IF TEMP[3].xxxx; # (if false, goto 268); 267: MOV TEMP[3].x, CONST[30].xxxx; 268: ELSE; # (goto 280) 269: MUL TEMP[5], UNIFORM[1], INPUT[15].xxxx; 270: MAD TEMP[6], UNIFORM[2], INPUT[15].yyyy, TEMP[5]; 271: MAD TEMP[5], UNIFORM[3], INPUT[15].zzzz, TEMP[6]; 272: ADD TEMP[6], TEMP[5], UNIFORM[4]; 273: MUL TEMP[5].x, CONST[35].xxxx, TEMP[6].wwww; 274: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[5].-x-x-x-x; 275: MOV TEMP[5], TEMP[6].xyyy; 276: MOV TEMP[5].w, TEMP[6].wwww; 277: MOV TEMP[5].z, TEMP[7].xxxx; 278: TXP TEMP[6].x, TEMP[5], texture[0], 2D SHADOW; 279: MOV TEMP[3].x, TEMP[6].xxxx; 280: ENDIF; 281: MOV TEMP[5].w, CONST[30].xxxx; 282: MUL TEMP[6].x, TEMP[4].xxxx, UNIFORM[0].xxxx; 283: ADD TEMP[4].x, CONST[30].zzzz, TEMP[3].-x-x-x-x; 284: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[4].xxxx; 285: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[3].xxxx; 286: MOV TEMP[5].xyz, TEMP[4].xyzx; 287: ADD TEMP[0], TEMP[2], TEMP[5].-x-y-z-w; 288: ADD TEMP[2].xyz, TEMP[0], TEMP[1]; 289: MOV TEMP[0].xyz, TEMP[2].xyzx; 290: MOV TEMP[0].w, CONST[30].zzzz; 291: SEQ TEMP[1].x, STATE[29].wwww, CONST[30].xxxx; 292: IF TEMP[1].xxxx; # (if false, goto 298); 293: DP3 TEMP[1].x, INPUT[15].xyzz, INPUT[15].xyzz; 294: RSQ TEMP[2].x, TEMP[1].xxxx; 295: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx; 296: CMP TEMP[2].x, TEMP[1].-x-x-x-x, TEMP[2].xxxx, CONST[30].xxxx; 297: MOV TEMP[1].x, TEMP[2].xxxx; 298: ELSE; # (goto 300) 299: MOV TEMP[1].x, INPUT[15].-z-z-z-z; 300: ENDIF; 301: ADD TEMP[2].x, TEMP[1].xxxx, CONST[35].yyyy; 302: MUL TEMP[1].x, TEMP[2].xxxx, CONST[35].zzzz; 303: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 304: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx; 305: ADD TEMP[2].x, CONST[30].zzzz, TEMP[1].-x-x-x-x; 306: ADD TEMP[1].x, CONST[30].zzzz, TEMP[2].-x-x-x-x; 307: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 308: ADD TEMP[1].x, CONST[30].zzzz, TEMP[2].-x-x-x-x; 309: MUL TEMP[3], TEMP[0], TEMP[1].xxxx; 310: MAD TEMP[0], CONST[36], TEMP[2].xxxx, TEMP[3]; 311: MOV TEMP[1].w, CONST[30].zzzz; 312: MOV TEMP[1].xyz, TEMP[0].xyzx; 313: MOV OUTPUT[2], TEMP[1]; 314: END InputsRead: 0x3c000 (0b11,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=315 NumTemporaries=13 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x3f (0b111111) Samplers=[ 5 4 3 2 1 0 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=1 UNIFORM unf212 = {1, 0, 0, 0} param[1] sz=16 UNIFORM unf206 = {5.7, -0.0767, 0.249, 0.191} param[2] sz=12 UNIFORM unf206 = {0.565, -1.44, -1.26, -0.969} param[3] sz=8 UNIFORM unf206 = {-0.271, -5.55, 0.208, 0.159} param[4] sz=4 UNIFORM unf206 = {17.1, -8.62, -8.83, 0.23} param[5] sz=4 SAMPLER samp5 = {0, 0, 0, 0} param[6] sz=3 UNIFORM unf187 = {0.191, -0.969, 0.159, 0} param[7] sz=3 UNIFORM unf180 = {-3.01, -0.58, -1.36, 0} param[8] sz=1 UNIFORM unf173 = {1, 0, 0, 0} param[9] sz=16 UNIFORM unf167 = {5.7, -0.0767, 0.249, 0.191} param[10] sz=12 UNIFORM unf167 = {0.565, -1.44, -1.26, -0.969} param[11] sz=8 UNIFORM unf167 = {-0.271, -5.55, 0.208, 0.159} param[12] sz=4 UNIFORM unf167 = {2.33, 3.5, 2.15, 8.65} param[13] sz=4 SAMPLER samp4 = {1, 0, 0, 0} param[14] sz=3 UNIFORM unf148 = {0.191, -0.969, 0.159, 0} param[15] sz=3 UNIFORM unf141 = {-1.32, 8.42, -1.54, 0} param[16] sz=3 UNIFORM unf134 = {2.2, 1.97, 1.79, 0} param[17] sz=4 SAMPLER samp3 = {2, 0, 0, 0} param[18] sz=4 UNIFORM unf100 = {2.2, 1.97, 1.79, 2.2} param[19] sz=3 UNIFORM unf88 = {0.233, -0.601, -0.764, 0} param[20] sz=3 UNIFORM unf82 = {0.551, 0.557, 0.68, 0} param[21] sz=4 SAMPLER samp2 = {3, 0, 0, 0} param[22] sz=4 UNIFORM unf51 = {0.551, 0.557, 0.68, 0.68} param[23] sz=3 UNIFORM unf37 = {-0.243, -0.303, 0.922, 0} param[24] sz=4 SAMPLER samp1 = {4, 0, 0, 0} param[25] sz=4 SAMPLER samp0 = {5, 0, 0, 0} param[26] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[27] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[28] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[29] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[30] sz=4 CONST (null) = {0, 2, 1, 0.05} param[31] sz=4 CONST (null) = {0, 0, -1, 20} param[32] sz=4 CONST (null) = {-0.5, 0.5, -0.5, 0.996} param[33] sz=4 CONST (null) = {0, 0, 0, 1} param[34] sz=4 CONST (null) = {-0.996, 1.75e+03, 3, 0.001} param[35] sz=3 CONST (null) = {0.005, -6, 0.0385, 0} param[36] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL IN[3], GENERIC[13], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL SAMP[3] DCL SAMP[4] DCL SAMP[5] DCL CONST[0..4] DCL CONST[6..12] DCL CONST[14..16] DCL CONST[18..20] DCL CONST[22..23] DCL CONST[26..29] DCL TEMP[0..12] IMM FLT32 { 0.0000, 2.0000, 1.0000, 0.0500} IMM FLT32 { 0.0000, -1.0000, 20.0000, 0.9063} IMM FLT32 { -0.5000, 0.5000, 0.9962, 0.9063} IMM FLT32 { -0.9962, 1751.3136, 3.0000, 0.0010} IMM FLT32 { 0.0050, -6.0000, 0.0385, 0.0000} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[29].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: TEX TEMP[0], IN[3].xyyy, SAMP[5], 2D 14: TEX TEMP[3], IN[3].xyyy, SAMP[4], 2D 15: MOV TEMP[4].x, TEMP[3].xxxx 16: MOV TEMP[4].y, -TEMP[3].yyyy 17: MOV TEMP[4].z, TEMP[3].zzzz 18: ADD TEMP[3].xyz, TEMP[4].xyzz, IMM[2].xyxz 19: MUL TEMP[4].xyz, IMM[0].yyyy, TEMP[3].xyzz 20: DP3 TEMP[3].x, IN[2].xyzz, IN[2].xyzz 21: RSQ TEMP[5].x, TEMP[3].xxxx 22: MUL TEMP[3].xyz, IN[2].xyzz, TEMP[5].xxxx 23: MUL TEMP[5].xyz, TEMP[1].zxyy, TEMP[3].yzxx 24: MAD TEMP[6].xyz, TEMP[1].yzxx, TEMP[3].zxyy, -TEMP[5].xyzz 25: MUL TEMP[5].xyz, TEMP[4].xxxx, TEMP[3].xyzz 26: MAD TEMP[3].xyz, TEMP[4].yyyy, TEMP[6].xyzz, TEMP[5].xyzz 27: MAD TEMP[5].xyz, TEMP[4].zzzz, TEMP[1].xyzz, TEMP[3].xyzz 28: DP3 TEMP[3].x, TEMP[5].xyzz, TEMP[5].xyzz 29: RSQ TEMP[4].x, TEMP[3].xxxx 30: MUL TEMP[3].xyz, TEMP[5].xyzz, TEMP[4].xxxx 31: MUL TEMP[4].xyz, IMM[2].yyyy, TEMP[1].xyzz 32: MAD TEMP[1].xyz, IMM[2].yyyy, TEMP[3].xyzz, TEMP[4].xyzz 33: DP3 TEMP[3].x, TEMP[1].xyzz, TEMP[1].xyzz 34: RSQ TEMP[4].x, TEMP[3].xxxx 35: MUL TEMP[3].xyz, TEMP[1].xyzz, TEMP[4].xxxx 36: DP3 TEMP[1].x, TEMP[3].xyzz, CONST[23].xyzz 37: MAD TEMP[4].x, IMM[2].yyyy, TEMP[1].xxxx, IMM[2].yyyy 38: MAX TEMP[1].x, TEMP[4].xxxx, IMM[0].xxxx 39: MUL TEMP[4], CONST[22], TEMP[1].xxxx 40: DP3 TEMP[1].x, TEMP[2].xyzz, TEMP[3].xyzz 41: TEX TEMP[5], TEMP[1].xxxx, SAMP[3], 1D 42: MOV TEMP[1].w, IMM[0].zzzz 43: MOV TEMP[1].xyz, TEMP[0].xyzx 44: MOV_SAT TEMP[6].x, TEMP[5].wwww 45: ADD TEMP[7].x, IMM[0].zzzz, -TEMP[6].xxxx 46: MOV TEMP[8], TEMP[1] 47: SLT TEMP[1].x, TEMP[0].xxxx, IMM[2].yyyy 48: IF TEMP[1].xxxx :53 49: MUL TEMP[1].x, IMM[0].yyyy, TEMP[6].xxxx 50: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].xxxx, TEMP[7].xxxx 51: MUL TEMP[1].x, TEMP[0].xxxx, TEMP[9].xxxx 52: MOV TEMP[8].x, TEMP[1].xxxx 53: ELSE :61 54: MUL TEMP[1].x, IMM[0].yyyy, TEMP[6].xxxx 55: ADD TEMP[9].x, IMM[0].zzzz, -TEMP[5].xxxx 56: MAD TEMP[10].x, TEMP[1].xxxx, TEMP[9].xxxx, TEMP[7].xxxx 57: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[8].xxxx 58: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[1].xxxx 59: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[9].xxxx 60: MOV TEMP[8].x, TEMP[1].xxxx 61: ENDIF 62: SLT TEMP[1].x, TEMP[0].yyyy, IMM[2].yyyy 63: IF TEMP[1].xxxx :68 64: MUL TEMP[1].x, IMM[0].yyyy, TEMP[6].xxxx 65: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].yyyy, TEMP[7].xxxx 66: MUL TEMP[1].x, TEMP[0].yyyy, TEMP[9].xxxx 67: MOV TEMP[8].y, TEMP[1].xxxx 68: ELSE :76 69: MUL TEMP[1].x, IMM[0].yyyy, TEMP[6].xxxx 70: ADD TEMP[9].x, IMM[0].zzzz, -TEMP[5].yyyy 71: MAD TEMP[10].x, TEMP[1].xxxx, TEMP[9].xxxx, TEMP[7].xxxx 72: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[8].yyyy 73: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[1].xxxx 74: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[9].xxxx 75: MOV TEMP[8].y, TEMP[1].xxxx 76: ENDIF 77: SLT TEMP[1].x, TEMP[0].zzzz, IMM[2].yyyy 78: IF TEMP[1].xxxx :83 79: MUL TEMP[1].x, IMM[0].yyyy, TEMP[6].xxxx 80: MAD TEMP[9].x, TEMP[1].xxxx, TEMP[5].zzzz, TEMP[7].xxxx 81: MUL TEMP[1].x, TEMP[0].zzzz, TEMP[9].xxxx 82: MOV TEMP[8].z, TEMP[1].xxxx 83: ELSE :91 84: MUL TEMP[1].x, IMM[0].yyyy, TEMP[6].xxxx 85: ADD TEMP[6].x, IMM[0].zzzz, -TEMP[5].zzzz 86: MAD TEMP[5].x, TEMP[1].xxxx, TEMP[6].xxxx, TEMP[7].xxxx 87: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[8].zzzz 88: MUL TEMP[6].x, TEMP[5].xxxx, TEMP[1].xxxx 89: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[6].xxxx 90: MOV TEMP[8].z, TEMP[1].xxxx 91: ENDIF 92: MAD TEMP[1], TEMP[4], TEMP[8], IMM[0].xxxz 93: ADD TEMP[4].xyz, CONST[23].xyzz, TEMP[2].xyzz 94: MOV TEMP[5].w, IMM[0].zzzz 95: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz 96: RSQ TEMP[7].x, TEMP[6].xxxx 97: MUL TEMP[6].xyz, TEMP[4].xyzz, TEMP[7].xxxx 98: DP3 TEMP[4].x, TEMP[3].xyzz, TEMP[6].xyzz 99: MAD TEMP[6].x, IMM[2].yyyy, TEMP[4].xxxx, IMM[2].yyyy 100: POW TEMP[4].x, TEMP[6].xxxx, IMM[1].zzzz 101: MUL TEMP[6].x, IMM[0].wwww, TEMP[4].xxxx 102: MUL TEMP[5].xyz, TEMP[6].xxxx, CONST[20].xyzx 103: ADD TEMP[4], IMM[0].xxxz, TEMP[5] 104: DP3 TEMP[5].x, TEMP[3].xyzz, CONST[19].xyzz 105: MAX TEMP[6].x, TEMP[5].xxxx, IMM[0].xxxx 106: MUL TEMP[5], CONST[18], TEMP[6].xxxx 107: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[3].xyzz 108: TEX TEMP[7], TEMP[6].xxxx, SAMP[2], 1D 109: MOV TEMP[6].w, IMM[0].zzzz 110: MOV TEMP[6].xyz, TEMP[0].xyzx 111: MOV_SAT TEMP[8].x, TEMP[7].wwww 112: ADD TEMP[9].x, IMM[0].zzzz, -TEMP[8].xxxx 113: MOV TEMP[10], TEMP[6] 114: SLT TEMP[6].x, TEMP[0].xxxx, IMM[2].yyyy 115: IF TEMP[6].xxxx :120 116: MUL TEMP[6].x, IMM[0].yyyy, TEMP[8].xxxx 117: MAD TEMP[11].x, TEMP[6].xxxx, TEMP[7].xxxx, TEMP[9].xxxx 118: MUL TEMP[6].x, TEMP[0].xxxx, TEMP[11].xxxx 119: MOV TEMP[10].x, TEMP[6].xxxx 120: ELSE :128 121: MUL TEMP[6].x, IMM[0].yyyy, TEMP[8].xxxx 122: ADD TEMP[11].x, IMM[0].zzzz, -TEMP[7].xxxx 123: MAD TEMP[12].x, TEMP[6].xxxx, TEMP[11].xxxx, TEMP[9].xxxx 124: ADD TEMP[6].x, IMM[0].zzzz, -TEMP[10].xxxx 125: MUL TEMP[11].x, TEMP[12].xxxx, TEMP[6].xxxx 126: ADD TEMP[6].x, IMM[0].zzzz, -TEMP[11].xxxx 127: MOV TEMP[10].x, TEMP[6].xxxx 128: ENDIF 129: SLT TEMP[6].x, TEMP[0].yyyy, IMM[2].yyyy 130: IF TEMP[6].xxxx :135 131: MUL TEMP[6].x, IMM[0].yyyy, TEMP[8].xxxx 132: MAD TEMP[11].x, TEMP[6].xxxx, TEMP[7].yyyy, TEMP[9].xxxx 133: MUL TEMP[6].x, TEMP[0].yyyy, TEMP[11].xxxx 134: MOV TEMP[10].y, TEMP[6].xxxx 135: ELSE :143 136: MUL TEMP[6].x, IMM[0].yyyy, TEMP[8].xxxx 137: ADD TEMP[11].x, IMM[0].zzzz, -TEMP[7].yyyy 138: MAD TEMP[12].x, TEMP[6].xxxx, TEMP[11].xxxx, TEMP[9].xxxx 139: ADD TEMP[6].x, IMM[0].zzzz, -TEMP[10].yyyy 140: MUL TEMP[11].x, TEMP[12].xxxx, TEMP[6].xxxx 141: ADD TEMP[6].x, IMM[0].zzzz, -TEMP[11].xxxx 142: MOV TEMP[10].y, TEMP[6].xxxx 143: ENDIF 144: SLT TEMP[6].x, TEMP[0].zzzz, IMM[2].yyyy 145: IF TEMP[6].xxxx :150 146: MUL TEMP[6].x, IMM[0].yyyy, TEMP[8].xxxx 147: MAD TEMP[11].x, TEMP[6].xxxx, TEMP[7].zzzz, TEMP[9].xxxx 148: MUL TEMP[6].x, TEMP[0].zzzz, TEMP[11].xxxx 149: MOV TEMP[10].z, TEMP[6].xxxx 150: ELSE :158 151: MUL TEMP[6].x, IMM[0].yyyy, TEMP[8].xxxx 152: ADD TEMP[8].x, IMM[0].zzzz, -TEMP[7].zzzz 153: MAD TEMP[7].x, TEMP[6].xxxx, TEMP[8].xxxx, TEMP[9].xxxx 154: ADD TEMP[6].x, IMM[0].zzzz, -TEMP[10].zzzz 155: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[6].xxxx 156: ADD TEMP[6].x, IMM[0].zzzz, -TEMP[8].xxxx 157: MOV TEMP[10].z, TEMP[6].xxxx 158: ENDIF 159: MAD TEMP[6], TEMP[5], TEMP[10], TEMP[1] 160: ADD TEMP[1].xyz, CONST[19].xyzz, TEMP[2].xyzz 161: MOV TEMP[2].w, IMM[0].zzzz 162: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[1].xyzz 163: RSQ TEMP[7].x, TEMP[5].xxxx 164: MUL TEMP[5].xyz, TEMP[1].xyzz, TEMP[7].xxxx 165: DP3 TEMP[1].x, TEMP[5].xyzz, TEMP[3].xyzz 166: MAX TEMP[5].x, TEMP[1].xxxx, IMM[0].xxxx 167: POW TEMP[1].x, TEMP[5].xxxx, IMM[1].zzzz 168: MUL TEMP[5].x, IMM[0].wwww, TEMP[1].xxxx 169: MUL TEMP[2].xyz, TEMP[5].xxxx, CONST[16].xyzx 170: ADD TEMP[1], TEMP[4], TEMP[2] 171: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[15].xyzz 172: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz 173: RSQ TEMP[5].x, TEMP[4].xxxx 174: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[5].xxxx 175: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz 176: RSQ TEMP[2].x, TEMP[5].xxxx 177: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx 178: CMP TEMP[2].x, -TEMP[5].xxxx, TEMP[2].xxxx, IMM[0].xxxx 179: ADD TEMP[5].x, IMM[1].zzzz, TEMP[2].xxxx 180: RCP TEMP[2].x, TEMP[5].xxxx 181: MUL TEMP[5].x, IMM[1].zzzz, TEMP[2].xxxx 182: DP3 TEMP[2].x, TEMP[4].xyzz, CONST[14].xyzz 183: SLE TEMP[7].x, TEMP[2].xxxx, IMM[2].zzzz 184: IF TEMP[7].xxxx :186 185: MOV TEMP[7].x, IMM[0].xxxx 186: ELSE :197 187: ADD TEMP[8].x, TEMP[2].xxxx, IMM[3].xxxx 188: MUL TEMP[9].x, TEMP[8].xxxx, IMM[3].yyyy 189: MOV_SAT TEMP[8].x, TEMP[9].xxxx 190: MUL TEMP[9].x, IMM[0].yyyy, TEMP[8].xxxx 191: ADD TEMP[10].x, IMM[3].zzzz, -TEMP[9].xxxx 192: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 193: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 194: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx 195: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[8].xxxx 196: MOV TEMP[7].x, TEMP[2].xxxx 197: ENDIF 198: SLT TEMP[2].x, TEMP[7].xxxx, IMM[3].wwww 199: IF TEMP[2].xxxx :201 200: MOV TEMP[2].x, IMM[0].xxxx 201: ELSE :203 202: MOV TEMP[2].x, TEMP[7].xxxx 203: ENDIF 204: DP3 TEMP[5].x, TEMP[3].xyzz, TEMP[4].xyzz 205: MUL TEMP[4].x, TEMP[5].xxxx, TEMP[2].xxxx 206: MAX TEMP[2].x, TEMP[4].xxxx, IMM[0].xxxx 207: SLE TEMP[4].x, TEMP[5].xxxx, IMM[0].xxxx 208: IF TEMP[4].xxxx :210 209: MOV TEMP[4].x, IMM[0].xxxx 210: ELSE :222 211: MUL TEMP[5], CONST[9], IN[1].xxxx 212: MAD TEMP[7], CONST[10], IN[1].yyyy, TEMP[5] 213: MAD TEMP[5], CONST[11], IN[1].zzzz, TEMP[7] 214: ADD TEMP[7], TEMP[5], CONST[12] 215: MUL TEMP[5].x, IMM[4].xxxx, TEMP[7].wwww 216: ADD TEMP[8].x, TEMP[7].zzzz, -TEMP[5].xxxx 217: MOV TEMP[5], TEMP[7].xyyy 218: MOV TEMP[5].w, TEMP[7].wwww 219: MOV TEMP[5].z, TEMP[8].xxxx 220: TXP TEMP[7].x, TEMP[5], SAMP[1], SHADOW2D 221: MOV TEMP[4].x, TEMP[7].xxxx 222: ENDIF 223: MOV TEMP[5].w, IMM[0].xxxx 224: MUL TEMP[7].x, TEMP[2].xxxx, CONST[8].xxxx 225: ADD TEMP[2].x, IMM[0].zzzz, -TEMP[4].xxxx 226: MUL TEMP[4].x, TEMP[7].xxxx, TEMP[2].xxxx 227: MUL TEMP[5].xyz, TEMP[0].xyzx, TEMP[4].xxxx 228: ADD TEMP[2], TEMP[6], -TEMP[5] 229: ADD TEMP[4].xyz, IN[1].xyzz, -CONST[7].xyzz 230: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz 231: RSQ TEMP[6].x, TEMP[5].xxxx 232: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[6].xxxx 233: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz 234: RSQ TEMP[4].x, TEMP[6].xxxx 235: MUL TEMP[4].x, TEMP[4].xxxx, TEMP[6].xxxx 236: CMP TEMP[4].x, -TEMP[6].xxxx, TEMP[4].xxxx, IMM[0].xxxx 237: ADD TEMP[6].x, IMM[1].zzzz, TEMP[4].xxxx 238: RCP TEMP[4].x, TEMP[6].xxxx 239: MUL TEMP[6].x, IMM[1].zzzz, TEMP[4].xxxx 240: DP3 TEMP[4].x, TEMP[5].xyzz, CONST[6].xyzz 241: SLE TEMP[7].x, TEMP[4].xxxx, IMM[2].zzzz 242: IF TEMP[7].xxxx :244 243: MOV TEMP[7].x, IMM[0].xxxx 244: ELSE :255 245: ADD TEMP[8].x, TEMP[4].xxxx, IMM[3].xxxx 246: MUL TEMP[9].x, TEMP[8].xxxx, IMM[3].yyyy 247: MOV_SAT TEMP[8].x, TEMP[9].xxxx 248: MUL TEMP[9].x, IMM[0].yyyy, TEMP[8].xxxx 249: ADD TEMP[10].x, IMM[3].zzzz, -TEMP[9].xxxx 250: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 251: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 252: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[10].xxxx 253: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[8].xxxx 254: MOV TEMP[7].x, TEMP[4].xxxx 255: ENDIF 256: SLT TEMP[4].x, TEMP[7].xxxx, IMM[3].wwww 257: IF TEMP[4].xxxx :259 258: MOV TEMP[4].x, IMM[0].xxxx 259: ELSE :261 260: MOV TEMP[4].x, TEMP[7].xxxx 261: ENDIF 262: DP3 TEMP[6].x, TEMP[3].xyzz, TEMP[5].xyzz 263: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[4].xxxx 264: MAX TEMP[4].x, TEMP[3].xxxx, IMM[0].xxxx 265: SLE TEMP[3].x, TEMP[6].xxxx, IMM[0].xxxx 266: IF TEMP[3].xxxx :268 267: MOV TEMP[3].x, IMM[0].xxxx 268: ELSE :280 269: MUL TEMP[5], CONST[1], IN[1].xxxx 270: MAD TEMP[6], CONST[2], IN[1].yyyy, TEMP[5] 271: MAD TEMP[5], CONST[3], IN[1].zzzz, TEMP[6] 272: ADD TEMP[6], TEMP[5], CONST[4] 273: MUL TEMP[5].x, IMM[4].xxxx, TEMP[6].wwww 274: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[5].xxxx 275: MOV TEMP[5], TEMP[6].xyyy 276: MOV TEMP[5].w, TEMP[6].wwww 277: MOV TEMP[5].z, TEMP[7].xxxx 278: TXP TEMP[6].x, TEMP[5], SAMP[0], SHADOW2D 279: MOV TEMP[3].x, TEMP[6].xxxx 280: ENDIF 281: MOV TEMP[5].w, IMM[0].xxxx 282: MUL TEMP[6].x, TEMP[4].xxxx, CONST[0].xxxx 283: ADD TEMP[4].x, IMM[0].zzzz, -TEMP[3].xxxx 284: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[4].xxxx 285: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[3].xxxx 286: MOV TEMP[5].xyz, TEMP[4].xyzx 287: ADD TEMP[0], TEMP[2], -TEMP[5] 288: ADD TEMP[2].xyz, TEMP[0], TEMP[1] 289: MOV TEMP[0].xyz, TEMP[2].xyzx 290: MOV TEMP[0].w, IMM[0].zzzz 291: SEQ TEMP[1].x, CONST[29].wwww, IMM[0].xxxx 292: IF TEMP[1].xxxx :298 293: DP3 TEMP[1].x, IN[1].xyzz, IN[1].xyzz 294: RSQ TEMP[2].x, TEMP[1].xxxx 295: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx 296: CMP TEMP[2].x, -TEMP[1].xxxx, TEMP[2].xxxx, IMM[0].xxxx 297: MOV TEMP[1].x, TEMP[2].xxxx 298: ELSE :300 299: MOV TEMP[1].x, -IN[1].zzzz 300: ENDIF 301: ADD TEMP[2].x, TEMP[1].xxxx, IMM[4].yyyy 302: MUL TEMP[1].x, TEMP[2].xxxx, IMM[4].zzzz 303: MOV_SAT TEMP[2].x, TEMP[1].xxxx 304: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx 305: ADD TEMP[2].x, IMM[0].zzzz, -TEMP[1].xxxx 306: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[2].xxxx 307: MOV_SAT TEMP[2].x, TEMP[1].xxxx 308: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[2].xxxx 309: MUL TEMP[3], TEMP[0], TEMP[1].xxxx 310: MAD TEMP[0], IMM[5], TEMP[2].xxxx, TEMP[3] 311: MOV TEMP[1].w, IMM[0].zzzz 312: MOV TEMP[1].xyz, TEMP[0].xyzx 313: MOV OUT[0], TEMP[1] 314: END # Vertex Program/Shader 48 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[19].xy, INPUT[18].xyxx; 13: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[17].xxxx; 14: MAD TEMP[1].xyz, STATE[9].xyzz, INPUT[17].yyyy, TEMP[0].xyzz; 15: MAD OUTPUT[18].xyz, STATE[10].xyzx, INPUT[17].zzzx, TEMP[1].xyzx; 16: END InputsRead: 0x60005 (0b110,00000000,00000101) OutputsWritten: 0xf0001 (0b1111,00000000,00000001) NumInstructions=17 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {1.61, 0.0383, -0.25, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {-0.25, -0.0388, -1.61, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-0.0438, 1.63, -0.0325, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {1.04, -1.85, -14.4, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {0.605, 0.0143, -0.0938, -1.95} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {-0.0935, -0.0145, -0.605, -8.64} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-0.0164, 0.612, -0.0122, 0.971} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL OUT[4], GENERIC[13] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[4].xy, IN[3].xyxx 13: MUL TEMP[0].xyz, CONST[8].xyzz, IN[2].xxxx 14: MAD TEMP[1].xyz, CONST[9].xyzz, IN[2].yyyy, TEMP[0].xyzz 15: MAD OUT[3].xyz, CONST[10].xyzx, IN[2].zzzx, TEMP[1].xyzx 16: END # Fragment Program/Shader 54 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: TEX TEMP[0], INPUT[16].xyyy, texture[0], 2D; 5: ADD TEMP[2].x, CONST[9].xxxx, TEMP[0].-w-w-w-w; 6: MUL TEMP[3].xyz, TEMP[0].wwww, TEMP[0].xyzz; 7: MAD TEMP[0].xyz, TEMP[2].xxxx, CONST[10], TEMP[3].xyzz; 8: MOV TEMP[2].w, CONST[9].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: MOV TEMP[3].w, CONST[9].xxxx; 11: MOV TEMP[3].xyz, TEMP[0].xyzx; 12: DP3 TEMP[0].x, TEMP[1].xyzz, UNIFORM[1].xyzz; 13: MAX TEMP[4].x, TEMP[0].xxxx, CONST[9].yyyy; 14: MUL TEMP[0], UNIFORM[0], TEMP[4].xxxx; 15: DP3 TEMP[4].x, TEMP[1].xyzz, UNIFORM[3].xyzz; 16: MAD TEMP[1].x, CONST[9].zzzz, TEMP[4].xxxx, CONST[9].zzzz; 17: MAX TEMP[4].x, TEMP[1].xxxx, CONST[9].yyyy; 18: MUL TEMP[1], UNIFORM[2], TEMP[4].xxxx; 19: MAD TEMP[4].xyz, TEMP[1], TEMP[2], CONST[11]; 20: MAD TEMP[1].xyz, TEMP[0], TEMP[3], TEMP[4]; 21: MOV TEMP[0].xyz, TEMP[1].xyzx; 22: MOV TEMP[0].w, CONST[9].xxxx; 23: SEQ TEMP[1].x, STATE[8].wwww, CONST[9].yyyy; 24: IF TEMP[1].xxxx; # (if false, goto 30); 25: DP3 TEMP[1].x, INPUT[15].xyzz, INPUT[15].xyzz; 26: RSQ TEMP[2].x, TEMP[1].xxxx; 27: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx; 28: CMP TEMP[2].x, TEMP[1].-x-x-x-x, TEMP[2].xxxx, CONST[9].yyyy; 29: MOV TEMP[1].x, TEMP[2].xxxx; 30: ELSE; # (goto 32) 31: MOV TEMP[1].x, INPUT[15].-z-z-z-z; 32: ENDIF; 33: ADD TEMP[2].x, TEMP[1].xxxx, CONST[9].wwww; 34: MUL TEMP[1].x, TEMP[2].xxxx, CONST[10].wwww; 35: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 36: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx; 37: ADD TEMP[2].x, CONST[9].xxxx, TEMP[1].-x-x-x-x; 38: ADD TEMP[1].x, CONST[9].xxxx, TEMP[2].-x-x-x-x; 39: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 40: ADD TEMP[1].x, CONST[9].xxxx, TEMP[2].-x-x-x-x; 41: MUL TEMP[3], TEMP[0], TEMP[1].xxxx; 42: MAD TEMP[0], CONST[12], TEMP[2].xxxx, TEMP[3]; 43: MOV TEMP[1].w, CONST[9].xxxx; 44: MOV TEMP[1].xyz, TEMP[0].xyzx; 45: MOV OUTPUT[2], TEMP[1]; 46: END InputsRead: 0x1c000 (0b1,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=47 NumTemporaries=5 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1 (0b1) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=4 UNIFORM unf52 = {2.2, 1.97, 1.79, 2.2} param[1] sz=3 UNIFORM unf40 = {0.233, -0.601, -0.764, 0} param[2] sz=4 UNIFORM unf34 = {0.551, 0.557, 0.68, 0.68} param[3] sz=3 UNIFORM unf20 = {-0.243, -0.303, 0.922, 0} param[4] sz=4 SAMPLER samp0 = {0, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[7] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[8] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[9] sz=4 CONST (null) = {1, 0, 0.5, -6} param[10] sz=4 CONST (null) = {0.689, 0.652, 0.418, 0.0385} param[11] sz=4 CONST (null) = {0, 0, 0, 1} param[12] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL CONST[0..3] DCL CONST[5..8] DCL TEMP[0..4] IMM FLT32 { 1.0000, 0.0000, 0.5000, -6.0000} IMM FLT32 { 0.6890, 0.6521, 0.4178, 0.0385} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: TEX TEMP[0], IN[2].xyyy, SAMP[0], 2D 5: ADD TEMP[2].x, IMM[0].xxxx, -TEMP[0].wwww 6: MUL TEMP[3].xyz, TEMP[0].wwww, TEMP[0].xyzz 7: MAD TEMP[0].xyz, TEMP[2].xxxx, IMM[1], TEMP[3].xyzz 8: MOV TEMP[2].w, IMM[0].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: MOV TEMP[3].w, IMM[0].xxxx 11: MOV TEMP[3].xyz, TEMP[0].xyzx 12: DP3 TEMP[0].x, TEMP[1].xyzz, CONST[1].xyzz 13: MAX TEMP[4].x, TEMP[0].xxxx, IMM[0].yyyy 14: MUL TEMP[0], CONST[0], TEMP[4].xxxx 15: DP3 TEMP[4].x, TEMP[1].xyzz, CONST[3].xyzz 16: MAD TEMP[1].x, IMM[0].zzzz, TEMP[4].xxxx, IMM[0].zzzz 17: MAX TEMP[4].x, TEMP[1].xxxx, IMM[0].yyyy 18: MUL TEMP[1], CONST[2], TEMP[4].xxxx 19: MAD TEMP[4].xyz, TEMP[1], TEMP[2], IMM[0].yyyx 20: MAD TEMP[1].xyz, TEMP[0], TEMP[3], TEMP[4] 21: MOV TEMP[0].xyz, TEMP[1].xyzx 22: MOV TEMP[0].w, IMM[0].xxxx 23: SEQ TEMP[1].x, CONST[8].wwww, IMM[0].yyyy 24: IF TEMP[1].xxxx :30 25: DP3 TEMP[1].x, IN[1].xyzz, IN[1].xyzz 26: RSQ TEMP[2].x, TEMP[1].xxxx 27: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx 28: CMP TEMP[2].x, -TEMP[1].xxxx, TEMP[2].xxxx, IMM[0].yyyy 29: MOV TEMP[1].x, TEMP[2].xxxx 30: ELSE :32 31: MOV TEMP[1].x, -IN[1].zzzz 32: ENDIF 33: ADD TEMP[2].x, TEMP[1].xxxx, IMM[0].wwww 34: MUL TEMP[1].x, TEMP[2].xxxx, IMM[1].wwww 35: MOV_SAT TEMP[2].x, TEMP[1].xxxx 36: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx 37: ADD TEMP[2].x, IMM[0].xxxx, -TEMP[1].xxxx 38: ADD TEMP[1].x, IMM[0].xxxx, -TEMP[2].xxxx 39: MOV_SAT TEMP[2].x, TEMP[1].xxxx 40: ADD TEMP[1].x, IMM[0].xxxx, -TEMP[2].xxxx 41: MUL TEMP[3], TEMP[0], TEMP[1].xxxx 42: MAD TEMP[0], IMM[2], TEMP[2].xxxx, TEMP[3] 43: MOV TEMP[1].w, IMM[0].xxxx 44: MOV TEMP[1].xyz, TEMP[0].xyzx 45: MOV OUT[0], TEMP[1] 46: END # Vertex Program/Shader 54 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[18].xy, INPUT[17].xyxx; 13: END InputsRead: 0x20005 (0b10,00000000,00000101) OutputsWritten: 0x70001 (0b111,00000000,00000001) NumInstructions=14 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {0.318, 0.0642, -0.228, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {-0.231, -0.000692, -0.323, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-0.0526, 0.392, 0.0368, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {-1.3, -0.992, -9.67, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {2.02, 0.408, -1.45, -11} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {-1.47, -0.0044, -2.05, -21.7} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-0.334, 2.49, 0.233, 4.29} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[3].xy, IN[2].xyxx 13: END # Fragment Program/Shader 57 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[26].wwww, CONST[27].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[28].xyzx; 12: ENDIF; 13: TEX TEMP[0], INPUT[16].xyyy, texture[2], 2D; 14: MOV_SAT TEMP[3].x, TEMP[0].wwww; 15: MOV TEMP[4].w, CONST[27].yyyy; 16: MOV TEMP[4].xyz, TEMP[0].xyzx; 17: MOV TEMP[5].w, CONST[27].yyyy; 18: MOV TEMP[5].xyz, TEMP[0].xyzx; 19: ADD TEMP[6].xyz, UNIFORM[21].xyzz, TEMP[2].xyzz; 20: MOV TEMP[7].w, CONST[27].yyyy; 21: DP3 TEMP[8].x, TEMP[6].xyzz, TEMP[6].xyzz; 22: RSQ TEMP[9].x, TEMP[8].xxxx; 23: MUL TEMP[8].xyz, TEMP[6].xyzz, TEMP[9].xxxx; 24: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[8].xyzz; 25: MAD TEMP[8].x, CONST[27].wwww, TEMP[6].xxxx, CONST[27].wwww; 26: POW TEMP[6].x, TEMP[8].xxxx, CONST[28].wwww; 27: MUL TEMP[8].x, CONST[27].zzzz, TEMP[6].xxxx; 28: MUL TEMP[7].xyz, TEMP[8].xxxx, UNIFORM[19].xyzx; 29: MOV TEMP[6].w, CONST[27].yyyy; 30: MOV TEMP[6].xyz, TEMP[0].xyzx; 31: DP3 TEMP[8].x, TEMP[1].xyzz, UNIFORM[18].xyzz; 32: MAX TEMP[9].x, TEMP[8].xxxx, CONST[27].xxxx; 33: MUL TEMP[8], UNIFORM[17], TEMP[9].xxxx; 34: DP3 TEMP[9].x, TEMP[1].xyzz, UNIFORM[21].xyzz; 35: MAD TEMP[10].x, CONST[27].wwww, TEMP[9].xxxx, CONST[27].wwww; 36: MAX TEMP[9].x, TEMP[10].xxxx, CONST[27].xxxx; 37: MUL TEMP[10], UNIFORM[20], TEMP[9].xxxx; 38: MUL TEMP[9], TEMP[4], CONST[29].xxxx; 39: MAD TEMP[4], TEMP[10], TEMP[5], TEMP[9]; 40: MAD TEMP[5], TEMP[8], TEMP[6], TEMP[4]; 41: ADD TEMP[4].xyz, UNIFORM[18].xyzz, TEMP[2].xyzz; 42: MOV TEMP[2].w, CONST[27].yyyy; 43: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz; 44: RSQ TEMP[8].x, TEMP[6].xxxx; 45: MUL TEMP[6].xyz, TEMP[4].xyzz, TEMP[8].xxxx; 46: DP3 TEMP[4].x, TEMP[6].xyzz, TEMP[1].xyzz; 47: MAX TEMP[6].x, TEMP[4].xxxx, CONST[27].xxxx; 48: POW TEMP[4].x, TEMP[6].xxxx, CONST[28].wwww; 49: MUL TEMP[6].x, CONST[27].zzzz, TEMP[4].xxxx; 50: MUL TEMP[2].xyz, TEMP[6].xxxx, UNIFORM[16].xyzx; 51: ADD TEMP[4], CONST[27].xxxy, TEMP[7]; 52: ADD TEMP[6], TEMP[4], TEMP[2]; 53: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[15].-x-y-z-z; 54: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz; 55: RSQ TEMP[7].x, TEMP[4].xxxx; 56: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[7].xxxx; 57: DP3 TEMP[7].x, TEMP[2].xyzz, TEMP[2].xyzz; 58: RSQ TEMP[2].x, TEMP[7].xxxx; 59: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[7].xxxx; 60: CMP TEMP[2].x, TEMP[7].-x-x-x-x, TEMP[2].xxxx, CONST[27].xxxx; 61: ADD TEMP[7].x, CONST[29].yyyy, TEMP[2].xxxx; 62: RCP TEMP[2].x, TEMP[7].xxxx; 63: MUL TEMP[7].x, CONST[29].yyyy, TEMP[2].xxxx; 64: DP3 TEMP[2].x, TEMP[4].xyzz, UNIFORM[14].xyzz; 65: SLE TEMP[8].x, TEMP[2].xxxx, CONST[29].zzzz; 66: IF TEMP[8].xxxx; # (if false, goto 68); 67: MOV TEMP[8].x, CONST[27].xxxx; 68: ELSE; # (goto 79) 69: ADD TEMP[9].x, TEMP[2].xxxx, CONST[29].wwww; 70: MUL TEMP[10].x, TEMP[9].xxxx, CONST[30].xxxx; 71: MOV_SAT TEMP[9].x, TEMP[10].xxxx; 72: MUL TEMP[10].x, CONST[30].zzzz, TEMP[9].xxxx; 73: ADD TEMP[11].x, CONST[30].yyyy, TEMP[10].-x-x-x-x; 74: MUL TEMP[10].x, TEMP[9].xxxx, TEMP[11].xxxx; 75: MUL TEMP[11].x, TEMP[9].xxxx, TEMP[10].xxxx; 76: MUL TEMP[9].x, TEMP[2].xxxx, TEMP[11].xxxx; 77: MUL TEMP[2].x, TEMP[7].xxxx, TEMP[9].xxxx; 78: MOV TEMP[8].x, TEMP[2].xxxx; 79: ENDIF; 80: SLT TEMP[2].x, TEMP[8].xxxx, CONST[30].wwww; 81: IF TEMP[2].xxxx; # (if false, goto 83); 82: MOV TEMP[2].x, CONST[27].xxxx; 83: ELSE; # (goto 85) 84: MOV TEMP[2].x, TEMP[8].xxxx; 85: ENDIF; 86: DP3 TEMP[7].x, TEMP[1].xyzz, TEMP[4].xyzz; 87: MUL TEMP[4].x, TEMP[7].xxxx, TEMP[2].xxxx; 88: MAX TEMP[2].x, TEMP[4].xxxx, CONST[27].xxxx; 89: SLE TEMP[4].x, TEMP[7].xxxx, CONST[27].xxxx; 90: IF TEMP[4].xxxx; # (if false, goto 92); 91: MOV TEMP[4].x, CONST[27].xxxx; 92: ELSE; # (goto 104) 93: MUL TEMP[7], UNIFORM[9], INPUT[15].xxxx; 94: MAD TEMP[8], UNIFORM[10], INPUT[15].yyyy, TEMP[7]; 95: MAD TEMP[7], UNIFORM[11], INPUT[15].zzzz, TEMP[8]; 96: ADD TEMP[8], TEMP[7], UNIFORM[12]; 97: MUL TEMP[7].x, CONST[31].xxxx, TEMP[8].wwww; 98: ADD TEMP[9].x, TEMP[8].zzzz, TEMP[7].-x-x-x-x; 99: MOV TEMP[7], TEMP[8].xyyy; 100: MOV TEMP[7].w, TEMP[8].wwww; 101: MOV TEMP[7].z, TEMP[9].xxxx; 102: TXP TEMP[8].x, TEMP[7], texture[1], 2D SHADOW; 103: MOV TEMP[4].x, TEMP[8].xxxx; 104: ENDIF; 105: MOV TEMP[7].w, CONST[27].xxxx; 106: MUL TEMP[8].x, TEMP[2].xxxx, UNIFORM[8].xxxx; 107: ADD TEMP[2].x, CONST[27].yyyy, TEMP[4].-x-x-x-x; 108: MUL TEMP[4].x, TEMP[8].xxxx, TEMP[2].xxxx; 109: MUL TEMP[7].xyz, TEMP[0].xyzx, TEMP[4].xxxx; 110: ADD TEMP[2], TEMP[5], TEMP[7].-x-y-z-w; 111: ADD TEMP[4].xyz, INPUT[15].xyzz, UNIFORM[7].-x-y-z-z; 112: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz; 113: RSQ TEMP[7].x, TEMP[5].xxxx; 114: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[7].xxxx; 115: DP3 TEMP[7].x, TEMP[4].xyzz, TEMP[4].xyzz; 116: RSQ TEMP[4].x, TEMP[7].xxxx; 117: MUL TEMP[4].x, TEMP[4].xxxx, TEMP[7].xxxx; 118: CMP TEMP[4].x, TEMP[7].-x-x-x-x, TEMP[4].xxxx, CONST[27].xxxx; 119: ADD TEMP[7].x, CONST[29].yyyy, TEMP[4].xxxx; 120: RCP TEMP[4].x, TEMP[7].xxxx; 121: MUL TEMP[7].x, CONST[29].yyyy, TEMP[4].xxxx; 122: DP3 TEMP[4].x, TEMP[5].xyzz, UNIFORM[6].xyzz; 123: SLE TEMP[8].x, TEMP[4].xxxx, CONST[29].zzzz; 124: IF TEMP[8].xxxx; # (if false, goto 126); 125: MOV TEMP[8].x, CONST[27].xxxx; 126: ELSE; # (goto 137) 127: ADD TEMP[9].x, TEMP[4].xxxx, CONST[29].wwww; 128: MUL TEMP[10].x, TEMP[9].xxxx, CONST[30].xxxx; 129: MOV_SAT TEMP[9].x, TEMP[10].xxxx; 130: MUL TEMP[10].x, CONST[30].zzzz, TEMP[9].xxxx; 131: ADD TEMP[11].x, CONST[30].yyyy, TEMP[10].-x-x-x-x; 132: MUL TEMP[10].x, TEMP[9].xxxx, TEMP[11].xxxx; 133: MUL TEMP[11].x, TEMP[9].xxxx, TEMP[10].xxxx; 134: MUL TEMP[9].x, TEMP[4].xxxx, TEMP[11].xxxx; 135: MUL TEMP[4].x, TEMP[7].xxxx, TEMP[9].xxxx; 136: MOV TEMP[8].x, TEMP[4].xxxx; 137: ENDIF; 138: SLT TEMP[4].x, TEMP[8].xxxx, CONST[30].wwww; 139: IF TEMP[4].xxxx; # (if false, goto 141); 140: MOV TEMP[4].x, CONST[27].xxxx; 141: ELSE; # (goto 143) 142: MOV TEMP[4].x, TEMP[8].xxxx; 143: ENDIF; 144: DP3 TEMP[7].x, TEMP[1].xyzz, TEMP[5].xyzz; 145: MUL TEMP[1].x, TEMP[7].xxxx, TEMP[4].xxxx; 146: MAX TEMP[4].x, TEMP[1].xxxx, CONST[27].xxxx; 147: SLE TEMP[1].x, TEMP[7].xxxx, CONST[27].xxxx; 148: IF TEMP[1].xxxx; # (if false, goto 150); 149: MOV TEMP[1].x, CONST[27].xxxx; 150: ELSE; # (goto 162) 151: MUL TEMP[5], UNIFORM[1], INPUT[15].xxxx; 152: MAD TEMP[7], UNIFORM[2], INPUT[15].yyyy, TEMP[5]; 153: MAD TEMP[5], UNIFORM[3], INPUT[15].zzzz, TEMP[7]; 154: ADD TEMP[7], TEMP[5], UNIFORM[4]; 155: MUL TEMP[5].x, CONST[31].xxxx, TEMP[7].wwww; 156: ADD TEMP[8].x, TEMP[7].zzzz, TEMP[5].-x-x-x-x; 157: MOV TEMP[5], TEMP[7].xyyy; 158: MOV TEMP[5].w, TEMP[7].wwww; 159: MOV TEMP[5].z, TEMP[8].xxxx; 160: TXP TEMP[7].x, TEMP[5], texture[0], 2D SHADOW; 161: MOV TEMP[1].x, TEMP[7].xxxx; 162: ENDIF; 163: MOV TEMP[5].w, CONST[27].xxxx; 164: MUL TEMP[7].x, TEMP[4].xxxx, UNIFORM[0].xxxx; 165: ADD TEMP[4].x, CONST[27].yyyy, TEMP[1].-x-x-x-x; 166: MUL TEMP[1].x, TEMP[7].xxxx, TEMP[4].xxxx; 167: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[1].xxxx; 168: MOV TEMP[5].xyz, TEMP[4].xyzx; 169: ADD TEMP[0], TEMP[2], TEMP[5].-x-y-z-w; 170: ADD TEMP[1].xyz, TEMP[0], TEMP[6]; 171: MOV TEMP[0].xyz, TEMP[1].xyzx; 172: MOV TEMP[0].w, TEMP[3].xxxx; 173: SEQ TEMP[1].x, STATE[26].wwww, CONST[27].xxxx; 174: IF TEMP[1].xxxx; # (if false, goto 180); 175: DP3 TEMP[1].x, INPUT[15].xyzz, INPUT[15].xyzz; 176: RSQ TEMP[2].x, TEMP[1].xxxx; 177: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx; 178: CMP TEMP[2].x, TEMP[1].-x-x-x-x, TEMP[2].xxxx, CONST[27].xxxx; 179: MOV TEMP[1].x, TEMP[2].xxxx; 180: ELSE; # (goto 182) 181: MOV TEMP[1].x, INPUT[15].-z-z-z-z; 182: ENDIF; 183: ADD TEMP[2].x, TEMP[1].xxxx, CONST[31].yyyy; 184: MUL TEMP[1].x, TEMP[2].xxxx, CONST[31].zzzz; 185: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 186: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx; 187: ADD TEMP[2].x, CONST[27].yyyy, TEMP[1].-x-x-x-x; 188: ADD TEMP[1].x, CONST[27].yyyy, TEMP[2].-x-x-x-x; 189: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 190: ADD TEMP[1].x, CONST[27].yyyy, TEMP[2].-x-x-x-x; 191: MUL TEMP[4], TEMP[0], TEMP[1].xxxx; 192: MAD TEMP[0], CONST[32], TEMP[2].xxxx, TEMP[4]; 193: MOV TEMP[0].w, TEMP[3].xxxx; 194: MOV OUTPUT[2], TEMP[0]; 195: END InputsRead: 0x1c000 (0b1,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=196 NumTemporaries=12 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x7 (0b111) Samplers=[ 2 1 0 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=1 UNIFORM unf174 = {1, 0, 0, 0} param[1] sz=16 UNIFORM unf168 = {5.7, -0.0767, 0.249, 0.191} param[2] sz=12 UNIFORM unf168 = {0.565, -1.44, -1.26, -0.969} param[3] sz=8 UNIFORM unf168 = {-0.271, -5.55, 0.208, 0.159} param[4] sz=4 UNIFORM unf168 = {17.1, -8.62, -8.83, 0.23} param[5] sz=4 SAMPLER samp2 = {0, 0, 0, 0} param[6] sz=3 UNIFORM unf149 = {0.191, -0.969, 0.159, 0} param[7] sz=3 UNIFORM unf142 = {-3.01, -0.58, -1.36, 0} param[8] sz=1 UNIFORM unf135 = {1, 0, 0, 0} param[9] sz=16 UNIFORM unf129 = {5.7, -0.0767, 0.249, 0.191} param[10] sz=12 UNIFORM unf129 = {0.565, -1.44, -1.26, -0.969} param[11] sz=8 UNIFORM unf129 = {-0.271, -5.55, 0.208, 0.159} param[12] sz=4 UNIFORM unf129 = {2.33, 3.5, 2.15, 8.65} param[13] sz=4 SAMPLER samp1 = {1, 0, 0, 0} param[14] sz=3 UNIFORM unf110 = {0.191, -0.969, 0.159, 0} param[15] sz=3 UNIFORM unf103 = {-1.32, 8.42, -1.54, 0} param[16] sz=3 UNIFORM unf96 = {2.2, 1.97, 1.79, 0} param[17] sz=4 UNIFORM unf79 = {2.2, 1.97, 1.79, 2.2} param[18] sz=3 UNIFORM unf67 = {0.233, -0.601, -0.764, 0} param[19] sz=3 UNIFORM unf61 = {0.551, 0.557, 0.68, 0} param[20] sz=4 UNIFORM unf47 = {0.551, 0.557, 0.68, 0.68} param[21] sz=3 UNIFORM unf33 = {-0.243, -0.303, 0.922, 0} param[22] sz=4 SAMPLER samp0 = {2, 0, 0, 0} param[23] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[24] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[25] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[26] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[27] sz=4 CONST (null) = {0, 1, 0.24, 0.5} param[28] sz=4 CONST (null) = {0, 0, -1, 40} param[29] sz=4 CONST (null) = {0.1, 20, 0.996, -0.996} param[30] sz=4 CONST (null) = {1.75e+03, 3, 2, 0.001} param[31] sz=3 CONST (null) = {0.005, -6, 0.0385, 0} param[32] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL CONST[0..4] DCL CONST[6..12] DCL CONST[14..21] DCL CONST[23..26] DCL TEMP[0..11] IMM FLT32 { 0.0000, 1.0000, 0.2400, 0.5000} IMM FLT32 { 0.0000, -1.0000, 40.0000, 0.9063} IMM FLT32 { 0.1000, 20.0000, 0.9962, -0.9962} IMM FLT32 { 1751.3136, 3.0000, 2.0000, 0.0010} IMM FLT32 { 0.0050, -6.0000, 0.0385, 0.0000} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[26].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: TEX TEMP[0], IN[2].xyyy, SAMP[2], 2D 14: MOV_SAT TEMP[3].x, TEMP[0].wwww 15: MOV TEMP[4].w, IMM[0].yyyy 16: MOV TEMP[4].xyz, TEMP[0].xyzx 17: MOV TEMP[5].w, IMM[0].yyyy 18: MOV TEMP[5].xyz, TEMP[0].xyzx 19: ADD TEMP[6].xyz, CONST[21].xyzz, TEMP[2].xyzz 20: MOV TEMP[7].w, IMM[0].yyyy 21: DP3 TEMP[8].x, TEMP[6].xyzz, TEMP[6].xyzz 22: RSQ TEMP[9].x, TEMP[8].xxxx 23: MUL TEMP[8].xyz, TEMP[6].xyzz, TEMP[9].xxxx 24: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[8].xyzz 25: MAD TEMP[8].x, IMM[0].wwww, TEMP[6].xxxx, IMM[0].wwww 26: POW TEMP[6].x, TEMP[8].xxxx, IMM[1].zzzz 27: MUL TEMP[8].x, IMM[0].zzzz, TEMP[6].xxxx 28: MUL TEMP[7].xyz, TEMP[8].xxxx, CONST[19].xyzx 29: MOV TEMP[6].w, IMM[0].yyyy 30: MOV TEMP[6].xyz, TEMP[0].xyzx 31: DP3 TEMP[8].x, TEMP[1].xyzz, CONST[18].xyzz 32: MAX TEMP[9].x, TEMP[8].xxxx, IMM[0].xxxx 33: MUL TEMP[8], CONST[17], TEMP[9].xxxx 34: DP3 TEMP[9].x, TEMP[1].xyzz, CONST[21].xyzz 35: MAD TEMP[10].x, IMM[0].wwww, TEMP[9].xxxx, IMM[0].wwww 36: MAX TEMP[9].x, TEMP[10].xxxx, IMM[0].xxxx 37: MUL TEMP[10], CONST[20], TEMP[9].xxxx 38: MUL TEMP[9], TEMP[4], IMM[2].xxxx 39: MAD TEMP[4], TEMP[10], TEMP[5], TEMP[9] 40: MAD TEMP[5], TEMP[8], TEMP[6], TEMP[4] 41: ADD TEMP[4].xyz, CONST[18].xyzz, TEMP[2].xyzz 42: MOV TEMP[2].w, IMM[0].yyyy 43: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz 44: RSQ TEMP[8].x, TEMP[6].xxxx 45: MUL TEMP[6].xyz, TEMP[4].xyzz, TEMP[8].xxxx 46: DP3 TEMP[4].x, TEMP[6].xyzz, TEMP[1].xyzz 47: MAX TEMP[6].x, TEMP[4].xxxx, IMM[0].xxxx 48: POW TEMP[4].x, TEMP[6].xxxx, IMM[1].zzzz 49: MUL TEMP[6].x, IMM[0].zzzz, TEMP[4].xxxx 50: MUL TEMP[2].xyz, TEMP[6].xxxx, CONST[16].xyzx 51: ADD TEMP[4], IMM[0].xxxy, TEMP[7] 52: ADD TEMP[6], TEMP[4], TEMP[2] 53: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[15].xyzz 54: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz 55: RSQ TEMP[7].x, TEMP[4].xxxx 56: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[7].xxxx 57: DP3 TEMP[7].x, TEMP[2].xyzz, TEMP[2].xyzz 58: RSQ TEMP[2].x, TEMP[7].xxxx 59: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[7].xxxx 60: CMP TEMP[2].x, -TEMP[7].xxxx, TEMP[2].xxxx, IMM[0].xxxx 61: ADD TEMP[7].x, IMM[2].yyyy, TEMP[2].xxxx 62: RCP TEMP[2].x, TEMP[7].xxxx 63: MUL TEMP[7].x, IMM[2].yyyy, TEMP[2].xxxx 64: DP3 TEMP[2].x, TEMP[4].xyzz, CONST[14].xyzz 65: SLE TEMP[8].x, TEMP[2].xxxx, IMM[2].zzzz 66: IF TEMP[8].xxxx :68 67: MOV TEMP[8].x, IMM[0].xxxx 68: ELSE :79 69: ADD TEMP[9].x, TEMP[2].xxxx, IMM[2].wwww 70: MUL TEMP[10].x, TEMP[9].xxxx, IMM[3].xxxx 71: MOV_SAT TEMP[9].x, TEMP[10].xxxx 72: MUL TEMP[10].x, IMM[3].zzzz, TEMP[9].xxxx 73: ADD TEMP[11].x, IMM[3].yyyy, -TEMP[10].xxxx 74: MUL TEMP[10].x, TEMP[9].xxxx, TEMP[11].xxxx 75: MUL TEMP[11].x, TEMP[9].xxxx, TEMP[10].xxxx 76: MUL TEMP[9].x, TEMP[2].xxxx, TEMP[11].xxxx 77: MUL TEMP[2].x, TEMP[7].xxxx, TEMP[9].xxxx 78: MOV TEMP[8].x, TEMP[2].xxxx 79: ENDIF 80: SLT TEMP[2].x, TEMP[8].xxxx, IMM[3].wwww 81: IF TEMP[2].xxxx :83 82: MOV TEMP[2].x, IMM[0].xxxx 83: ELSE :85 84: MOV TEMP[2].x, TEMP[8].xxxx 85: ENDIF 86: DP3 TEMP[7].x, TEMP[1].xyzz, TEMP[4].xyzz 87: MUL TEMP[4].x, TEMP[7].xxxx, TEMP[2].xxxx 88: MAX TEMP[2].x, TEMP[4].xxxx, IMM[0].xxxx 89: SLE TEMP[4].x, TEMP[7].xxxx, IMM[0].xxxx 90: IF TEMP[4].xxxx :92 91: MOV TEMP[4].x, IMM[0].xxxx 92: ELSE :104 93: MUL TEMP[7], CONST[9], IN[1].xxxx 94: MAD TEMP[8], CONST[10], IN[1].yyyy, TEMP[7] 95: MAD TEMP[7], CONST[11], IN[1].zzzz, TEMP[8] 96: ADD TEMP[8], TEMP[7], CONST[12] 97: MUL TEMP[7].x, IMM[4].xxxx, TEMP[8].wwww 98: ADD TEMP[9].x, TEMP[8].zzzz, -TEMP[7].xxxx 99: MOV TEMP[7], TEMP[8].xyyy 100: MOV TEMP[7].w, TEMP[8].wwww 101: MOV TEMP[7].z, TEMP[9].xxxx 102: TXP TEMP[8].x, TEMP[7], SAMP[1], SHADOW2D 103: MOV TEMP[4].x, TEMP[8].xxxx 104: ENDIF 105: MOV TEMP[7].w, IMM[0].xxxx 106: MUL TEMP[8].x, TEMP[2].xxxx, CONST[8].xxxx 107: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[4].xxxx 108: MUL TEMP[4].x, TEMP[8].xxxx, TEMP[2].xxxx 109: MUL TEMP[7].xyz, TEMP[0].xyzx, TEMP[4].xxxx 110: ADD TEMP[2], TEMP[5], -TEMP[7] 111: ADD TEMP[4].xyz, IN[1].xyzz, -CONST[7].xyzz 112: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz 113: RSQ TEMP[7].x, TEMP[5].xxxx 114: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[7].xxxx 115: DP3 TEMP[7].x, TEMP[4].xyzz, TEMP[4].xyzz 116: RSQ TEMP[4].x, TEMP[7].xxxx 117: MUL TEMP[4].x, TEMP[4].xxxx, TEMP[7].xxxx 118: CMP TEMP[4].x, -TEMP[7].xxxx, TEMP[4].xxxx, IMM[0].xxxx 119: ADD TEMP[7].x, IMM[2].yyyy, TEMP[4].xxxx 120: RCP TEMP[4].x, TEMP[7].xxxx 121: MUL TEMP[7].x, IMM[2].yyyy, TEMP[4].xxxx 122: DP3 TEMP[4].x, TEMP[5].xyzz, CONST[6].xyzz 123: SLE TEMP[8].x, TEMP[4].xxxx, IMM[2].zzzz 124: IF TEMP[8].xxxx :126 125: MOV TEMP[8].x, IMM[0].xxxx 126: ELSE :137 127: ADD TEMP[9].x, TEMP[4].xxxx, IMM[2].wwww 128: MUL TEMP[10].x, TEMP[9].xxxx, IMM[3].xxxx 129: MOV_SAT TEMP[9].x, TEMP[10].xxxx 130: MUL TEMP[10].x, IMM[3].zzzz, TEMP[9].xxxx 131: ADD TEMP[11].x, IMM[3].yyyy, -TEMP[10].xxxx 132: MUL TEMP[10].x, TEMP[9].xxxx, TEMP[11].xxxx 133: MUL TEMP[11].x, TEMP[9].xxxx, TEMP[10].xxxx 134: MUL TEMP[9].x, TEMP[4].xxxx, TEMP[11].xxxx 135: MUL TEMP[4].x, TEMP[7].xxxx, TEMP[9].xxxx 136: MOV TEMP[8].x, TEMP[4].xxxx 137: ENDIF 138: SLT TEMP[4].x, TEMP[8].xxxx, IMM[3].wwww 139: IF TEMP[4].xxxx :141 140: MOV TEMP[4].x, IMM[0].xxxx 141: ELSE :143 142: MOV TEMP[4].x, TEMP[8].xxxx 143: ENDIF 144: DP3 TEMP[7].x, TEMP[1].xyzz, TEMP[5].xyzz 145: MUL TEMP[1].x, TEMP[7].xxxx, TEMP[4].xxxx 146: MAX TEMP[4].x, TEMP[1].xxxx, IMM[0].xxxx 147: SLE TEMP[1].x, TEMP[7].xxxx, IMM[0].xxxx 148: IF TEMP[1].xxxx :150 149: MOV TEMP[1].x, IMM[0].xxxx 150: ELSE :162 151: MUL TEMP[5], CONST[1], IN[1].xxxx 152: MAD TEMP[7], CONST[2], IN[1].yyyy, TEMP[5] 153: MAD TEMP[5], CONST[3], IN[1].zzzz, TEMP[7] 154: ADD TEMP[7], TEMP[5], CONST[4] 155: MUL TEMP[5].x, IMM[4].xxxx, TEMP[7].wwww 156: ADD TEMP[8].x, TEMP[7].zzzz, -TEMP[5].xxxx 157: MOV TEMP[5], TEMP[7].xyyy 158: MOV TEMP[5].w, TEMP[7].wwww 159: MOV TEMP[5].z, TEMP[8].xxxx 160: TXP TEMP[7].x, TEMP[5], SAMP[0], SHADOW2D 161: MOV TEMP[1].x, TEMP[7].xxxx 162: ENDIF 163: MOV TEMP[5].w, IMM[0].xxxx 164: MUL TEMP[7].x, TEMP[4].xxxx, CONST[0].xxxx 165: ADD TEMP[4].x, IMM[0].yyyy, -TEMP[1].xxxx 166: MUL TEMP[1].x, TEMP[7].xxxx, TEMP[4].xxxx 167: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[1].xxxx 168: MOV TEMP[5].xyz, TEMP[4].xyzx 169: ADD TEMP[0], TEMP[2], -TEMP[5] 170: ADD TEMP[1].xyz, TEMP[0], TEMP[6] 171: MOV TEMP[0].xyz, TEMP[1].xyzx 172: MOV TEMP[0].w, TEMP[3].xxxx 173: SEQ TEMP[1].x, CONST[26].wwww, IMM[0].xxxx 174: IF TEMP[1].xxxx :180 175: DP3 TEMP[1].x, IN[1].xyzz, IN[1].xyzz 176: RSQ TEMP[2].x, TEMP[1].xxxx 177: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx 178: CMP TEMP[2].x, -TEMP[1].xxxx, TEMP[2].xxxx, IMM[0].xxxx 179: MOV TEMP[1].x, TEMP[2].xxxx 180: ELSE :182 181: MOV TEMP[1].x, -IN[1].zzzz 182: ENDIF 183: ADD TEMP[2].x, TEMP[1].xxxx, IMM[4].yyyy 184: MUL TEMP[1].x, TEMP[2].xxxx, IMM[4].zzzz 185: MOV_SAT TEMP[2].x, TEMP[1].xxxx 186: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx 187: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[1].xxxx 188: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[2].xxxx 189: MOV_SAT TEMP[2].x, TEMP[1].xxxx 190: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[2].xxxx 191: MUL TEMP[4], TEMP[0], TEMP[1].xxxx 192: MAD TEMP[0], IMM[5], TEMP[2].xxxx, TEMP[4] 193: MOV TEMP[0].w, TEMP[3].xxxx 194: MOV OUT[0], TEMP[0] 195: END # Vertex Program/Shader 57 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[18].xy, INPUT[17].xyxx; 13: END InputsRead: 0x20005 (0b10,00000000,00000101) OutputsWritten: 0x70001 (0b111,00000000,00000001) NumInstructions=14 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {0.00251, 0.00125, 0.772, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {0.772, 1.98e-05, -0.00251, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-2.39e-05, 0.772, -0.00125, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {3.2, 4.27, -6.81, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {0.0042, 0.0021, 1.3, 8.8} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {1.3, 3.33e-05, -0.0042, -4.17} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-4.01e-05, 1.3, -0.0021, -5.54} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[3].xy, IN[2].xyxx 13: END # Fragment Program/Shader 63 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[13].wwww, CONST[14].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[15].xyzx; 12: ENDIF; 13: TEX TEMP[0].xyz, INPUT[17].xyyy, texture[3], 2D; 14: TEX TEMP[3], INPUT[17].xyyy, texture[2], 2D; 15: MOV TEMP[4].x, TEMP[3].xxxx; 16: MOV TEMP[4].y, TEMP[3].-y-y-y-y; 17: MOV TEMP[4].z, TEMP[3].zzzz; 18: ADD TEMP[3].xyz, TEMP[4].xyzz, CONST[16]; 19: MUL TEMP[4].xyz, CONST[14].yyyy, TEMP[3].xyzz; 20: MOV TEMP[3].x, TEMP[4].-x-x-x-x; 21: MOV TEMP[3].y, TEMP[4].-y-y-y-y; 22: DP3 TEMP[5].x, INPUT[16].xyzz, INPUT[16].xyzz; 23: RSQ TEMP[6].x, TEMP[5].xxxx; 24: MUL TEMP[5].xyz, INPUT[16].xyzz, TEMP[6].xxxx; 25: MUL TEMP[6].xyz, TEMP[1].zxyy, TEMP[5].yzxx; 26: MAD TEMP[7].xyz, TEMP[1].yzxx, TEMP[5].zxyy, TEMP[6].-x-y-z-z; 27: MUL TEMP[6].xyz, TEMP[3].xxxx, TEMP[5].xyzz; 28: MAD TEMP[5].xyz, TEMP[3].yyyy, TEMP[7].xyzz, TEMP[6].xyzz; 29: MAD TEMP[3].xyz, TEMP[4].zzzz, TEMP[1].xyzz, TEMP[5].xyzz; 30: DP3 TEMP[1].x, TEMP[3].xyzz, TEMP[3].xyzz; 31: RSQ TEMP[4].x, TEMP[1].xxxx; 32: MUL TEMP[1].xyz, TEMP[3].xyzz, TEMP[4].xxxx; 33: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[1].xyzz; 34: TEX TEMP[4], TEMP[3].xxxx, texture[1], 1D; 35: MOV TEMP[3].w, CONST[14].zzzz; 36: MOV TEMP[3].xyz, TEMP[0].xyzx; 37: MUL TEMP[5].x, TEMP[4].wwww, CONST[14].wwww; 38: MOV_SAT TEMP[6].x, TEMP[5].xxxx; 39: ADD TEMP[5].x, CONST[14].zzzz, TEMP[6].-x-x-x-x; 40: MUL TEMP[7], TEMP[3], TEMP[5].xxxx; 41: MAD TEMP[4], TEMP[4], TEMP[6].xxxx, TEMP[7]; 42: MOV TEMP[4].w, CONST[14].zzzz; 43: ADD TEMP[3].xyz, UNIFORM[7].xyzz, TEMP[2].xyzz; 44: MOV TEMP[5].w, CONST[14].zzzz; 45: DP3 TEMP[6].x, TEMP[3].xyzz, TEMP[3].xyzz; 46: RSQ TEMP[7].x, TEMP[6].xxxx; 47: MUL TEMP[6].xyz, TEMP[3].xyzz, TEMP[7].xxxx; 48: DP3 TEMP[3].x, TEMP[1].xyzz, TEMP[6].xyzz; 49: MAD TEMP[6].x, CONST[16].yyyy, TEMP[3].xxxx, CONST[16].yyyy; 50: POW TEMP[3].x, TEMP[6].xxxx, CONST[16].wwww; 51: MUL TEMP[6].x, CONST[15].wwww, TEMP[3].xxxx; 52: MUL TEMP[5].xyz, TEMP[6].xxxx, UNIFORM[4].xyzx; 53: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[1].xyzz; 54: TEX TEMP[6], TEMP[3].xxxx, texture[0], 1D; 55: MOV TEMP[3].w, CONST[14].zzzz; 56: MOV TEMP[3].xyz, TEMP[0].xyzx; 57: MUL TEMP[0].x, TEMP[6].wwww, CONST[14].wwww; 58: MOV_SAT TEMP[7].x, TEMP[0].xxxx; 59: ADD TEMP[0].x, CONST[14].zzzz, TEMP[7].-x-x-x-x; 60: MUL TEMP[8], TEMP[3], TEMP[0].xxxx; 61: MAD TEMP[3], TEMP[6], TEMP[7].xxxx, TEMP[8]; 62: MOV TEMP[3].w, CONST[14].zzzz; 63: ADD TEMP[0].xyz, UNIFORM[3].xyzz, TEMP[2].xyzz; 64: MOV TEMP[2].w, CONST[14].zzzz; 65: DP3 TEMP[6].x, TEMP[0].xyzz, TEMP[0].xyzz; 66: RSQ TEMP[7].x, TEMP[6].xxxx; 67: MUL TEMP[6].xyz, TEMP[0].xyzz, TEMP[7].xxxx; 68: DP3 TEMP[0].x, TEMP[6].xyzz, TEMP[1].xyzz; 69: MAX TEMP[6].x, TEMP[0].xxxx, CONST[14].xxxx; 70: POW TEMP[0].x, TEMP[6].xxxx, CONST[16].wwww; 71: MUL TEMP[6].x, CONST[15].wwww, TEMP[0].xxxx; 72: MUL TEMP[2].xyz, TEMP[6].xxxx, UNIFORM[0].xyzx; 73: DP3 TEMP[0].x, TEMP[1].xyzz, UNIFORM[3].xyzz; 74: MUL TEMP[6].x, TEMP[0].xxxx, CONST[17].xxxx; 75: MAX TEMP[0].x, TEMP[6].xxxx, CONST[14].xxxx; 76: MUL TEMP[6], UNIFORM[2], TEMP[0].xxxx; 77: DP3 TEMP[0].x, TEMP[1].xyzz, UNIFORM[7].xyzz; 78: MAD TEMP[1].x, CONST[16].yyyy, TEMP[0].xxxx, CONST[16].yyyy; 79: MUL TEMP[0].x, TEMP[1].xxxx, CONST[17].xxxx; 80: MAX TEMP[1].x, TEMP[0].xxxx, CONST[14].xxxx; 81: MUL TEMP[0], UNIFORM[6], TEMP[1].xxxx; 82: MAD TEMP[1], TEMP[0], TEMP[4], CONST[14].xxxz; 83: MAD TEMP[0], TEMP[6], TEMP[3], TEMP[1]; 84: ADD TEMP[1], CONST[14].xxxz, TEMP[5]; 85: ADD TEMP[3], TEMP[1], TEMP[2]; 86: ADD TEMP[1].xyz, TEMP[0], TEMP[3]; 87: MOV TEMP[0].xyz, TEMP[1].xyzx; 88: MOV TEMP[0].w, CONST[14].zzzz; 89: SEQ TEMP[1].x, STATE[13].wwww, CONST[14].xxxx; 90: IF TEMP[1].xxxx; # (if false, goto 96); 91: DP3 TEMP[1].x, INPUT[15].xyzz, INPUT[15].xyzz; 92: RSQ TEMP[2].x, TEMP[1].xxxx; 93: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx; 94: CMP TEMP[2].x, TEMP[1].-x-x-x-x, TEMP[2].xxxx, CONST[14].xxxx; 95: MOV TEMP[1].x, TEMP[2].xxxx; 96: ELSE; # (goto 98) 97: MOV TEMP[1].x, INPUT[15].-z-z-z-z; 98: ENDIF; 99: ADD TEMP[2].x, TEMP[1].xxxx, CONST[17].yyyy; 100: MUL TEMP[1].x, TEMP[2].xxxx, CONST[17].zzzz; 101: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 102: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx; 103: ADD TEMP[2].x, CONST[14].zzzz, TEMP[1].-x-x-x-x; 104: ADD TEMP[1].x, CONST[14].zzzz, TEMP[2].-x-x-x-x; 105: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 106: ADD TEMP[1].x, CONST[14].zzzz, TEMP[2].-x-x-x-x; 107: MUL TEMP[3], TEMP[0], TEMP[1].xxxx; 108: MAD TEMP[0], CONST[18], TEMP[2].xxxx, TEMP[3]; 109: MOV TEMP[1].w, CONST[14].zzzz; 110: MOV TEMP[1].xyz, TEMP[0].xyzx; 111: MOV OUTPUT[2], TEMP[1]; 112: END InputsRead: 0x3c000 (0b11,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=113 NumTemporaries=9 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0xf (0b1111) Samplers=[ 3 2 1 0 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=3 UNIFORM unf132 = {2.2, 1.97, 1.79, 0} param[1] sz=4 SAMPLER samp3 = {0, 0, 0, 0} param[2] sz=4 UNIFORM unf98 = {2.2, 1.97, 1.79, 2.2} param[3] sz=3 UNIFORM unf86 = {0.233, -0.601, -0.764, 0} param[4] sz=3 UNIFORM unf80 = {0.551, 0.557, 0.68, 0} param[5] sz=4 SAMPLER samp2 = {1, 0, 0, 0} param[6] sz=4 UNIFORM unf49 = {0.551, 0.557, 0.68, 0.68} param[7] sz=3 UNIFORM unf35 = {-0.243, -0.303, 0.922, 0} param[8] sz=4 SAMPLER samp1 = {2, 0, 0, 0} param[9] sz=4 SAMPLER samp0 = {3, 0, 0, 0} param[10] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[11] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[12] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[13] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[14] sz=4 CONST (null) = {0, 2, 1, 0.7} param[15] sz=4 CONST (null) = {0, 0, -1, 0.2} param[16] sz=4 CONST (null) = {-0.5, 0.5, -0.5, 35} param[17] sz=3 CONST (null) = {0.681, -6, 0.0385, 0} param[18] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL IN[3], GENERIC[13], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL SAMP[3] DCL CONST[0] DCL CONST[2..4] DCL CONST[6..7] DCL CONST[10..13] DCL TEMP[0..8] IMM FLT32 { 0.0000, 2.0000, 1.0000, 0.7000} IMM FLT32 { 0.0000, -1.0000, 0.2000, 0.9063} IMM FLT32 { -0.5000, 0.5000, 35.0000, 0.9063} IMM FLT32 { 0.6809, -6.0000, 0.0385, 0.0000} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[13].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: TEX TEMP[0].xyz, IN[3].xyyy, SAMP[3], 2D 14: TEX TEMP[3], IN[3].xyyy, SAMP[2], 2D 15: MOV TEMP[4].x, TEMP[3].xxxx 16: MOV TEMP[4].y, -TEMP[3].yyyy 17: MOV TEMP[4].z, TEMP[3].zzzz 18: ADD TEMP[3].xyz, TEMP[4].xyzz, IMM[2].xyxz 19: MUL TEMP[4].xyz, IMM[0].yyyy, TEMP[3].xyzz 20: MOV TEMP[3].x, -TEMP[4].xxxx 21: MOV TEMP[3].y, -TEMP[4].yyyy 22: DP3 TEMP[5].x, IN[2].xyzz, IN[2].xyzz 23: RSQ TEMP[6].x, TEMP[5].xxxx 24: MUL TEMP[5].xyz, IN[2].xyzz, TEMP[6].xxxx 25: MUL TEMP[6].xyz, TEMP[1].zxyy, TEMP[5].yzxx 26: MAD TEMP[7].xyz, TEMP[1].yzxx, TEMP[5].zxyy, -TEMP[6].xyzz 27: MUL TEMP[6].xyz, TEMP[3].xxxx, TEMP[5].xyzz 28: MAD TEMP[5].xyz, TEMP[3].yyyy, TEMP[7].xyzz, TEMP[6].xyzz 29: MAD TEMP[3].xyz, TEMP[4].zzzz, TEMP[1].xyzz, TEMP[5].xyzz 30: DP3 TEMP[1].x, TEMP[3].xyzz, TEMP[3].xyzz 31: RSQ TEMP[4].x, TEMP[1].xxxx 32: MUL TEMP[1].xyz, TEMP[3].xyzz, TEMP[4].xxxx 33: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[1].xyzz 34: TEX TEMP[4], TEMP[3].xxxx, SAMP[1], 1D 35: MOV TEMP[3].w, IMM[0].zzzz 36: MOV TEMP[3].xyz, TEMP[0].xyzx 37: MUL TEMP[5].x, TEMP[4].wwww, IMM[0].wwww 38: MOV_SAT TEMP[6].x, TEMP[5].xxxx 39: ADD TEMP[5].x, IMM[0].zzzz, -TEMP[6].xxxx 40: MUL TEMP[7], TEMP[3], TEMP[5].xxxx 41: MAD TEMP[4], TEMP[4], TEMP[6].xxxx, TEMP[7] 42: MOV TEMP[4].w, IMM[0].zzzz 43: ADD TEMP[3].xyz, CONST[7].xyzz, TEMP[2].xyzz 44: MOV TEMP[5].w, IMM[0].zzzz 45: DP3 TEMP[6].x, TEMP[3].xyzz, TEMP[3].xyzz 46: RSQ TEMP[7].x, TEMP[6].xxxx 47: MUL TEMP[6].xyz, TEMP[3].xyzz, TEMP[7].xxxx 48: DP3 TEMP[3].x, TEMP[1].xyzz, TEMP[6].xyzz 49: MAD TEMP[6].x, IMM[2].yyyy, TEMP[3].xxxx, IMM[2].yyyy 50: POW TEMP[3].x, TEMP[6].xxxx, IMM[2].zzzz 51: MUL TEMP[6].x, IMM[1].zzzz, TEMP[3].xxxx 52: MUL TEMP[5].xyz, TEMP[6].xxxx, CONST[4].xyzx 53: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[1].xyzz 54: TEX TEMP[6], TEMP[3].xxxx, SAMP[0], 1D 55: MOV TEMP[3].w, IMM[0].zzzz 56: MOV TEMP[3].xyz, TEMP[0].xyzx 57: MUL TEMP[0].x, TEMP[6].wwww, IMM[0].wwww 58: MOV_SAT TEMP[7].x, TEMP[0].xxxx 59: ADD TEMP[0].x, IMM[0].zzzz, -TEMP[7].xxxx 60: MUL TEMP[8], TEMP[3], TEMP[0].xxxx 61: MAD TEMP[3], TEMP[6], TEMP[7].xxxx, TEMP[8] 62: MOV TEMP[3].w, IMM[0].zzzz 63: ADD TEMP[0].xyz, CONST[3].xyzz, TEMP[2].xyzz 64: MOV TEMP[2].w, IMM[0].zzzz 65: DP3 TEMP[6].x, TEMP[0].xyzz, TEMP[0].xyzz 66: RSQ TEMP[7].x, TEMP[6].xxxx 67: MUL TEMP[6].xyz, TEMP[0].xyzz, TEMP[7].xxxx 68: DP3 TEMP[0].x, TEMP[6].xyzz, TEMP[1].xyzz 69: MAX TEMP[6].x, TEMP[0].xxxx, IMM[0].xxxx 70: POW TEMP[0].x, TEMP[6].xxxx, IMM[2].zzzz 71: MUL TEMP[6].x, IMM[1].zzzz, TEMP[0].xxxx 72: MUL TEMP[2].xyz, TEMP[6].xxxx, CONST[0].xyzx 73: DP3 TEMP[0].x, TEMP[1].xyzz, CONST[3].xyzz 74: MUL TEMP[6].x, TEMP[0].xxxx, IMM[3].xxxx 75: MAX TEMP[0].x, TEMP[6].xxxx, IMM[0].xxxx 76: MUL TEMP[6], CONST[2], TEMP[0].xxxx 77: DP3 TEMP[0].x, TEMP[1].xyzz, CONST[7].xyzz 78: MAD TEMP[1].x, IMM[2].yyyy, TEMP[0].xxxx, IMM[2].yyyy 79: MUL TEMP[0].x, TEMP[1].xxxx, IMM[3].xxxx 80: MAX TEMP[1].x, TEMP[0].xxxx, IMM[0].xxxx 81: MUL TEMP[0], CONST[6], TEMP[1].xxxx 82: MAD TEMP[1], TEMP[0], TEMP[4], IMM[0].xxxz 83: MAD TEMP[0], TEMP[6], TEMP[3], TEMP[1] 84: ADD TEMP[1], IMM[0].xxxz, TEMP[5] 85: ADD TEMP[3], TEMP[1], TEMP[2] 86: ADD TEMP[1].xyz, TEMP[0], TEMP[3] 87: MOV TEMP[0].xyz, TEMP[1].xyzx 88: MOV TEMP[0].w, IMM[0].zzzz 89: SEQ TEMP[1].x, CONST[13].wwww, IMM[0].xxxx 90: IF TEMP[1].xxxx :96 91: DP3 TEMP[1].x, IN[1].xyzz, IN[1].xyzz 92: RSQ TEMP[2].x, TEMP[1].xxxx 93: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx 94: CMP TEMP[2].x, -TEMP[1].xxxx, TEMP[2].xxxx, IMM[0].xxxx 95: MOV TEMP[1].x, TEMP[2].xxxx 96: ELSE :98 97: MOV TEMP[1].x, -IN[1].zzzz 98: ENDIF 99: ADD TEMP[2].x, TEMP[1].xxxx, IMM[3].yyyy 100: MUL TEMP[1].x, TEMP[2].xxxx, IMM[3].zzzz 101: MOV_SAT TEMP[2].x, TEMP[1].xxxx 102: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx 103: ADD TEMP[2].x, IMM[0].zzzz, -TEMP[1].xxxx 104: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[2].xxxx 105: MOV_SAT TEMP[2].x, TEMP[1].xxxx 106: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[2].xxxx 107: MUL TEMP[3], TEMP[0], TEMP[1].xxxx 108: MAD TEMP[0], IMM[4], TEMP[2].xxxx, TEMP[3] 109: MOV TEMP[1].w, IMM[0].zzzz 110: MOV TEMP[1].xyz, TEMP[0].xyzx 111: MOV OUT[0], TEMP[1] 112: END # Vertex Program/Shader 63 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[19].xy, INPUT[18].xyxx; 13: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[17].xxxx; 14: MAD TEMP[1].xyz, STATE[9].xyzz, INPUT[17].yyyy, TEMP[0].xyzz; 15: MAD OUTPUT[18].xyz, STATE[10].xyzx, INPUT[17].zzzx, TEMP[1].xyzx; 16: END InputsRead: 0x60005 (0b110,00000000,00000101) OutputsWritten: 0xf0001 (0b1111,00000000,00000001) NumInstructions=17 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {0.998, -0.0619, 0.00363, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {-0.00363, -0.117, -0.993, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {0.0619, 0.991, -0.117, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {0.786, -1.4, -4.28, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {0.998, -0.0619, 0.00363, -0.856} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {-0.00363, -0.117, -0.993, -4.41} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {0.0619, 0.991, -0.117, 0.842} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL OUT[4], GENERIC[13] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[4].xy, IN[3].xyxx 13: MUL TEMP[0].xyz, CONST[8].xyzz, IN[2].xxxx 14: MAD TEMP[1].xyz, CONST[9].xyzz, IN[2].yyyy, TEMP[0].xyzz 15: MAD OUT[3].xyz, CONST[10].xyzx, IN[2].zzzx, TEMP[1].xyzx 16: END # Fragment Program/Shader 66 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: TEX TEMP[0], INPUT[16].xyyy, texture[2], 2D; 5: ADD TEMP[2].x, CONST[26].xxxx, TEMP[0].-w-w-w-w; 6: MUL TEMP[3].xyz, TEMP[0].wwww, TEMP[0].xyzz; 7: MAD TEMP[0].xyz, TEMP[2].xxxx, CONST[27], TEMP[3].xyzz; 8: MOV TEMP[2].w, CONST[26].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: MOV TEMP[3].w, CONST[26].xxxx; 11: MOV TEMP[3].xyz, TEMP[0].xyzx; 12: DP3 TEMP[4].x, TEMP[1].xyzz, UNIFORM[18].xyzz; 13: MAX TEMP[5].x, TEMP[4].xxxx, CONST[26].yyyy; 14: MUL TEMP[4], UNIFORM[17], TEMP[5].xxxx; 15: DP3 TEMP[5].x, TEMP[1].xyzz, UNIFORM[20].xyzz; 16: MAD TEMP[6].x, CONST[26].zzzz, TEMP[5].xxxx, CONST[26].zzzz; 17: MAX TEMP[5].x, TEMP[6].xxxx, CONST[26].yyyy; 18: MUL TEMP[6], UNIFORM[19], TEMP[5].xxxx; 19: MAD TEMP[5], TEMP[6], TEMP[2], CONST[28]; 20: MAD TEMP[2], TEMP[4], TEMP[3], TEMP[5]; 21: ADD TEMP[3].xyz, INPUT[15].xyzz, UNIFORM[16].-x-y-z-z; 22: DP3 TEMP[4].x, TEMP[3].xyzz, TEMP[3].xyzz; 23: RSQ TEMP[5].x, TEMP[4].xxxx; 24: MUL TEMP[4].xyz, TEMP[3].xyzz, TEMP[5].xxxx; 25: DP3 TEMP[5].x, TEMP[3].xyzz, TEMP[3].xyzz; 26: RSQ TEMP[3].x, TEMP[5].xxxx; 27: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[5].xxxx; 28: CMP TEMP[3].x, TEMP[5].-x-x-x-x, TEMP[3].xxxx, CONST[26].yyyy; 29: ADD TEMP[5].x, CONST[26].wwww, TEMP[3].xxxx; 30: RCP TEMP[3].x, TEMP[5].xxxx; 31: MUL TEMP[5].x, CONST[26].wwww, TEMP[3].xxxx; 32: DP3 TEMP[3].x, TEMP[4].xyzz, UNIFORM[15].xyzz; 33: SLE TEMP[6].x, TEMP[3].xxxx, CONST[27].wwww; 34: IF TEMP[6].xxxx; # (if false, goto 36); 35: MOV TEMP[6].x, CONST[26].yyyy; 36: ELSE; # (goto 47) 37: ADD TEMP[7].x, TEMP[3].xxxx, CONST[29].xxxx; 38: MUL TEMP[8].x, TEMP[7].xxxx, CONST[29].yyyy; 39: MOV_SAT TEMP[7].x, TEMP[8].xxxx; 40: MUL TEMP[8].x, CONST[29].wwww, TEMP[7].xxxx; 41: ADD TEMP[9].x, CONST[29].zzzz, TEMP[8].-x-x-x-x; 42: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx; 43: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx; 44: MUL TEMP[7].x, TEMP[3].xxxx, TEMP[9].xxxx; 45: MUL TEMP[3].x, TEMP[5].xxxx, TEMP[7].xxxx; 46: MOV TEMP[6].x, TEMP[3].xxxx; 47: ENDIF; 48: SLT TEMP[3].x, TEMP[6].xxxx, CONST[30].xxxx; 49: IF TEMP[3].xxxx; # (if false, goto 51); 50: MOV TEMP[3].x, CONST[26].yyyy; 51: ELSE; # (goto 53) 52: MOV TEMP[3].x, TEMP[6].xxxx; 53: ENDIF; 54: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz; 55: MUL TEMP[4].x, TEMP[5].xxxx, TEMP[3].xxxx; 56: MAX TEMP[3].x, TEMP[4].xxxx, CONST[26].yyyy; 57: SLE TEMP[4].x, TEMP[5].xxxx, CONST[26].yyyy; 58: IF TEMP[4].xxxx; # (if false, goto 60); 59: MOV TEMP[4].x, CONST[26].yyyy; 60: ELSE; # (goto 72) 61: MUL TEMP[5], UNIFORM[10], INPUT[15].xxxx; 62: MAD TEMP[6], UNIFORM[11], INPUT[15].yyyy, TEMP[5]; 63: MAD TEMP[5], UNIFORM[12], INPUT[15].zzzz, TEMP[6]; 64: ADD TEMP[6], TEMP[5], UNIFORM[13]; 65: MUL TEMP[5].x, CONST[30].yyyy, TEMP[6].wwww; 66: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[5].-x-x-x-x; 67: MOV TEMP[5], TEMP[6].xyyy; 68: MOV TEMP[5].w, TEMP[6].wwww; 69: MOV TEMP[5].z, TEMP[7].xxxx; 70: TXP TEMP[6].x, TEMP[5], texture[1], 2D SHADOW; 71: MOV TEMP[4].x, TEMP[6].xxxx; 72: ENDIF; 73: MOV TEMP[5].w, CONST[26].yyyy; 74: MUL TEMP[6].x, TEMP[3].xxxx, UNIFORM[9].xxxx; 75: ADD TEMP[3].x, CONST[26].xxxx, TEMP[4].-x-x-x-x; 76: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[3].xxxx; 77: MUL TEMP[5].xyz, TEMP[0].xyzx, TEMP[4].xxxx; 78: ADD TEMP[3], TEMP[2], TEMP[5].-x-y-z-w; 79: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[8].-x-y-z-z; 80: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz; 81: RSQ TEMP[5].x, TEMP[4].xxxx; 82: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[5].xxxx; 83: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz; 84: RSQ TEMP[2].x, TEMP[5].xxxx; 85: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx; 86: CMP TEMP[2].x, TEMP[5].-x-x-x-x, TEMP[2].xxxx, CONST[26].yyyy; 87: ADD TEMP[5].x, CONST[26].wwww, TEMP[2].xxxx; 88: RCP TEMP[2].x, TEMP[5].xxxx; 89: MUL TEMP[5].x, CONST[26].wwww, TEMP[2].xxxx; 90: DP3 TEMP[2].x, TEMP[4].xyzz, UNIFORM[7].xyzz; 91: SLE TEMP[6].x, TEMP[2].xxxx, CONST[27].wwww; 92: IF TEMP[6].xxxx; # (if false, goto 94); 93: MOV TEMP[6].x, CONST[26].yyyy; 94: ELSE; # (goto 105) 95: ADD TEMP[7].x, TEMP[2].xxxx, CONST[29].xxxx; 96: MUL TEMP[8].x, TEMP[7].xxxx, CONST[29].yyyy; 97: MOV_SAT TEMP[7].x, TEMP[8].xxxx; 98: MUL TEMP[8].x, CONST[29].wwww, TEMP[7].xxxx; 99: ADD TEMP[9].x, CONST[29].zzzz, TEMP[8].-x-x-x-x; 100: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx; 101: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx; 102: MUL TEMP[7].x, TEMP[2].xxxx, TEMP[9].xxxx; 103: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx; 104: MOV TEMP[6].x, TEMP[2].xxxx; 105: ENDIF; 106: SLT TEMP[2].x, TEMP[6].xxxx, CONST[30].xxxx; 107: IF TEMP[2].xxxx; # (if false, goto 109); 108: MOV TEMP[2].x, CONST[26].yyyy; 109: ELSE; # (goto 111) 110: MOV TEMP[2].x, TEMP[6].xxxx; 111: ENDIF; 112: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz; 113: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[2].xxxx; 114: MAX TEMP[2].x, TEMP[1].xxxx, CONST[26].yyyy; 115: SLE TEMP[1].x, TEMP[5].xxxx, CONST[26].yyyy; 116: IF TEMP[1].xxxx; # (if false, goto 118); 117: MOV TEMP[1].x, CONST[26].yyyy; 118: ELSE; # (goto 130) 119: MUL TEMP[4], UNIFORM[2], INPUT[15].xxxx; 120: MAD TEMP[5], UNIFORM[3], INPUT[15].yyyy, TEMP[4]; 121: MAD TEMP[4], UNIFORM[4], INPUT[15].zzzz, TEMP[5]; 122: ADD TEMP[5], TEMP[4], UNIFORM[5]; 123: MUL TEMP[4].x, CONST[30].yyyy, TEMP[5].wwww; 124: ADD TEMP[6].x, TEMP[5].zzzz, TEMP[4].-x-x-x-x; 125: MOV TEMP[4], TEMP[5].xyyy; 126: MOV TEMP[4].w, TEMP[5].wwww; 127: MOV TEMP[4].z, TEMP[6].xxxx; 128: TXP TEMP[5].x, TEMP[4], texture[0], 2D SHADOW; 129: MOV TEMP[1].x, TEMP[5].xxxx; 130: ENDIF; 131: MOV TEMP[4].w, CONST[26].yyyy; 132: MUL TEMP[5].x, TEMP[2].xxxx, UNIFORM[1].xxxx; 133: ADD TEMP[2].x, CONST[26].xxxx, TEMP[1].-x-x-x-x; 134: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[2].xxxx; 135: MUL TEMP[2].xyz, TEMP[0].xyzz, TEMP[1].xxxx; 136: MOV TEMP[4].xyz, TEMP[2].xyzx; 137: ADD TEMP[0], TEMP[3], TEMP[4].-x-y-z-w; 138: MUL TEMP[1].xyz, TEMP[0].xyzz, UNIFORM[0].xyzz; 139: MOV TEMP[0].xyz, TEMP[1].xyzx; 140: MOV TEMP[0].w, CONST[26].xxxx; 141: SEQ TEMP[1].x, STATE[25].wwww, CONST[26].yyyy; 142: IF TEMP[1].xxxx; # (if false, goto 148); 143: DP3 TEMP[1].x, INPUT[15].xyzz, INPUT[15].xyzz; 144: RSQ TEMP[2].x, TEMP[1].xxxx; 145: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx; 146: CMP TEMP[2].x, TEMP[1].-x-x-x-x, TEMP[2].xxxx, CONST[26].yyyy; 147: MOV TEMP[1].x, TEMP[2].xxxx; 148: ELSE; # (goto 150) 149: MOV TEMP[1].x, INPUT[15].-z-z-z-z; 150: ENDIF; 151: ADD TEMP[2].x, TEMP[1].xxxx, CONST[30].zzzz; 152: MUL TEMP[1].x, TEMP[2].xxxx, CONST[30].wwww; 153: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 154: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx; 155: ADD TEMP[2].x, CONST[26].xxxx, TEMP[1].-x-x-x-x; 156: ADD TEMP[1].x, CONST[26].xxxx, TEMP[2].-x-x-x-x; 157: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 158: ADD TEMP[1].x, CONST[26].xxxx, TEMP[2].-x-x-x-x; 159: MUL TEMP[3], TEMP[0], TEMP[1].xxxx; 160: MAD TEMP[0].xyz, CONST[31].xyzx, TEMP[2].xxxx, TEMP[3].xyzx; 161: MOV TEMP[0].w, UNIFORM[0].wwww; 162: MOV OUTPUT[2], TEMP[0]; 163: END InputsRead: 0x1c000 (0b1,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=164 NumTemporaries=10 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x7 (0b111) Samplers=[ 2 1 0 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=4 UNIFORM unfobcolor = {1, 1, 1, 1} param[1] sz=1 UNIFORM unf130 = {1, 0, 0, 0} param[2] sz=16 UNIFORM unf124 = {5.7, -0.0767, 0.249, 0.191} param[3] sz=12 UNIFORM unf124 = {0.565, -1.44, -1.26, -0.969} param[4] sz=8 UNIFORM unf124 = {-0.271, -5.55, 0.208, 0.159} param[5] sz=4 UNIFORM unf124 = {17.1, -8.62, -8.83, 0.23} param[6] sz=4 SAMPLER samp2 = {0, 0, 0, 0} param[7] sz=3 UNIFORM unf105 = {0.191, -0.969, 0.159, 0} param[8] sz=3 UNIFORM unf98 = {-3.01, -0.58, -1.36, 0} param[9] sz=1 UNIFORM unf91 = {1, 0, 0, 0} param[10] sz=16 UNIFORM unf85 = {5.7, -0.0767, 0.249, 0.191} param[11] sz=12 UNIFORM unf85 = {0.565, -1.44, -1.26, -0.969} param[12] sz=8 UNIFORM unf85 = {-0.271, -5.55, 0.208, 0.159} param[13] sz=4 UNIFORM unf85 = {2.33, 3.5, 2.15, 8.65} param[14] sz=4 SAMPLER samp1 = {1, 0, 0, 0} param[15] sz=3 UNIFORM unf66 = {0.191, -0.969, 0.159, 0} param[16] sz=3 UNIFORM unf59 = {-1.32, 8.42, -1.54, 0} param[17] sz=4 UNIFORM unf52 = {2.2, 1.97, 1.79, 2.2} param[18] sz=3 UNIFORM unf40 = {0.233, -0.601, -0.764, 0} param[19] sz=4 UNIFORM unf34 = {0.551, 0.557, 0.68, 0.68} param[20] sz=3 UNIFORM unf20 = {-0.243, -0.303, 0.922, 0} param[21] sz=4 SAMPLER samp0 = {2, 0, 0, 0} param[22] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[23] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[24] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[25] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[26] sz=4 CONST (null) = {1, 0, 0.5, 20} param[27] sz=4 CONST (null) = {0.8, 0.8, 0.8, 0.996} param[28] sz=4 CONST (null) = {0, 0, 0, 1} param[29] sz=4 CONST (null) = {-0.996, 1.75e+03, 3, 2} param[30] sz=4 CONST (null) = {0.001, 0.005, -6, 0.0385} param[31] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL CONST[0..5] DCL CONST[7..13] DCL CONST[15..20] DCL CONST[22..25] DCL TEMP[0..9] IMM FLT32 { 1.0000, 0.0000, 0.5000, 20.0000} IMM FLT32 { 0.8000, 0.9962, 0.9063, 0.8827} IMM FLT32 { -0.9962, 1751.3136, 3.0000, 2.0000} IMM FLT32 { 0.0010, 0.0050, -6.0000, 0.0385} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: TEX TEMP[0], IN[2].xyyy, SAMP[2], 2D 5: ADD TEMP[2].x, IMM[0].xxxx, -TEMP[0].wwww 6: MUL TEMP[3].xyz, TEMP[0].wwww, TEMP[0].xyzz 7: MAD TEMP[0].xyz, TEMP[2].xxxx, IMM[1].xxxy, TEMP[3].xyzz 8: MOV TEMP[2].w, IMM[0].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: MOV TEMP[3].w, IMM[0].xxxx 11: MOV TEMP[3].xyz, TEMP[0].xyzx 12: DP3 TEMP[4].x, TEMP[1].xyzz, CONST[18].xyzz 13: MAX TEMP[5].x, TEMP[4].xxxx, IMM[0].yyyy 14: MUL TEMP[4], CONST[17], TEMP[5].xxxx 15: DP3 TEMP[5].x, TEMP[1].xyzz, CONST[20].xyzz 16: MAD TEMP[6].x, IMM[0].zzzz, TEMP[5].xxxx, IMM[0].zzzz 17: MAX TEMP[5].x, TEMP[6].xxxx, IMM[0].yyyy 18: MUL TEMP[6], CONST[19], TEMP[5].xxxx 19: MAD TEMP[5], TEMP[6], TEMP[2], IMM[0].yyyx 20: MAD TEMP[2], TEMP[4], TEMP[3], TEMP[5] 21: ADD TEMP[3].xyz, IN[1].xyzz, -CONST[16].xyzz 22: DP3 TEMP[4].x, TEMP[3].xyzz, TEMP[3].xyzz 23: RSQ TEMP[5].x, TEMP[4].xxxx 24: MUL TEMP[4].xyz, TEMP[3].xyzz, TEMP[5].xxxx 25: DP3 TEMP[5].x, TEMP[3].xyzz, TEMP[3].xyzz 26: RSQ TEMP[3].x, TEMP[5].xxxx 27: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[5].xxxx 28: CMP TEMP[3].x, -TEMP[5].xxxx, TEMP[3].xxxx, IMM[0].yyyy 29: ADD TEMP[5].x, IMM[0].wwww, TEMP[3].xxxx 30: RCP TEMP[3].x, TEMP[5].xxxx 31: MUL TEMP[5].x, IMM[0].wwww, TEMP[3].xxxx 32: DP3 TEMP[3].x, TEMP[4].xyzz, CONST[15].xyzz 33: SLE TEMP[6].x, TEMP[3].xxxx, IMM[1].yyyy 34: IF TEMP[6].xxxx :36 35: MOV TEMP[6].x, IMM[0].yyyy 36: ELSE :47 37: ADD TEMP[7].x, TEMP[3].xxxx, IMM[2].xxxx 38: MUL TEMP[8].x, TEMP[7].xxxx, IMM[2].yyyy 39: MOV_SAT TEMP[7].x, TEMP[8].xxxx 40: MUL TEMP[8].x, IMM[2].wwww, TEMP[7].xxxx 41: ADD TEMP[9].x, IMM[2].zzzz, -TEMP[8].xxxx 42: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx 43: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx 44: MUL TEMP[7].x, TEMP[3].xxxx, TEMP[9].xxxx 45: MUL TEMP[3].x, TEMP[5].xxxx, TEMP[7].xxxx 46: MOV TEMP[6].x, TEMP[3].xxxx 47: ENDIF 48: SLT TEMP[3].x, TEMP[6].xxxx, IMM[3].xxxx 49: IF TEMP[3].xxxx :51 50: MOV TEMP[3].x, IMM[0].yyyy 51: ELSE :53 52: MOV TEMP[3].x, TEMP[6].xxxx 53: ENDIF 54: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz 55: MUL TEMP[4].x, TEMP[5].xxxx, TEMP[3].xxxx 56: MAX TEMP[3].x, TEMP[4].xxxx, IMM[0].yyyy 57: SLE TEMP[4].x, TEMP[5].xxxx, IMM[0].yyyy 58: IF TEMP[4].xxxx :60 59: MOV TEMP[4].x, IMM[0].yyyy 60: ELSE :72 61: MUL TEMP[5], CONST[10], IN[1].xxxx 62: MAD TEMP[6], CONST[11], IN[1].yyyy, TEMP[5] 63: MAD TEMP[5], CONST[12], IN[1].zzzz, TEMP[6] 64: ADD TEMP[6], TEMP[5], CONST[13] 65: MUL TEMP[5].x, IMM[3].yyyy, TEMP[6].wwww 66: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[5].xxxx 67: MOV TEMP[5], TEMP[6].xyyy 68: MOV TEMP[5].w, TEMP[6].wwww 69: MOV TEMP[5].z, TEMP[7].xxxx 70: TXP TEMP[6].x, TEMP[5], SAMP[1], SHADOW2D 71: MOV TEMP[4].x, TEMP[6].xxxx 72: ENDIF 73: MOV TEMP[5].w, IMM[0].yyyy 74: MUL TEMP[6].x, TEMP[3].xxxx, CONST[9].xxxx 75: ADD TEMP[3].x, IMM[0].xxxx, -TEMP[4].xxxx 76: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[3].xxxx 77: MUL TEMP[5].xyz, TEMP[0].xyzx, TEMP[4].xxxx 78: ADD TEMP[3], TEMP[2], -TEMP[5] 79: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[8].xyzz 80: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz 81: RSQ TEMP[5].x, TEMP[4].xxxx 82: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[5].xxxx 83: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz 84: RSQ TEMP[2].x, TEMP[5].xxxx 85: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx 86: CMP TEMP[2].x, -TEMP[5].xxxx, TEMP[2].xxxx, IMM[0].yyyy 87: ADD TEMP[5].x, IMM[0].wwww, TEMP[2].xxxx 88: RCP TEMP[2].x, TEMP[5].xxxx 89: MUL TEMP[5].x, IMM[0].wwww, TEMP[2].xxxx 90: DP3 TEMP[2].x, TEMP[4].xyzz, CONST[7].xyzz 91: SLE TEMP[6].x, TEMP[2].xxxx, IMM[1].yyyy 92: IF TEMP[6].xxxx :94 93: MOV TEMP[6].x, IMM[0].yyyy 94: ELSE :105 95: ADD TEMP[7].x, TEMP[2].xxxx, IMM[2].xxxx 96: MUL TEMP[8].x, TEMP[7].xxxx, IMM[2].yyyy 97: MOV_SAT TEMP[7].x, TEMP[8].xxxx 98: MUL TEMP[8].x, IMM[2].wwww, TEMP[7].xxxx 99: ADD TEMP[9].x, IMM[2].zzzz, -TEMP[8].xxxx 100: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx 101: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx 102: MUL TEMP[7].x, TEMP[2].xxxx, TEMP[9].xxxx 103: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx 104: MOV TEMP[6].x, TEMP[2].xxxx 105: ENDIF 106: SLT TEMP[2].x, TEMP[6].xxxx, IMM[3].xxxx 107: IF TEMP[2].xxxx :109 108: MOV TEMP[2].x, IMM[0].yyyy 109: ELSE :111 110: MOV TEMP[2].x, TEMP[6].xxxx 111: ENDIF 112: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz 113: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[2].xxxx 114: MAX TEMP[2].x, TEMP[1].xxxx, IMM[0].yyyy 115: SLE TEMP[1].x, TEMP[5].xxxx, IMM[0].yyyy 116: IF TEMP[1].xxxx :118 117: MOV TEMP[1].x, IMM[0].yyyy 118: ELSE :130 119: MUL TEMP[4], CONST[2], IN[1].xxxx 120: MAD TEMP[5], CONST[3], IN[1].yyyy, TEMP[4] 121: MAD TEMP[4], CONST[4], IN[1].zzzz, TEMP[5] 122: ADD TEMP[5], TEMP[4], CONST[5] 123: MUL TEMP[4].x, IMM[3].yyyy, TEMP[5].wwww 124: ADD TEMP[6].x, TEMP[5].zzzz, -TEMP[4].xxxx 125: MOV TEMP[4], TEMP[5].xyyy 126: MOV TEMP[4].w, TEMP[5].wwww 127: MOV TEMP[4].z, TEMP[6].xxxx 128: TXP TEMP[5].x, TEMP[4], SAMP[0], SHADOW2D 129: MOV TEMP[1].x, TEMP[5].xxxx 130: ENDIF 131: MOV TEMP[4].w, IMM[0].yyyy 132: MUL TEMP[5].x, TEMP[2].xxxx, CONST[1].xxxx 133: ADD TEMP[2].x, IMM[0].xxxx, -TEMP[1].xxxx 134: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[2].xxxx 135: MUL TEMP[2].xyz, TEMP[0].xyzz, TEMP[1].xxxx 136: MOV TEMP[4].xyz, TEMP[2].xyzx 137: ADD TEMP[0], TEMP[3], -TEMP[4] 138: MUL TEMP[1].xyz, TEMP[0].xyzz, CONST[0].xyzz 139: MOV TEMP[0].xyz, TEMP[1].xyzx 140: MOV TEMP[0].w, IMM[0].xxxx 141: SEQ TEMP[1].x, CONST[25].wwww, IMM[0].yyyy 142: IF TEMP[1].xxxx :148 143: DP3 TEMP[1].x, IN[1].xyzz, IN[1].xyzz 144: RSQ TEMP[2].x, TEMP[1].xxxx 145: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx 146: CMP TEMP[2].x, -TEMP[1].xxxx, TEMP[2].xxxx, IMM[0].yyyy 147: MOV TEMP[1].x, TEMP[2].xxxx 148: ELSE :150 149: MOV TEMP[1].x, -IN[1].zzzz 150: ENDIF 151: ADD TEMP[2].x, TEMP[1].xxxx, IMM[3].zzzz 152: MUL TEMP[1].x, TEMP[2].xxxx, IMM[3].wwww 153: MOV_SAT TEMP[2].x, TEMP[1].xxxx 154: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx 155: ADD TEMP[2].x, IMM[0].xxxx, -TEMP[1].xxxx 156: ADD TEMP[1].x, IMM[0].xxxx, -TEMP[2].xxxx 157: MOV_SAT TEMP[2].x, TEMP[1].xxxx 158: ADD TEMP[1].x, IMM[0].xxxx, -TEMP[2].xxxx 159: MUL TEMP[3], TEMP[0], TEMP[1].xxxx 160: MAD TEMP[0].xyz, IMM[4].xyzx, TEMP[2].xxxx, TEMP[3].xyzx 161: MOV TEMP[0].w, CONST[0].wwww 162: MOV OUT[0], TEMP[0] 163: END # Vertex Program/Shader 66 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[18].xy, INPUT[17].xyxx; 13: END InputsRead: 0x20005 (0b10,00000000,00000101) OutputsWritten: 0x70001 (0b111,00000000,00000001) NumInstructions=14 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {-0.0188, -7.55e-08, 1, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {1, -1.42e-09, 0.0188, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-2.22e-16, 1, 7.55e-08, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {0.489, -0.873, 0.00932, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {-0.0188, -7.55e-08, 1, -0.000141} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {1, -1.42e-09, 0.0188, -0.49} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-2.22e-16, 1, 7.55e-08, 0.873} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[3].xy, IN[2].xyxx 13: END # Fragment Program/Shader 72 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[31].wwww, CONST[32].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[33].xyzx; 12: ENDIF; 13: TEX TEMP[0].xyz, INPUT[17].xyyy, texture[6], 2D; 14: DP3 TEMP[3].x, CONST[34], TEMP[0].xyzz; 15: MAX TEMP[0].x, TEMP[3].xxxx, CONST[32].xxxx; 16: TEX TEMP[3].xyz, INPUT[17].xyyy, texture[5], 2D; 17: MOV TEMP[4].x, TEMP[3].xxxx; 18: MOV TEMP[4].y, TEMP[3].-y-y-y-y; 19: MOV TEMP[4].z, TEMP[3].zzzz; 20: ADD TEMP[3].xyz, TEMP[4].xyzz, CONST[35]; 21: MUL TEMP[4].xyz, CONST[32].yyyy, TEMP[3].xyzz; 22: DP3 TEMP[3].x, INPUT[16].xyzz, INPUT[16].xyzz; 23: RSQ TEMP[5].x, TEMP[3].xxxx; 24: MUL TEMP[3].xyz, INPUT[16].xyzz, TEMP[5].xxxx; 25: MUL TEMP[5].xyz, TEMP[1].zxyy, TEMP[3].yzxx; 26: MAD TEMP[6].xyz, TEMP[1].yzxx, TEMP[3].zxyy, TEMP[5].-x-y-z-z; 27: MUL TEMP[5].xyz, TEMP[4].xxxx, TEMP[3].xyzz; 28: MAD TEMP[3].xyz, TEMP[4].yyyy, TEMP[6].xyzz, TEMP[5].xyzz; 29: MAD TEMP[5].xyz, TEMP[4].zzzz, TEMP[1].xyzz, TEMP[3].xyzz; 30: DP3 TEMP[1].x, TEMP[5].xyzz, TEMP[5].xyzz; 31: RSQ TEMP[3].x, TEMP[1].xxxx; 32: MUL TEMP[1].xyz, TEMP[5].xyzz, TEMP[3].xxxx; 33: TEX TEMP[3].xyz, INPUT[17].xyyy, texture[5], 2D; 34: MOV TEMP[4].x, TEMP[3].xxxx; 35: MOV TEMP[4].y, TEMP[3].-y-y-y-y; 36: MOV TEMP[4].z, TEMP[3].zzzz; 37: ADD TEMP[3].xyz, TEMP[4].xyzz, CONST[35].xyzz; 38: MUL TEMP[4].xyz, CONST[32].yyyy, TEMP[3].xyzz; 39: DP3 TEMP[3].x, INPUT[16].xyzz, INPUT[16].xyzz; 40: RSQ TEMP[5].x, TEMP[3].xxxx; 41: MUL TEMP[3].xyz, INPUT[16].xyzz, TEMP[5].xxxx; 42: MUL TEMP[5].xyz, TEMP[1].zxyy, TEMP[3].yzxx; 43: MAD TEMP[6].xyz, TEMP[1].yzxx, TEMP[3].zxyy, TEMP[5].-x-y-z-z; 44: MUL TEMP[5].xyz, TEMP[4].xxxx, TEMP[3].xyzz; 45: MAD TEMP[3].xyz, TEMP[4].yyyy, TEMP[6].xyzz, TEMP[5].xyzz; 46: MAD TEMP[5].xyz, TEMP[4].zzzz, TEMP[1].xyzz, TEMP[3].xyzz; 47: DP3 TEMP[1].x, TEMP[5].xyzz, TEMP[5].xyzz; 48: RSQ TEMP[3].x, TEMP[1].xxxx; 49: MUL TEMP[1].xyz, TEMP[5].xyzz, TEMP[3].xxxx; 50: MOV TEMP[3].xyz, TEMP[1].-x-y-z-x; 51: MAD TEMP[5].xy, TEMP[3].xyxx, CONST[35].yyxx, CONST[35].yyxx; 52: MAD TEMP[4].xy, TEMP[3].xyyy, CONST[35].yyyy, CONST[35].yyyy; 53: MAD TEMP[3].xy, CONST[36], TEMP[4].xyxx, CONST[37]; 54: TEX TEMP[4].xyz, TEMP[3].xyyy, texture[4], 2D; 55: DP3 TEMP[3].x, CONST[34].xyzz, TEMP[4].xyzz; 56: ADD TEMP[4].x, CONST[32].zzzz, TEMP[3].-x-x-x-x; 57: MAD TEMP[3].xy, CONST[40], TEMP[5].xyzz, CONST[41]; 58: TEX TEMP[5].xyz, TEMP[3].xyyy, texture[4], 2D; 59: DP3 TEMP[3].x, CONST[34].xyzz, TEMP[5].xyzz; 60: ADD TEMP[5].x, CONST[32].zzzz, TEMP[3].-x-x-x-x; 61: TEX TEMP[3].xyz, INPUT[17].xyyy, texture[7], 2D; 62: MAD TEMP[6].xyz, CONST[39], TEMP[5].xxxx, TEMP[3].xyzz; 63: MAD TEMP[3].xyz, TEMP[4].xxxx, CONST[38], TEMP[6].xyzz; 64: MOV TEMP[4].w, CONST[32].zzzz; 65: MOV TEMP[4].xyz, TEMP[3].xyzx; 66: MUL TEMP[5], TEMP[4], CONST[34].zzzz; 67: DP3 TEMP[4].x, TEMP[1].xyzz, UNIFORM[23].xyzz; 68: MAD TEMP[6].x, CONST[35].yyyy, TEMP[4].xxxx, CONST[35].yyyy; 69: SGT TEMP[4].x, TEMP[6].xxxx, CONST[32].xxxx; 70: IF TEMP[4].xxxx; # (if false, goto 73); 71: SLT TEMP[4].x, TEMP[6].xxxx, CONST[32].zzzz; 72: MOV TEMP[7].x, TEMP[4].xxxx; 73: ELSE; # (goto 75) 74: MOV TEMP[7].x, CONST[32].xxxx; 75: ENDIF; 76: IF TEMP[7].xxxx; # (if false, goto 83); 77: MOV_SAT TEMP[4].x, TEMP[6].xxxx; 78: MUL TEMP[7].x, CONST[32].yyyy, TEMP[4].xxxx; 79: ADD TEMP[8].x, CONST[32].wwww, TEMP[7].-x-x-x-x; 80: MUL TEMP[7].x, TEMP[4].xxxx, TEMP[8].xxxx; 81: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[7].xxxx; 82: MOV TEMP[4].x, TEMP[8].xxxx; 83: ELSE; # (goto 85) 84: MOV TEMP[4].x, TEMP[6].xxxx; 85: ENDIF; 86: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[1].xyzz; 87: TEX TEMP[7], TEMP[6].xxxx, texture[3], 1D; 88: MOV TEMP[6].w, CONST[32].zzzz; 89: MOV TEMP[6].xyz, TEMP[3].xyzx; 90: MOV_SAT TEMP[8].x, TEMP[7].wwww; 91: ADD TEMP[9], CONST[32].zzzz, TEMP[7].-x-y-z-w; 92: ADD TEMP[7].x, CONST[32].zzzz, TEMP[8].-x-x-x-x; 93: MAD TEMP[10], TEMP[8].xxxx, TEMP[9], TEMP[7].xxxx; 94: ADD TEMP[7], CONST[32].zzzz, TEMP[6].-x-y-z-w; 95: MUL TEMP[6], TEMP[10], TEMP[7]; 96: ADD TEMP[6], CONST[32].zzzz, TEMP[6].-x-y-z-w; 97: MOV TEMP[6].w, CONST[32].zzzz; 98: MUL TEMP[7].x, TEMP[4].xxxx, CONST[33].wwww; 99: MAX TEMP[4].x, TEMP[7].xxxx, CONST[32].xxxx; 100: MUL TEMP[7], UNIFORM[22], TEMP[4].xxxx; 101: MAD TEMP[4], TEMP[7], TEMP[6], TEMP[5]; 102: DP3 TEMP[5].x, TEMP[1].xyzz, UNIFORM[20].xyzz; 103: SGT TEMP[6].x, TEMP[5].xxxx, CONST[32].xxxx; 104: IF TEMP[6].xxxx; # (if false, goto 107); 105: SLT TEMP[6].x, TEMP[5].xxxx, CONST[32].zzzz; 106: MOV TEMP[7].x, TEMP[6].xxxx; 107: ELSE; # (goto 109) 108: MOV TEMP[7].x, CONST[32].xxxx; 109: ENDIF; 110: IF TEMP[7].xxxx; # (if false, goto 117); 111: MOV_SAT TEMP[6].x, TEMP[5].xxxx; 112: MUL TEMP[7].x, CONST[32].yyyy, TEMP[6].xxxx; 113: ADD TEMP[8].x, CONST[32].wwww, TEMP[7].-x-x-x-x; 114: MUL TEMP[7].x, TEMP[6].xxxx, TEMP[8].xxxx; 115: MUL TEMP[8].x, TEMP[6].xxxx, TEMP[7].xxxx; 116: MOV TEMP[6].x, TEMP[8].xxxx; 117: ELSE; # (goto 119) 118: MOV TEMP[6].x, TEMP[5].xxxx; 119: ENDIF; 120: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[1].xyzz; 121: TEX TEMP[7], TEMP[5].xxxx, texture[2], 1D; 122: MOV TEMP[5].w, CONST[32].zzzz; 123: MOV TEMP[5].xyz, TEMP[3].xyzx; 124: MOV_SAT TEMP[8].x, TEMP[7].wwww; 125: ADD TEMP[9], CONST[32].zzzz, TEMP[7].-x-y-z-w; 126: ADD TEMP[7].x, CONST[32].zzzz, TEMP[8].-x-x-x-x; 127: MAD TEMP[10], TEMP[8].xxxx, TEMP[9], TEMP[7].xxxx; 128: ADD TEMP[7], CONST[32].zzzz, TEMP[5].-x-y-z-w; 129: MUL TEMP[5], TEMP[10], TEMP[7]; 130: ADD TEMP[5], CONST[32].zzzz, TEMP[5].-x-y-z-w; 131: MOV TEMP[5].w, CONST[32].zzzz; 132: MUL TEMP[7].x, TEMP[6].xxxx, CONST[33].wwww; 133: MAX TEMP[6].x, TEMP[7].xxxx, CONST[32].xxxx; 134: MUL TEMP[7], UNIFORM[19], TEMP[6].xxxx; 135: MAD TEMP[6], TEMP[7], TEMP[5], TEMP[4]; 136: ADD TEMP[4].xyz, UNIFORM[20].xyzz, TEMP[2].xyzz; 137: MOV TEMP[2].w, CONST[32].zzzz; 138: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz; 139: RSQ TEMP[7].x, TEMP[5].xxxx; 140: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[7].xxxx; 141: DP3 TEMP[4].x, TEMP[5].xyzz, TEMP[1].xyzz; 142: MAX TEMP[5].x, TEMP[4].xxxx, CONST[32].xxxx; 143: POW TEMP[4].x, TEMP[5].xxxx, CONST[34].wwww; 144: MUL TEMP[5].x, TEMP[0].xxxx, TEMP[4].xxxx; 145: MUL TEMP[2].xyz, TEMP[5].xxxx, UNIFORM[17].xyzx; 146: ADD TEMP[0], CONST[32].xxxy, TEMP[2]; 147: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[16].-x-y-z-z; 148: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz; 149: RSQ TEMP[5].x, TEMP[4].xxxx; 150: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[5].xxxx; 151: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz; 152: RSQ TEMP[2].x, TEMP[5].xxxx; 153: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx; 154: CMP TEMP[2].x, TEMP[5].-x-x-x-x, TEMP[2].xxxx, CONST[32].xxxx; 155: ADD TEMP[5].x, CONST[35].wwww, TEMP[2].xxxx; 156: RCP TEMP[2].x, TEMP[5].xxxx; 157: MUL TEMP[5].x, CONST[35].wwww, TEMP[2].xxxx; 158: DP3 TEMP[2].x, TEMP[4].xyzz, UNIFORM[15].xyzz; 159: SLE TEMP[7].x, TEMP[2].xxxx, CONST[36].wwww; 160: IF TEMP[7].xxxx; # (if false, goto 162); 161: MOV TEMP[7].x, CONST[32].xxxx; 162: ELSE; # (goto 173) 163: ADD TEMP[8].x, TEMP[2].xxxx, CONST[37].wwww; 164: MUL TEMP[9].x, TEMP[8].xxxx, CONST[38].wwww; 165: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 166: MUL TEMP[9].x, CONST[32].yyyy, TEMP[8].xxxx; 167: ADD TEMP[10].x, CONST[32].wwww, TEMP[9].-x-x-x-x; 168: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 169: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 170: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx; 171: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[8].xxxx; 172: MOV TEMP[7].x, TEMP[2].xxxx; 173: ENDIF; 174: SLT TEMP[2].x, TEMP[7].xxxx, CONST[39].wwww; 175: IF TEMP[2].xxxx; # (if false, goto 177); 176: MOV TEMP[2].x, CONST[32].xxxx; 177: ELSE; # (goto 179) 178: MOV TEMP[2].x, TEMP[7].xxxx; 179: ENDIF; 180: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz; 181: SGT TEMP[4].x, TEMP[5].xxxx, CONST[32].xxxx; 182: IF TEMP[4].xxxx; # (if false, goto 185); 183: SLT TEMP[4].x, TEMP[5].xxxx, CONST[32].zzzz; 184: MOV TEMP[7].x, TEMP[4].xxxx; 185: ELSE; # (goto 187) 186: MOV TEMP[7].x, CONST[32].xxxx; 187: ENDIF; 188: IF TEMP[7].xxxx; # (if false, goto 195); 189: MOV_SAT TEMP[4].x, TEMP[5].xxxx; 190: MUL TEMP[7].x, CONST[32].yyyy, TEMP[4].xxxx; 191: ADD TEMP[8].x, CONST[32].wwww, TEMP[7].-x-x-x-x; 192: MUL TEMP[7].x, TEMP[4].xxxx, TEMP[8].xxxx; 193: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[7].xxxx; 194: MOV TEMP[4].x, TEMP[8].xxxx; 195: ELSE; # (goto 197) 196: MOV TEMP[4].x, TEMP[5].xxxx; 197: ENDIF; 198: MUL TEMP[7].x, TEMP[4].xxxx, TEMP[2].xxxx; 199: MUL TEMP[2].x, TEMP[7].xxxx, CONST[33].wwww; 200: MAX TEMP[4].x, TEMP[2].xxxx, CONST[32].xxxx; 201: SLE TEMP[2].x, TEMP[5].xxxx, CONST[32].xxxx; 202: IF TEMP[2].xxxx; # (if false, goto 204); 203: MOV TEMP[2].x, CONST[32].xxxx; 204: ELSE; # (goto 216) 205: MUL TEMP[5], UNIFORM[10], INPUT[15].xxxx; 206: MAD TEMP[7], UNIFORM[11], INPUT[15].yyyy, TEMP[5]; 207: MAD TEMP[5], UNIFORM[12], INPUT[15].zzzz, TEMP[7]; 208: ADD TEMP[7], TEMP[5], UNIFORM[13]; 209: MUL TEMP[5].x, CONST[40].wwww, TEMP[7].wwww; 210: ADD TEMP[8].x, TEMP[7].zzzz, TEMP[5].-x-x-x-x; 211: MOV TEMP[5], TEMP[7].xyyy; 212: MOV TEMP[5].w, TEMP[7].wwww; 213: MOV TEMP[5].z, TEMP[8].xxxx; 214: TXP TEMP[7].x, TEMP[5], texture[1], 2D SHADOW; 215: MOV TEMP[2].x, TEMP[7].xxxx; 216: ENDIF; 217: MOV TEMP[5].w, CONST[32].xxxx; 218: MUL TEMP[7].x, TEMP[4].xxxx, UNIFORM[9].xxxx; 219: ADD TEMP[4].x, CONST[32].zzzz, TEMP[2].-x-x-x-x; 220: MUL TEMP[2].x, TEMP[7].xxxx, TEMP[4].xxxx; 221: MUL TEMP[5].xyz, TEMP[3].xyzx, TEMP[2].xxxx; 222: ADD TEMP[2], TEMP[6], TEMP[5].-x-y-z-w; 223: ADD TEMP[4].xyz, INPUT[15].xyzz, UNIFORM[8].-x-y-z-z; 224: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz; 225: RSQ TEMP[6].x, TEMP[5].xxxx; 226: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[6].xxxx; 227: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz; 228: RSQ TEMP[4].x, TEMP[6].xxxx; 229: MUL TEMP[4].x, TEMP[4].xxxx, TEMP[6].xxxx; 230: CMP TEMP[4].x, TEMP[6].-x-x-x-x, TEMP[4].xxxx, CONST[32].xxxx; 231: ADD TEMP[6].x, CONST[35].wwww, TEMP[4].xxxx; 232: RCP TEMP[4].x, TEMP[6].xxxx; 233: MUL TEMP[6].x, CONST[35].wwww, TEMP[4].xxxx; 234: DP3 TEMP[4].x, TEMP[5].xyzz, UNIFORM[7].xyzz; 235: SLE TEMP[7].x, TEMP[4].xxxx, CONST[36].wwww; 236: IF TEMP[7].xxxx; # (if false, goto 238); 237: MOV TEMP[7].x, CONST[32].xxxx; 238: ELSE; # (goto 249) 239: ADD TEMP[8].x, TEMP[4].xxxx, CONST[37].wwww; 240: MUL TEMP[9].x, TEMP[8].xxxx, CONST[38].wwww; 241: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 242: MUL TEMP[9].x, CONST[32].yyyy, TEMP[8].xxxx; 243: ADD TEMP[10].x, CONST[32].wwww, TEMP[9].-x-x-x-x; 244: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 245: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 246: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[10].xxxx; 247: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[8].xxxx; 248: MOV TEMP[7].x, TEMP[4].xxxx; 249: ENDIF; 250: SLT TEMP[4].x, TEMP[7].xxxx, CONST[39].wwww; 251: IF TEMP[4].xxxx; # (if false, goto 253); 252: MOV TEMP[4].x, CONST[32].xxxx; 253: ELSE; # (goto 255) 254: MOV TEMP[4].x, TEMP[7].xxxx; 255: ENDIF; 256: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[5].xyzz; 257: SGT TEMP[1].x, TEMP[6].xxxx, CONST[32].xxxx; 258: IF TEMP[1].xxxx; # (if false, goto 261); 259: SLT TEMP[1].x, TEMP[6].xxxx, CONST[32].zzzz; 260: MOV TEMP[5].x, TEMP[1].xxxx; 261: ELSE; # (goto 263) 262: MOV TEMP[5].x, CONST[32].xxxx; 263: ENDIF; 264: IF TEMP[5].xxxx; # (if false, goto 271); 265: MOV_SAT TEMP[1].x, TEMP[6].xxxx; 266: MUL TEMP[5].x, CONST[32].yyyy, TEMP[1].xxxx; 267: ADD TEMP[7].x, CONST[32].wwww, TEMP[5].-x-x-x-x; 268: MUL TEMP[5].x, TEMP[1].xxxx, TEMP[7].xxxx; 269: MUL TEMP[7].x, TEMP[1].xxxx, TEMP[5].xxxx; 270: MOV TEMP[1].x, TEMP[7].xxxx; 271: ELSE; # (goto 273) 272: MOV TEMP[1].x, TEMP[6].xxxx; 273: ENDIF; 274: MUL TEMP[5].x, TEMP[1].xxxx, TEMP[4].xxxx; 275: MUL TEMP[1].x, TEMP[5].xxxx, CONST[33].wwww; 276: MAX TEMP[4].x, TEMP[1].xxxx, CONST[32].xxxx; 277: SLE TEMP[1].x, TEMP[6].xxxx, CONST[32].xxxx; 278: IF TEMP[1].xxxx; # (if false, goto 280); 279: MOV TEMP[1].x, CONST[32].xxxx; 280: ELSE; # (goto 292) 281: MUL TEMP[5], UNIFORM[2], INPUT[15].xxxx; 282: MAD TEMP[6], UNIFORM[3], INPUT[15].yyyy, TEMP[5]; 283: MAD TEMP[5], UNIFORM[4], INPUT[15].zzzz, TEMP[6]; 284: ADD TEMP[6], TEMP[5], UNIFORM[5]; 285: MUL TEMP[5].x, CONST[40].wwww, TEMP[6].wwww; 286: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[5].-x-x-x-x; 287: MOV TEMP[5], TEMP[6].xyyy; 288: MOV TEMP[5].w, TEMP[6].wwww; 289: MOV TEMP[5].z, TEMP[7].xxxx; 290: TXP TEMP[6].x, TEMP[5], texture[0], 2D SHADOW; 291: MOV TEMP[1].x, TEMP[6].xxxx; 292: ENDIF; 293: MOV TEMP[5].w, CONST[32].xxxx; 294: MUL TEMP[6].x, TEMP[4].xxxx, UNIFORM[1].xxxx; 295: ADD TEMP[4].x, CONST[32].zzzz, TEMP[1].-x-x-x-x; 296: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[4].xxxx; 297: MUL TEMP[4].xyz, TEMP[3].xyzz, TEMP[1].xxxx; 298: MOV TEMP[5].xyz, TEMP[4].xyzx; 299: ADD TEMP[1], TEMP[2], TEMP[5].-x-y-z-w; 300: ADD TEMP[2], TEMP[1], TEMP[0]; 301: MUL TEMP[0].xyz, TEMP[2].xyzz, UNIFORM[0].xyzz; 302: MOV TEMP[1].xyz, TEMP[0].xyzx; 303: MOV TEMP[1].w, CONST[32].zzzz; 304: SEQ TEMP[0].x, STATE[31].wwww, CONST[32].xxxx; 305: IF TEMP[0].xxxx; # (if false, goto 311); 306: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 307: RSQ TEMP[2].x, TEMP[0].xxxx; 308: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx; 309: CMP TEMP[2].x, TEMP[0].-x-x-x-x, TEMP[2].xxxx, CONST[32].xxxx; 310: MOV TEMP[0].x, TEMP[2].xxxx; 311: ELSE; # (goto 313) 312: MOV TEMP[0].x, INPUT[15].-z-z-z-z; 313: ENDIF; 314: ADD TEMP[2].x, TEMP[0].xxxx, CONST[41].wwww; 315: MUL TEMP[0].x, TEMP[2].xxxx, CONST[42].xxxx; 316: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 317: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx; 318: ADD TEMP[2].x, CONST[32].zzzz, TEMP[0].-x-x-x-x; 319: ADD TEMP[0].x, CONST[32].zzzz, TEMP[2].-x-x-x-x; 320: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 321: ADD TEMP[0].x, CONST[32].zzzz, TEMP[2].-x-x-x-x; 322: MUL TEMP[3].xyz, TEMP[1], TEMP[0].xxxx; 323: MAD TEMP[0].xyz, CONST[43].xyzx, TEMP[2].xxxx, TEMP[3].xyzx; 324: MOV TEMP[0].w, UNIFORM[0].wwww; 325: MOV OUTPUT[2], TEMP[0]; 326: END InputsRead: 0x3c000 (0b11,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=327 NumTemporaries=11 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0xff (0b11111111) Samplers=[ 7 6 5 4 3 2 1 0 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=4 UNIFORM unfobcolor = {1, 1, 1, 1} param[1] sz=1 UNIFORM unf295 = {1, 0, 0, 0} param[2] sz=16 UNIFORM unf289 = {5.7, -0.0767, 0.249, 0.191} param[3] sz=12 UNIFORM unf289 = {0.565, -1.44, -1.26, -0.969} param[4] sz=8 UNIFORM unf289 = {-0.271, -5.55, 0.208, 0.159} param[5] sz=4 UNIFORM unf289 = {17.1, -8.62, -8.83, 0.23} param[6] sz=4 SAMPLER samp7 = {0, 0, 0, 0} param[7] sz=3 UNIFORM unf268 = {0.191, -0.969, 0.159, 0} param[8] sz=3 UNIFORM unf261 = {-3.01, -0.58, -1.36, 0} param[9] sz=1 UNIFORM unf254 = {1, 0, 0, 0} param[10] sz=16 UNIFORM unf248 = {5.7, -0.0767, 0.249, 0.191} param[11] sz=12 UNIFORM unf248 = {0.565, -1.44, -1.26, -0.969} param[12] sz=8 UNIFORM unf248 = {-0.271, -5.55, 0.208, 0.159} param[13] sz=4 UNIFORM unf248 = {2.33, 3.5, 2.15, 8.65} param[14] sz=4 SAMPLER samp6 = {1, 0, 0, 0} param[15] sz=3 UNIFORM unf227 = {0.191, -0.969, 0.159, 0} param[16] sz=3 UNIFORM unf220 = {-1.32, 8.42, -1.54, 0} param[17] sz=3 UNIFORM unf213 = {2.2, 1.97, 1.79, 0} param[18] sz=4 SAMPLER samp5 = {2, 0, 0, 0} param[19] sz=4 UNIFORM unf179 = {2.2, 1.97, 1.79, 2.2} param[20] sz=3 UNIFORM unf165 = {0.233, -0.601, -0.764, 0} param[21] sz=4 SAMPLER samp4 = {3, 0, 0, 0} param[22] sz=4 UNIFORM unf128 = {0.551, 0.557, 0.68, 0.68} param[23] sz=3 UNIFORM unf112 = {-0.243, -0.303, 0.922, 0} param[24] sz=4 SAMPLER samp3 = {4, 0, 0, 0} param[25] sz=4 SAMPLER samp2 = {5, 0, 0, 0} param[26] sz=4 SAMPLER samp1 = {6, 0, 0, 0} param[27] sz=4 SAMPLER samp0 = {7, 0, 0, 0} param[28] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[29] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[30] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[31] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[32] sz=4 CONST (null) = {0, 2, 1, 3} param[33] sz=4 CONST (null) = {0, 0, -1, 0.698} param[34] sz=4 CONST (null) = {0.35, 0.45, 0.2, 100} param[35] sz=4 CONST (null) = {-0.5, 0.5, -0.5, 20} param[36] sz=4 CONST (null) = {0.8, 0.3, 0, 0.996} param[37] sz=4 CONST (null) = {0.25, 0.35, 0, -0.996} param[38] sz=4 CONST (null) = {0.234, 0.352, 0.576, 1.75e+03} param[39] sz=4 CONST (null) = {0.216, 0.228, 0.137, 0.001} param[40] sz=4 CONST (null) = {0.6, 0.8, 1, 0.005} param[41] sz=4 CONST (null) = {0.2, -0.1, 0, -6} param[42] sz=1 CONST (null) = {0.0385, 0, 0, 0} param[43] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL IN[3], GENERIC[13], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL SAMP[3] DCL SAMP[4] DCL SAMP[5] DCL SAMP[6] DCL SAMP[7] DCL CONST[0..5] DCL CONST[7..13] DCL CONST[15..17] DCL CONST[19..20] DCL CONST[22..23] DCL CONST[28..31] DCL TEMP[0..10] IMM FLT32 { 0.0000, 2.0000, 1.0000, 3.0000} IMM FLT32 { 0.0000, -1.0000, 0.6980, 0.0385} IMM FLT32 { 0.3500, 0.4500, 0.2000, 100.0000} IMM FLT32 { -0.5000, 0.5000, 20.0000, 0.9063} IMM FLT32 { 0.8000, 0.3000, 0.0000, 0.9962} IMM FLT32 { 0.2500, 0.3500, 0.0000, -0.9962} IMM FLT32 { 0.2343, 0.3524, 0.5757, 1751.3136} IMM FLT32 { 0.2158, 0.2278, 0.1367, 0.0010} IMM FLT32 { 0.6000, 0.8000, 1.0000, 0.0050} IMM FLT32 { 0.2000, -0.1000, 0.0000, -6.0000} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[31].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: TEX TEMP[0].xyz, IN[3].xyyy, SAMP[6], 2D 14: DP3 TEMP[3].x, IMM[2], TEMP[0].xyzz 15: MAX TEMP[0].x, TEMP[3].xxxx, IMM[0].xxxx 16: TEX TEMP[3].xyz, IN[3].xyyy, SAMP[5], 2D 17: MOV TEMP[4].x, TEMP[3].xxxx 18: MOV TEMP[4].y, -TEMP[3].yyyy 19: MOV TEMP[4].z, TEMP[3].zzzz 20: ADD TEMP[3].xyz, TEMP[4].xyzz, IMM[3].xyxz 21: MUL TEMP[4].xyz, IMM[0].yyyy, TEMP[3].xyzz 22: DP3 TEMP[3].x, IN[2].xyzz, IN[2].xyzz 23: RSQ TEMP[5].x, TEMP[3].xxxx 24: MUL TEMP[3].xyz, IN[2].xyzz, TEMP[5].xxxx 25: MUL TEMP[5].xyz, TEMP[1].zxyy, TEMP[3].yzxx 26: MAD TEMP[6].xyz, TEMP[1].yzxx, TEMP[3].zxyy, -TEMP[5].xyzz 27: MUL TEMP[5].xyz, TEMP[4].xxxx, TEMP[3].xyzz 28: MAD TEMP[3].xyz, TEMP[4].yyyy, TEMP[6].xyzz, TEMP[5].xyzz 29: MAD TEMP[5].xyz, TEMP[4].zzzz, TEMP[1].xyzz, TEMP[3].xyzz 30: DP3 TEMP[1].x, TEMP[5].xyzz, TEMP[5].xyzz 31: RSQ TEMP[3].x, TEMP[1].xxxx 32: MUL TEMP[1].xyz, TEMP[5].xyzz, TEMP[3].xxxx 33: TEX TEMP[3].xyz, IN[3].xyyy, SAMP[5], 2D 34: MOV TEMP[4].x, TEMP[3].xxxx 35: MOV TEMP[4].y, -TEMP[3].yyyy 36: MOV TEMP[4].z, TEMP[3].zzzz 37: ADD TEMP[3].xyz, TEMP[4].xyzz, IMM[3].xyxx 38: MUL TEMP[4].xyz, IMM[0].yyyy, TEMP[3].xyzz 39: DP3 TEMP[3].x, IN[2].xyzz, IN[2].xyzz 40: RSQ TEMP[5].x, TEMP[3].xxxx 41: MUL TEMP[3].xyz, IN[2].xyzz, TEMP[5].xxxx 42: MUL TEMP[5].xyz, TEMP[1].zxyy, TEMP[3].yzxx 43: MAD TEMP[6].xyz, TEMP[1].yzxx, TEMP[3].zxyy, -TEMP[5].xyzz 44: MUL TEMP[5].xyz, TEMP[4].xxxx, TEMP[3].xyzz 45: MAD TEMP[3].xyz, TEMP[4].yyyy, TEMP[6].xyzz, TEMP[5].xyzz 46: MAD TEMP[5].xyz, TEMP[4].zzzz, TEMP[1].xyzz, TEMP[3].xyzz 47: DP3 TEMP[1].x, TEMP[5].xyzz, TEMP[5].xyzz 48: RSQ TEMP[3].x, TEMP[1].xxxx 49: MUL TEMP[1].xyz, TEMP[5].xyzz, TEMP[3].xxxx 50: MOV TEMP[3].xyz, -TEMP[1].xyzx 51: MAD TEMP[5].xy, TEMP[3].xyxx, IMM[3].yyxx, IMM[3].yyxx 52: MAD TEMP[4].xy, TEMP[3].xyyy, IMM[3].yyyy, IMM[3].yyyy 53: MAD TEMP[3].xy, IMM[4], TEMP[4].xyxx, IMM[5] 54: TEX TEMP[4].xyz, TEMP[3].xyyy, SAMP[4], 2D 55: DP3 TEMP[3].x, IMM[2].xyzz, TEMP[4].xyzz 56: ADD TEMP[4].x, IMM[0].zzzz, -TEMP[3].xxxx 57: MAD TEMP[3].xy, IMM[8], TEMP[5].xyzz, IMM[9] 58: TEX TEMP[5].xyz, TEMP[3].xyyy, SAMP[4], 2D 59: DP3 TEMP[3].x, IMM[2].xyzz, TEMP[5].xyzz 60: ADD TEMP[5].x, IMM[0].zzzz, -TEMP[3].xxxx 61: TEX TEMP[3].xyz, IN[3].xyyy, SAMP[7], 2D 62: MAD TEMP[6].xyz, IMM[7], TEMP[5].xxxx, TEMP[3].xyzz 63: MAD TEMP[3].xyz, TEMP[4].xxxx, IMM[6], TEMP[6].xyzz 64: MOV TEMP[4].w, IMM[0].zzzz 65: MOV TEMP[4].xyz, TEMP[3].xyzx 66: MUL TEMP[5], TEMP[4], IMM[2].zzzz 67: DP3 TEMP[4].x, TEMP[1].xyzz, CONST[23].xyzz 68: MAD TEMP[6].x, IMM[3].yyyy, TEMP[4].xxxx, IMM[3].yyyy 69: SGT TEMP[4].x, TEMP[6].xxxx, IMM[0].xxxx 70: IF TEMP[4].xxxx :73 71: SLT TEMP[4].x, TEMP[6].xxxx, IMM[0].zzzz 72: MOV TEMP[7].x, TEMP[4].xxxx 73: ELSE :75 74: MOV TEMP[7].x, IMM[0].xxxx 75: ENDIF 76: IF TEMP[7].xxxx :83 77: MOV_SAT TEMP[4].x, TEMP[6].xxxx 78: MUL TEMP[7].x, IMM[0].yyyy, TEMP[4].xxxx 79: ADD TEMP[8].x, IMM[0].wwww, -TEMP[7].xxxx 80: MUL TEMP[7].x, TEMP[4].xxxx, TEMP[8].xxxx 81: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[7].xxxx 82: MOV TEMP[4].x, TEMP[8].xxxx 83: ELSE :85 84: MOV TEMP[4].x, TEMP[6].xxxx 85: ENDIF 86: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[1].xyzz 87: TEX TEMP[7], TEMP[6].xxxx, SAMP[3], 1D 88: MOV TEMP[6].w, IMM[0].zzzz 89: MOV TEMP[6].xyz, TEMP[3].xyzx 90: MOV_SAT TEMP[8].x, TEMP[7].wwww 91: ADD TEMP[9], IMM[0].zzzz, -TEMP[7] 92: ADD TEMP[7].x, IMM[0].zzzz, -TEMP[8].xxxx 93: MAD TEMP[10], TEMP[8].xxxx, TEMP[9], TEMP[7].xxxx 94: ADD TEMP[7], IMM[0].zzzz, -TEMP[6] 95: MUL TEMP[6], TEMP[10], TEMP[7] 96: ADD TEMP[6], IMM[0].zzzz, -TEMP[6] 97: MOV TEMP[6].w, IMM[0].zzzz 98: MUL TEMP[7].x, TEMP[4].xxxx, IMM[1].zzzz 99: MAX TEMP[4].x, TEMP[7].xxxx, IMM[0].xxxx 100: MUL TEMP[7], CONST[22], TEMP[4].xxxx 101: MAD TEMP[4], TEMP[7], TEMP[6], TEMP[5] 102: DP3 TEMP[5].x, TEMP[1].xyzz, CONST[20].xyzz 103: SGT TEMP[6].x, TEMP[5].xxxx, IMM[0].xxxx 104: IF TEMP[6].xxxx :107 105: SLT TEMP[6].x, TEMP[5].xxxx, IMM[0].zzzz 106: MOV TEMP[7].x, TEMP[6].xxxx 107: ELSE :109 108: MOV TEMP[7].x, IMM[0].xxxx 109: ENDIF 110: IF TEMP[7].xxxx :117 111: MOV_SAT TEMP[6].x, TEMP[5].xxxx 112: MUL TEMP[7].x, IMM[0].yyyy, TEMP[6].xxxx 113: ADD TEMP[8].x, IMM[0].wwww, -TEMP[7].xxxx 114: MUL TEMP[7].x, TEMP[6].xxxx, TEMP[8].xxxx 115: MUL TEMP[8].x, TEMP[6].xxxx, TEMP[7].xxxx 116: MOV TEMP[6].x, TEMP[8].xxxx 117: ELSE :119 118: MOV TEMP[6].x, TEMP[5].xxxx 119: ENDIF 120: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[1].xyzz 121: TEX TEMP[7], TEMP[5].xxxx, SAMP[2], 1D 122: MOV TEMP[5].w, IMM[0].zzzz 123: MOV TEMP[5].xyz, TEMP[3].xyzx 124: MOV_SAT TEMP[8].x, TEMP[7].wwww 125: ADD TEMP[9], IMM[0].zzzz, -TEMP[7] 126: ADD TEMP[7].x, IMM[0].zzzz, -TEMP[8].xxxx 127: MAD TEMP[10], TEMP[8].xxxx, TEMP[9], TEMP[7].xxxx 128: ADD TEMP[7], IMM[0].zzzz, -TEMP[5] 129: MUL TEMP[5], TEMP[10], TEMP[7] 130: ADD TEMP[5], IMM[0].zzzz, -TEMP[5] 131: MOV TEMP[5].w, IMM[0].zzzz 132: MUL TEMP[7].x, TEMP[6].xxxx, IMM[1].zzzz 133: MAX TEMP[6].x, TEMP[7].xxxx, IMM[0].xxxx 134: MUL TEMP[7], CONST[19], TEMP[6].xxxx 135: MAD TEMP[6], TEMP[7], TEMP[5], TEMP[4] 136: ADD TEMP[4].xyz, CONST[20].xyzz, TEMP[2].xyzz 137: MOV TEMP[2].w, IMM[0].zzzz 138: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz 139: RSQ TEMP[7].x, TEMP[5].xxxx 140: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[7].xxxx 141: DP3 TEMP[4].x, TEMP[5].xyzz, TEMP[1].xyzz 142: MAX TEMP[5].x, TEMP[4].xxxx, IMM[0].xxxx 143: POW TEMP[4].x, TEMP[5].xxxx, IMM[2].wwww 144: MUL TEMP[5].x, TEMP[0].xxxx, TEMP[4].xxxx 145: MUL TEMP[2].xyz, TEMP[5].xxxx, CONST[17].xyzx 146: ADD TEMP[0], IMM[0].xxxy, TEMP[2] 147: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[16].xyzz 148: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz 149: RSQ TEMP[5].x, TEMP[4].xxxx 150: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[5].xxxx 151: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz 152: RSQ TEMP[2].x, TEMP[5].xxxx 153: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx 154: CMP TEMP[2].x, -TEMP[5].xxxx, TEMP[2].xxxx, IMM[0].xxxx 155: ADD TEMP[5].x, IMM[3].zzzz, TEMP[2].xxxx 156: RCP TEMP[2].x, TEMP[5].xxxx 157: MUL TEMP[5].x, IMM[3].zzzz, TEMP[2].xxxx 158: DP3 TEMP[2].x, TEMP[4].xyzz, CONST[15].xyzz 159: SLE TEMP[7].x, TEMP[2].xxxx, IMM[4].wwww 160: IF TEMP[7].xxxx :162 161: MOV TEMP[7].x, IMM[0].xxxx 162: ELSE :173 163: ADD TEMP[8].x, TEMP[2].xxxx, IMM[5].wwww 164: MUL TEMP[9].x, TEMP[8].xxxx, IMM[6].wwww 165: MOV_SAT TEMP[8].x, TEMP[9].xxxx 166: MUL TEMP[9].x, IMM[0].yyyy, TEMP[8].xxxx 167: ADD TEMP[10].x, IMM[0].wwww, -TEMP[9].xxxx 168: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 169: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 170: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx 171: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[8].xxxx 172: MOV TEMP[7].x, TEMP[2].xxxx 173: ENDIF 174: SLT TEMP[2].x, TEMP[7].xxxx, IMM[7].wwww 175: IF TEMP[2].xxxx :177 176: MOV TEMP[2].x, IMM[0].xxxx 177: ELSE :179 178: MOV TEMP[2].x, TEMP[7].xxxx 179: ENDIF 180: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz 181: SGT TEMP[4].x, TEMP[5].xxxx, IMM[0].xxxx 182: IF TEMP[4].xxxx :185 183: SLT TEMP[4].x, TEMP[5].xxxx, IMM[0].zzzz 184: MOV TEMP[7].x, TEMP[4].xxxx 185: ELSE :187 186: MOV TEMP[7].x, IMM[0].xxxx 187: ENDIF 188: IF TEMP[7].xxxx :195 189: MOV_SAT TEMP[4].x, TEMP[5].xxxx 190: MUL TEMP[7].x, IMM[0].yyyy, TEMP[4].xxxx 191: ADD TEMP[8].x, IMM[0].wwww, -TEMP[7].xxxx 192: MUL TEMP[7].x, TEMP[4].xxxx, TEMP[8].xxxx 193: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[7].xxxx 194: MOV TEMP[4].x, TEMP[8].xxxx 195: ELSE :197 196: MOV TEMP[4].x, TEMP[5].xxxx 197: ENDIF 198: MUL TEMP[7].x, TEMP[4].xxxx, TEMP[2].xxxx 199: MUL TEMP[2].x, TEMP[7].xxxx, IMM[1].zzzz 200: MAX TEMP[4].x, TEMP[2].xxxx, IMM[0].xxxx 201: SLE TEMP[2].x, TEMP[5].xxxx, IMM[0].xxxx 202: IF TEMP[2].xxxx :204 203: MOV TEMP[2].x, IMM[0].xxxx 204: ELSE :216 205: MUL TEMP[5], CONST[10], IN[1].xxxx 206: MAD TEMP[7], CONST[11], IN[1].yyyy, TEMP[5] 207: MAD TEMP[5], CONST[12], IN[1].zzzz, TEMP[7] 208: ADD TEMP[7], TEMP[5], CONST[13] 209: MUL TEMP[5].x, IMM[8].wwww, TEMP[7].wwww 210: ADD TEMP[8].x, TEMP[7].zzzz, -TEMP[5].xxxx 211: MOV TEMP[5], TEMP[7].xyyy 212: MOV TEMP[5].w, TEMP[7].wwww 213: MOV TEMP[5].z, TEMP[8].xxxx 214: TXP TEMP[7].x, TEMP[5], SAMP[1], SHADOW2D 215: MOV TEMP[2].x, TEMP[7].xxxx 216: ENDIF 217: MOV TEMP[5].w, IMM[0].xxxx 218: MUL TEMP[7].x, TEMP[4].xxxx, CONST[9].xxxx 219: ADD TEMP[4].x, IMM[0].zzzz, -TEMP[2].xxxx 220: MUL TEMP[2].x, TEMP[7].xxxx, TEMP[4].xxxx 221: MUL TEMP[5].xyz, TEMP[3].xyzx, TEMP[2].xxxx 222: ADD TEMP[2], TEMP[6], -TEMP[5] 223: ADD TEMP[4].xyz, IN[1].xyzz, -CONST[8].xyzz 224: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz 225: RSQ TEMP[6].x, TEMP[5].xxxx 226: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[6].xxxx 227: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz 228: RSQ TEMP[4].x, TEMP[6].xxxx 229: MUL TEMP[4].x, TEMP[4].xxxx, TEMP[6].xxxx 230: CMP TEMP[4].x, -TEMP[6].xxxx, TEMP[4].xxxx, IMM[0].xxxx 231: ADD TEMP[6].x, IMM[3].zzzz, TEMP[4].xxxx 232: RCP TEMP[4].x, TEMP[6].xxxx 233: MUL TEMP[6].x, IMM[3].zzzz, TEMP[4].xxxx 234: DP3 TEMP[4].x, TEMP[5].xyzz, CONST[7].xyzz 235: SLE TEMP[7].x, TEMP[4].xxxx, IMM[4].wwww 236: IF TEMP[7].xxxx :238 237: MOV TEMP[7].x, IMM[0].xxxx 238: ELSE :249 239: ADD TEMP[8].x, TEMP[4].xxxx, IMM[5].wwww 240: MUL TEMP[9].x, TEMP[8].xxxx, IMM[6].wwww 241: MOV_SAT TEMP[8].x, TEMP[9].xxxx 242: MUL TEMP[9].x, IMM[0].yyyy, TEMP[8].xxxx 243: ADD TEMP[10].x, IMM[0].wwww, -TEMP[9].xxxx 244: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 245: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 246: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[10].xxxx 247: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[8].xxxx 248: MOV TEMP[7].x, TEMP[4].xxxx 249: ENDIF 250: SLT TEMP[4].x, TEMP[7].xxxx, IMM[7].wwww 251: IF TEMP[4].xxxx :253 252: MOV TEMP[4].x, IMM[0].xxxx 253: ELSE :255 254: MOV TEMP[4].x, TEMP[7].xxxx 255: ENDIF 256: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[5].xyzz 257: SGT TEMP[1].x, TEMP[6].xxxx, IMM[0].xxxx 258: IF TEMP[1].xxxx :261 259: SLT TEMP[1].x, TEMP[6].xxxx, IMM[0].zzzz 260: MOV TEMP[5].x, TEMP[1].xxxx 261: ELSE :263 262: MOV TEMP[5].x, IMM[0].xxxx 263: ENDIF 264: IF TEMP[5].xxxx :271 265: MOV_SAT TEMP[1].x, TEMP[6].xxxx 266: MUL TEMP[5].x, IMM[0].yyyy, TEMP[1].xxxx 267: ADD TEMP[7].x, IMM[0].wwww, -TEMP[5].xxxx 268: MUL TEMP[5].x, TEMP[1].xxxx, TEMP[7].xxxx 269: MUL TEMP[7].x, TEMP[1].xxxx, TEMP[5].xxxx 270: MOV TEMP[1].x, TEMP[7].xxxx 271: ELSE :273 272: MOV TEMP[1].x, TEMP[6].xxxx 273: ENDIF 274: MUL TEMP[5].x, TEMP[1].xxxx, TEMP[4].xxxx 275: MUL TEMP[1].x, TEMP[5].xxxx, IMM[1].zzzz 276: MAX TEMP[4].x, TEMP[1].xxxx, IMM[0].xxxx 277: SLE TEMP[1].x, TEMP[6].xxxx, IMM[0].xxxx 278: IF TEMP[1].xxxx :280 279: MOV TEMP[1].x, IMM[0].xxxx 280: ELSE :292 281: MUL TEMP[5], CONST[2], IN[1].xxxx 282: MAD TEMP[6], CONST[3], IN[1].yyyy, TEMP[5] 283: MAD TEMP[5], CONST[4], IN[1].zzzz, TEMP[6] 284: ADD TEMP[6], TEMP[5], CONST[5] 285: MUL TEMP[5].x, IMM[8].wwww, TEMP[6].wwww 286: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[5].xxxx 287: MOV TEMP[5], TEMP[6].xyyy 288: MOV TEMP[5].w, TEMP[6].wwww 289: MOV TEMP[5].z, TEMP[7].xxxx 290: TXP TEMP[6].x, TEMP[5], SAMP[0], SHADOW2D 291: MOV TEMP[1].x, TEMP[6].xxxx 292: ENDIF 293: MOV TEMP[5].w, IMM[0].xxxx 294: MUL TEMP[6].x, TEMP[4].xxxx, CONST[1].xxxx 295: ADD TEMP[4].x, IMM[0].zzzz, -TEMP[1].xxxx 296: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[4].xxxx 297: MUL TEMP[4].xyz, TEMP[3].xyzz, TEMP[1].xxxx 298: MOV TEMP[5].xyz, TEMP[4].xyzx 299: ADD TEMP[1], TEMP[2], -TEMP[5] 300: ADD TEMP[2], TEMP[1], TEMP[0] 301: MUL TEMP[0].xyz, TEMP[2].xyzz, CONST[0].xyzz 302: MOV TEMP[1].xyz, TEMP[0].xyzx 303: MOV TEMP[1].w, IMM[0].zzzz 304: SEQ TEMP[0].x, CONST[31].wwww, IMM[0].xxxx 305: IF TEMP[0].xxxx :311 306: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 307: RSQ TEMP[2].x, TEMP[0].xxxx 308: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx 309: CMP TEMP[2].x, -TEMP[0].xxxx, TEMP[2].xxxx, IMM[0].xxxx 310: MOV TEMP[0].x, TEMP[2].xxxx 311: ELSE :313 312: MOV TEMP[0].x, -IN[1].zzzz 313: ENDIF 314: ADD TEMP[2].x, TEMP[0].xxxx, IMM[9].wwww 315: MUL TEMP[0].x, TEMP[2].xxxx, IMM[1].wwww 316: MOV_SAT TEMP[2].x, TEMP[0].xxxx 317: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx 318: ADD TEMP[2].x, IMM[0].zzzz, -TEMP[0].xxxx 319: ADD TEMP[0].x, IMM[0].zzzz, -TEMP[2].xxxx 320: MOV_SAT TEMP[2].x, TEMP[0].xxxx 321: ADD TEMP[0].x, IMM[0].zzzz, -TEMP[2].xxxx 322: MUL TEMP[3].xyz, TEMP[1], TEMP[0].xxxx 323: MAD TEMP[0].xyz, IMM[10].xyzx, TEMP[2].xxxx, TEMP[3].xyzx 324: MOV TEMP[0].w, CONST[0].wwww 325: MOV OUT[0], TEMP[0] 326: END # Vertex Program/Shader 72 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[19].xy, INPUT[18].xyxx; 13: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[17].xxxx; 14: MAD TEMP[1].xyz, STATE[9].xyzz, INPUT[17].yyyy, TEMP[0].xyzz; 15: MAD OUTPUT[18].xyz, STATE[10].xyzx, INPUT[17].zzzx, TEMP[1].xyzx; 16: END InputsRead: 0x60005 (0b110,00000000,00000101) OutputsWritten: 0xf0001 (0b1111,00000000,00000001) NumInstructions=17 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {-0.0188, -7.55e-08, 1, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {1, -1.42e-09, 0.0188, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-2.22e-16, 1, 7.55e-08, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {0.489, -0.873, 0.00932, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {-0.0188, -7.55e-08, 1, -0.000141} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {1, -1.42e-09, 0.0188, -0.49} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-2.22e-16, 1, 7.55e-08, 0.873} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL OUT[4], GENERIC[13] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[4].xy, IN[3].xyxx 13: MUL TEMP[0].xyz, CONST[8].xyzz, IN[2].xxxx 14: MAD TEMP[1].xyz, CONST[9].xyzz, IN[2].yyyy, TEMP[0].xyzz 15: MAD OUT[3].xyz, CONST[10].xyzx, IN[2].zzzx, TEMP[1].xyzx 16: END # Fragment Program/Shader 75 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[26].wwww, CONST[27].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[28].xyzx; 12: ENDIF; 13: ADD TEMP[0].xyz, UNIFORM[22].xyzz, TEMP[2].xyzz; 14: MOV TEMP[3].w, CONST[27].yyyy; 15: DP3 TEMP[4].x, TEMP[0].xyzz, TEMP[0].xyzz; 16: RSQ TEMP[5].x, TEMP[4].xxxx; 17: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[5].xxxx; 18: DP3 TEMP[0].x, TEMP[1].xyzz, TEMP[4].xyzz; 19: MAD TEMP[4].x, CONST[27].wwww, TEMP[0].xxxx, CONST[27].wwww; 20: POW TEMP[0].x, TEMP[4].xxxx, CONST[28].wwww; 21: MUL TEMP[4].x, CONST[27].zzzz, TEMP[0].xxxx; 22: MUL TEMP[3].xyz, TEMP[4].xxxx, UNIFORM[20].xyzx; 23: DP3 TEMP[0].x, TEMP[1].xyzz, UNIFORM[19].xyzz; 24: MAX TEMP[4].x, TEMP[0].xxxx, CONST[27].xxxx; 25: MUL TEMP[0], UNIFORM[18], TEMP[4].xxxx; 26: DP3 TEMP[4].x, TEMP[1].xyzz, UNIFORM[22].xyzz; 27: MAD TEMP[5].x, CONST[27].wwww, TEMP[4].xxxx, CONST[27].wwww; 28: MAX TEMP[4].x, TEMP[5].xxxx, CONST[27].xxxx; 29: MUL TEMP[5], UNIFORM[21], TEMP[4].xxxx; 30: MAD TEMP[4], TEMP[5], CONST[27].yyyx, CONST[27].xxxy; 31: MAD TEMP[5], TEMP[0], CONST[27].yyyx, TEMP[4]; 32: ADD TEMP[0].xyz, UNIFORM[19].xyzz, TEMP[2].xyzz; 33: MOV TEMP[2].w, CONST[27].yyyy; 34: DP3 TEMP[4].x, TEMP[0].xyzz, TEMP[0].xyzz; 35: RSQ TEMP[6].x, TEMP[4].xxxx; 36: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[6].xxxx; 37: DP3 TEMP[0].x, TEMP[4].xyzz, TEMP[1].xyzz; 38: MAX TEMP[4].x, TEMP[0].xxxx, CONST[27].xxxx; 39: POW TEMP[0].x, TEMP[4].xxxx, CONST[28].wwww; 40: MUL TEMP[4].x, CONST[27].zzzz, TEMP[0].xxxx; 41: MUL TEMP[2].xyz, TEMP[4].xxxx, UNIFORM[17].xyzx; 42: ADD TEMP[0], CONST[27].xxxy, TEMP[3]; 43: ADD TEMP[3], TEMP[0], TEMP[2]; 44: ADD TEMP[0].xyz, INPUT[15].xyzz, UNIFORM[16].-x-y-z-z; 45: DP3 TEMP[2].x, TEMP[0].xyzz, TEMP[0].xyzz; 46: RSQ TEMP[4].x, TEMP[2].xxxx; 47: MUL TEMP[2].xyz, TEMP[0].xyzz, TEMP[4].xxxx; 48: DP3 TEMP[4].x, TEMP[0].xyzz, TEMP[0].xyzz; 49: RSQ TEMP[0].x, TEMP[4].xxxx; 50: MUL TEMP[0].x, TEMP[0].xxxx, TEMP[4].xxxx; 51: CMP TEMP[0].x, TEMP[4].-x-x-x-x, TEMP[0].xxxx, CONST[27].xxxx; 52: ADD TEMP[4].x, CONST[29].xxxx, TEMP[0].xxxx; 53: RCP TEMP[0].x, TEMP[4].xxxx; 54: MUL TEMP[4].x, CONST[29].xxxx, TEMP[0].xxxx; 55: DP3 TEMP[0].x, TEMP[2].xyzz, UNIFORM[15].xyzz; 56: SLE TEMP[6].x, TEMP[0].xxxx, CONST[29].yyyy; 57: IF TEMP[6].xxxx; # (if false, goto 59); 58: MOV TEMP[6].x, CONST[27].xxxx; 59: ELSE; # (goto 70) 60: ADD TEMP[7].x, TEMP[0].xxxx, CONST[29].zzzz; 61: MUL TEMP[8].x, TEMP[7].xxxx, CONST[29].wwww; 62: MOV_SAT TEMP[7].x, TEMP[8].xxxx; 63: MUL TEMP[8].x, CONST[27].zzzz, TEMP[7].xxxx; 64: ADD TEMP[9].x, CONST[30].xxxx, TEMP[8].-x-x-x-x; 65: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx; 66: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx; 67: MUL TEMP[7].x, TEMP[0].xxxx, TEMP[9].xxxx; 68: MUL TEMP[0].x, TEMP[4].xxxx, TEMP[7].xxxx; 69: MOV TEMP[6].x, TEMP[0].xxxx; 70: ENDIF; 71: SLT TEMP[0].x, TEMP[6].xxxx, CONST[30].yyyy; 72: IF TEMP[0].xxxx; # (if false, goto 74); 73: MOV TEMP[0].x, CONST[27].xxxx; 74: ELSE; # (goto 76) 75: MOV TEMP[0].x, TEMP[6].xxxx; 76: ENDIF; 77: DP3 TEMP[4].x, TEMP[1].xyzz, TEMP[2].xyzz; 78: MUL TEMP[2].x, TEMP[4].xxxx, TEMP[0].xxxx; 79: MAX TEMP[0].x, TEMP[2].xxxx, CONST[27].xxxx; 80: SLE TEMP[2].x, TEMP[4].xxxx, CONST[27].xxxx; 81: IF TEMP[2].xxxx; # (if false, goto 83); 82: MOV TEMP[2].x, CONST[27].xxxx; 83: ELSE; # (goto 95) 84: MUL TEMP[4], UNIFORM[10], INPUT[15].xxxx; 85: MAD TEMP[6], UNIFORM[11], INPUT[15].yyyy, TEMP[4]; 86: MAD TEMP[4], UNIFORM[12], INPUT[15].zzzz, TEMP[6]; 87: ADD TEMP[6], TEMP[4], UNIFORM[13]; 88: MUL TEMP[4].x, CONST[30].zzzz, TEMP[6].wwww; 89: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[4].-x-x-x-x; 90: MOV TEMP[4], TEMP[6].xyyy; 91: MOV TEMP[4].w, TEMP[6].wwww; 92: MOV TEMP[4].z, TEMP[7].xxxx; 93: TXP TEMP[6].x, TEMP[4], texture[1], 2D SHADOW; 94: MOV TEMP[2].x, TEMP[6].xxxx; 95: ENDIF; 96: MOV TEMP[4].w, CONST[27].xxxx; 97: MUL TEMP[6].x, TEMP[0].xxxx, UNIFORM[9].xxxx; 98: ADD TEMP[0].x, CONST[27].yyyy, TEMP[2].-x-x-x-x; 99: MUL TEMP[4].xyz, TEMP[6].xxxx, TEMP[0].xxxx; 100: ADD TEMP[0], TEMP[5], TEMP[4].-x-y-z-w; 101: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[8].-x-y-z-z; 102: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz; 103: RSQ TEMP[5].x, TEMP[4].xxxx; 104: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[5].xxxx; 105: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz; 106: RSQ TEMP[2].x, TEMP[5].xxxx; 107: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx; 108: CMP TEMP[2].x, TEMP[5].-x-x-x-x, TEMP[2].xxxx, CONST[27].xxxx; 109: ADD TEMP[5].x, CONST[29].xxxx, TEMP[2].xxxx; 110: RCP TEMP[2].x, TEMP[5].xxxx; 111: MUL TEMP[5].x, CONST[29].xxxx, TEMP[2].xxxx; 112: DP3 TEMP[2].x, TEMP[4].xyzz, UNIFORM[7].xyzz; 113: SLE TEMP[6].x, TEMP[2].xxxx, CONST[29].yyyy; 114: IF TEMP[6].xxxx; # (if false, goto 116); 115: MOV TEMP[6].x, CONST[27].xxxx; 116: ELSE; # (goto 127) 117: ADD TEMP[7].x, TEMP[2].xxxx, CONST[29].zzzz; 118: MUL TEMP[8].x, TEMP[7].xxxx, CONST[29].wwww; 119: MOV_SAT TEMP[7].x, TEMP[8].xxxx; 120: MUL TEMP[8].x, CONST[27].zzzz, TEMP[7].xxxx; 121: ADD TEMP[9].x, CONST[30].xxxx, TEMP[8].-x-x-x-x; 122: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx; 123: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx; 124: MUL TEMP[7].x, TEMP[2].xxxx, TEMP[9].xxxx; 125: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx; 126: MOV TEMP[6].x, TEMP[2].xxxx; 127: ENDIF; 128: SLT TEMP[2].x, TEMP[6].xxxx, CONST[30].yyyy; 129: IF TEMP[2].xxxx; # (if false, goto 131); 130: MOV TEMP[2].x, CONST[27].xxxx; 131: ELSE; # (goto 133) 132: MOV TEMP[2].x, TEMP[6].xxxx; 133: ENDIF; 134: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz; 135: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[2].xxxx; 136: MAX TEMP[2].x, TEMP[1].xxxx, CONST[27].xxxx; 137: SLE TEMP[1].x, TEMP[5].xxxx, CONST[27].xxxx; 138: IF TEMP[1].xxxx; # (if false, goto 140); 139: MOV TEMP[1].x, CONST[27].xxxx; 140: ELSE; # (goto 152) 141: MUL TEMP[4], UNIFORM[2], INPUT[15].xxxx; 142: MAD TEMP[5], UNIFORM[3], INPUT[15].yyyy, TEMP[4]; 143: MAD TEMP[4], UNIFORM[4], INPUT[15].zzzz, TEMP[5]; 144: ADD TEMP[5], TEMP[4], UNIFORM[5]; 145: MUL TEMP[4].x, CONST[30].zzzz, TEMP[5].wwww; 146: ADD TEMP[6].x, TEMP[5].zzzz, TEMP[4].-x-x-x-x; 147: MOV TEMP[4], TEMP[5].xyyy; 148: MOV TEMP[4].w, TEMP[5].wwww; 149: MOV TEMP[4].z, TEMP[6].xxxx; 150: TXP TEMP[5].x, TEMP[4], texture[0], 2D SHADOW; 151: MOV TEMP[1].x, TEMP[5].xxxx; 152: ENDIF; 153: MOV TEMP[4].w, CONST[27].xxxx; 154: MUL TEMP[5].x, TEMP[2].xxxx, UNIFORM[1].xxxx; 155: ADD TEMP[2].x, CONST[27].yyyy, TEMP[1].-x-x-x-x; 156: MUL TEMP[4].xyz, TEMP[5].xxxx, TEMP[2].xxxx; 157: ADD TEMP[1], TEMP[0], TEMP[4].-x-y-z-w; 158: ADD TEMP[0], TEMP[1], TEMP[3]; 159: MUL TEMP[1].xyz, TEMP[0].xyzz, UNIFORM[0].xyzz; 160: MOV TEMP[0].xyz, TEMP[1].xyzx; 161: MOV TEMP[0].w, CONST[27].yyyy; 162: SEQ TEMP[1].x, STATE[26].wwww, CONST[27].xxxx; 163: IF TEMP[1].xxxx; # (if false, goto 169); 164: DP3 TEMP[1].x, INPUT[15].xyzz, INPUT[15].xyzz; 165: RSQ TEMP[2].x, TEMP[1].xxxx; 166: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx; 167: CMP TEMP[2].x, TEMP[1].-x-x-x-x, TEMP[2].xxxx, CONST[27].xxxx; 168: MOV TEMP[1].x, TEMP[2].xxxx; 169: ELSE; # (goto 171) 170: MOV TEMP[1].x, INPUT[15].-z-z-z-z; 171: ENDIF; 172: ADD TEMP[2].x, TEMP[1].xxxx, CONST[30].wwww; 173: MUL TEMP[1].x, TEMP[2].xxxx, CONST[31].xxxx; 174: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 175: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx; 176: ADD TEMP[2].x, CONST[27].yyyy, TEMP[1].-x-x-x-x; 177: ADD TEMP[1].x, CONST[27].yyyy, TEMP[2].-x-x-x-x; 178: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 179: ADD TEMP[1].x, CONST[27].yyyy, TEMP[2].-x-x-x-x; 180: MUL TEMP[3], TEMP[0], TEMP[1].xxxx; 181: MAD TEMP[0].xyz, CONST[32].xyzx, TEMP[2].xxxx, TEMP[3].xyzx; 182: MOV TEMP[0].w, UNIFORM[0].wwww; 183: MOV OUTPUT[2], TEMP[0]; 184: END InputsRead: 0xc000 (0b11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=185 NumTemporaries=10 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x3 (0b11) Samplers=[ 1 0 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=4 UNIFORM unfobcolor = {1, 1, 1, 1} param[1] sz=1 UNIFORM unf148 = {1, 0, 0, 0} param[2] sz=16 UNIFORM unf142 = {5.7, -0.0767, 0.249, 0.191} param[3] sz=12 UNIFORM unf142 = {0.565, -1.44, -1.26, -0.969} param[4] sz=8 UNIFORM unf142 = {-0.271, -5.55, 0.208, 0.159} param[5] sz=4 UNIFORM unf142 = {17.1, -8.62, -8.83, 0.23} param[6] sz=4 SAMPLER samp1 = {0, 0, 0, 0} param[7] sz=3 UNIFORM unf123 = {0.191, -0.969, 0.159, 0} param[8] sz=3 UNIFORM unf116 = {-3.01, -0.58, -1.36, 0} param[9] sz=1 UNIFORM unf109 = {1, 0, 0, 0} param[10] sz=16 UNIFORM unf103 = {5.7, -0.0767, 0.249, 0.191} param[11] sz=12 UNIFORM unf103 = {0.565, -1.44, -1.26, -0.969} param[12] sz=8 UNIFORM unf103 = {-0.271, -5.55, 0.208, 0.159} param[13] sz=4 UNIFORM unf103 = {2.33, 3.5, 2.15, 8.65} param[14] sz=4 SAMPLER samp0 = {1, 0, 0, 0} param[15] sz=3 UNIFORM unf84 = {0.191, -0.969, 0.159, 0} param[16] sz=3 UNIFORM unf77 = {-1.32, 8.42, -1.54, 0} param[17] sz=3 UNIFORM unf70 = {2.2, 1.97, 1.79, 0} param[18] sz=4 UNIFORM unf53 = {2.2, 1.97, 1.79, 2.2} param[19] sz=3 UNIFORM unf41 = {0.233, -0.601, -0.764, 0} param[20] sz=3 UNIFORM unf35 = {0.551, 0.557, 0.68, 0} param[21] sz=4 UNIFORM unf21 = {0.551, 0.557, 0.68, 0.68} param[22] sz=3 UNIFORM unf7 = {-0.243, -0.303, 0.922, 0} param[23] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[24] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[25] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[26] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[27] sz=4 CONST (null) = {0, 1, 2, 0.5} param[28] sz=4 CONST (null) = {0, 0, -1, 28} param[29] sz=4 CONST (null) = {20, 0.996, -0.996, 1.75e+03} param[30] sz=4 CONST (null) = {3, 0.001, 0.005, -6} param[31] sz=1 CONST (null) = {0.0385, 0, 0, 0} param[32] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL CONST[0..5] DCL CONST[7..13] DCL CONST[15..26] DCL TEMP[0..9] IMM FLT32 { 0.0000, 1.0000, 2.0000, 0.5000} IMM FLT32 { 0.0000, -1.0000, 28.0000, 0.0385} IMM FLT32 { 20.0000, 0.9962, -0.9962, 1751.3136} IMM FLT32 { 3.0000, 0.0010, 0.0050, -6.0000} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[26].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: ADD TEMP[0].xyz, CONST[22].xyzz, TEMP[2].xyzz 14: MOV TEMP[3].w, IMM[0].yyyy 15: DP3 TEMP[4].x, TEMP[0].xyzz, TEMP[0].xyzz 16: RSQ TEMP[5].x, TEMP[4].xxxx 17: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[5].xxxx 18: DP3 TEMP[0].x, TEMP[1].xyzz, TEMP[4].xyzz 19: MAD TEMP[4].x, IMM[0].wwww, TEMP[0].xxxx, IMM[0].wwww 20: POW TEMP[0].x, TEMP[4].xxxx, IMM[1].zzzz 21: MUL TEMP[4].x, IMM[0].zzzz, TEMP[0].xxxx 22: MUL TEMP[3].xyz, TEMP[4].xxxx, CONST[20].xyzx 23: DP3 TEMP[0].x, TEMP[1].xyzz, CONST[19].xyzz 24: MAX TEMP[4].x, TEMP[0].xxxx, IMM[0].xxxx 25: MUL TEMP[0], CONST[18], TEMP[4].xxxx 26: DP3 TEMP[4].x, TEMP[1].xyzz, CONST[22].xyzz 27: MAD TEMP[5].x, IMM[0].wwww, TEMP[4].xxxx, IMM[0].wwww 28: MAX TEMP[4].x, TEMP[5].xxxx, IMM[0].xxxx 29: MUL TEMP[5], CONST[21], TEMP[4].xxxx 30: MAD TEMP[4], TEMP[5], IMM[0].yyyx, IMM[0].xxxy 31: MAD TEMP[5], TEMP[0], IMM[0].yyyx, TEMP[4] 32: ADD TEMP[0].xyz, CONST[19].xyzz, TEMP[2].xyzz 33: MOV TEMP[2].w, IMM[0].yyyy 34: DP3 TEMP[4].x, TEMP[0].xyzz, TEMP[0].xyzz 35: RSQ TEMP[6].x, TEMP[4].xxxx 36: MUL TEMP[4].xyz, TEMP[0].xyzz, TEMP[6].xxxx 37: DP3 TEMP[0].x, TEMP[4].xyzz, TEMP[1].xyzz 38: MAX TEMP[4].x, TEMP[0].xxxx, IMM[0].xxxx 39: POW TEMP[0].x, TEMP[4].xxxx, IMM[1].zzzz 40: MUL TEMP[4].x, IMM[0].zzzz, TEMP[0].xxxx 41: MUL TEMP[2].xyz, TEMP[4].xxxx, CONST[17].xyzx 42: ADD TEMP[0], IMM[0].xxxy, TEMP[3] 43: ADD TEMP[3], TEMP[0], TEMP[2] 44: ADD TEMP[0].xyz, IN[1].xyzz, -CONST[16].xyzz 45: DP3 TEMP[2].x, TEMP[0].xyzz, TEMP[0].xyzz 46: RSQ TEMP[4].x, TEMP[2].xxxx 47: MUL TEMP[2].xyz, TEMP[0].xyzz, TEMP[4].xxxx 48: DP3 TEMP[4].x, TEMP[0].xyzz, TEMP[0].xyzz 49: RSQ TEMP[0].x, TEMP[4].xxxx 50: MUL TEMP[0].x, TEMP[0].xxxx, TEMP[4].xxxx 51: CMP TEMP[0].x, -TEMP[4].xxxx, TEMP[0].xxxx, IMM[0].xxxx 52: ADD TEMP[4].x, IMM[2].xxxx, TEMP[0].xxxx 53: RCP TEMP[0].x, TEMP[4].xxxx 54: MUL TEMP[4].x, IMM[2].xxxx, TEMP[0].xxxx 55: DP3 TEMP[0].x, TEMP[2].xyzz, CONST[15].xyzz 56: SLE TEMP[6].x, TEMP[0].xxxx, IMM[2].yyyy 57: IF TEMP[6].xxxx :59 58: MOV TEMP[6].x, IMM[0].xxxx 59: ELSE :70 60: ADD TEMP[7].x, TEMP[0].xxxx, IMM[2].zzzz 61: MUL TEMP[8].x, TEMP[7].xxxx, IMM[2].wwww 62: MOV_SAT TEMP[7].x, TEMP[8].xxxx 63: MUL TEMP[8].x, IMM[0].zzzz, TEMP[7].xxxx 64: ADD TEMP[9].x, IMM[3].xxxx, -TEMP[8].xxxx 65: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx 66: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx 67: MUL TEMP[7].x, TEMP[0].xxxx, TEMP[9].xxxx 68: MUL TEMP[0].x, TEMP[4].xxxx, TEMP[7].xxxx 69: MOV TEMP[6].x, TEMP[0].xxxx 70: ENDIF 71: SLT TEMP[0].x, TEMP[6].xxxx, IMM[3].yyyy 72: IF TEMP[0].xxxx :74 73: MOV TEMP[0].x, IMM[0].xxxx 74: ELSE :76 75: MOV TEMP[0].x, TEMP[6].xxxx 76: ENDIF 77: DP3 TEMP[4].x, TEMP[1].xyzz, TEMP[2].xyzz 78: MUL TEMP[2].x, TEMP[4].xxxx, TEMP[0].xxxx 79: MAX TEMP[0].x, TEMP[2].xxxx, IMM[0].xxxx 80: SLE TEMP[2].x, TEMP[4].xxxx, IMM[0].xxxx 81: IF TEMP[2].xxxx :83 82: MOV TEMP[2].x, IMM[0].xxxx 83: ELSE :95 84: MUL TEMP[4], CONST[10], IN[1].xxxx 85: MAD TEMP[6], CONST[11], IN[1].yyyy, TEMP[4] 86: MAD TEMP[4], CONST[12], IN[1].zzzz, TEMP[6] 87: ADD TEMP[6], TEMP[4], CONST[13] 88: MUL TEMP[4].x, IMM[3].zzzz, TEMP[6].wwww 89: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[4].xxxx 90: MOV TEMP[4], TEMP[6].xyyy 91: MOV TEMP[4].w, TEMP[6].wwww 92: MOV TEMP[4].z, TEMP[7].xxxx 93: TXP TEMP[6].x, TEMP[4], SAMP[1], SHADOW2D 94: MOV TEMP[2].x, TEMP[6].xxxx 95: ENDIF 96: MOV TEMP[4].w, IMM[0].xxxx 97: MUL TEMP[6].x, TEMP[0].xxxx, CONST[9].xxxx 98: ADD TEMP[0].x, IMM[0].yyyy, -TEMP[2].xxxx 99: MUL TEMP[4].xyz, TEMP[6].xxxx, TEMP[0].xxxx 100: ADD TEMP[0], TEMP[5], -TEMP[4] 101: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[8].xyzz 102: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz 103: RSQ TEMP[5].x, TEMP[4].xxxx 104: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[5].xxxx 105: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz 106: RSQ TEMP[2].x, TEMP[5].xxxx 107: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx 108: CMP TEMP[2].x, -TEMP[5].xxxx, TEMP[2].xxxx, IMM[0].xxxx 109: ADD TEMP[5].x, IMM[2].xxxx, TEMP[2].xxxx 110: RCP TEMP[2].x, TEMP[5].xxxx 111: MUL TEMP[5].x, IMM[2].xxxx, TEMP[2].xxxx 112: DP3 TEMP[2].x, TEMP[4].xyzz, CONST[7].xyzz 113: SLE TEMP[6].x, TEMP[2].xxxx, IMM[2].yyyy 114: IF TEMP[6].xxxx :116 115: MOV TEMP[6].x, IMM[0].xxxx 116: ELSE :127 117: ADD TEMP[7].x, TEMP[2].xxxx, IMM[2].zzzz 118: MUL TEMP[8].x, TEMP[7].xxxx, IMM[2].wwww 119: MOV_SAT TEMP[7].x, TEMP[8].xxxx 120: MUL TEMP[8].x, IMM[0].zzzz, TEMP[7].xxxx 121: ADD TEMP[9].x, IMM[3].xxxx, -TEMP[8].xxxx 122: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx 123: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx 124: MUL TEMP[7].x, TEMP[2].xxxx, TEMP[9].xxxx 125: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx 126: MOV TEMP[6].x, TEMP[2].xxxx 127: ENDIF 128: SLT TEMP[2].x, TEMP[6].xxxx, IMM[3].yyyy 129: IF TEMP[2].xxxx :131 130: MOV TEMP[2].x, IMM[0].xxxx 131: ELSE :133 132: MOV TEMP[2].x, TEMP[6].xxxx 133: ENDIF 134: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz 135: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[2].xxxx 136: MAX TEMP[2].x, TEMP[1].xxxx, IMM[0].xxxx 137: SLE TEMP[1].x, TEMP[5].xxxx, IMM[0].xxxx 138: IF TEMP[1].xxxx :140 139: MOV TEMP[1].x, IMM[0].xxxx 140: ELSE :152 141: MUL TEMP[4], CONST[2], IN[1].xxxx 142: MAD TEMP[5], CONST[3], IN[1].yyyy, TEMP[4] 143: MAD TEMP[4], CONST[4], IN[1].zzzz, TEMP[5] 144: ADD TEMP[5], TEMP[4], CONST[5] 145: MUL TEMP[4].x, IMM[3].zzzz, TEMP[5].wwww 146: ADD TEMP[6].x, TEMP[5].zzzz, -TEMP[4].xxxx 147: MOV TEMP[4], TEMP[5].xyyy 148: MOV TEMP[4].w, TEMP[5].wwww 149: MOV TEMP[4].z, TEMP[6].xxxx 150: TXP TEMP[5].x, TEMP[4], SAMP[0], SHADOW2D 151: MOV TEMP[1].x, TEMP[5].xxxx 152: ENDIF 153: MOV TEMP[4].w, IMM[0].xxxx 154: MUL TEMP[5].x, TEMP[2].xxxx, CONST[1].xxxx 155: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[1].xxxx 156: MUL TEMP[4].xyz, TEMP[5].xxxx, TEMP[2].xxxx 157: ADD TEMP[1], TEMP[0], -TEMP[4] 158: ADD TEMP[0], TEMP[1], TEMP[3] 159: MUL TEMP[1].xyz, TEMP[0].xyzz, CONST[0].xyzz 160: MOV TEMP[0].xyz, TEMP[1].xyzx 161: MOV TEMP[0].w, IMM[0].yyyy 162: SEQ TEMP[1].x, CONST[26].wwww, IMM[0].xxxx 163: IF TEMP[1].xxxx :169 164: DP3 TEMP[1].x, IN[1].xyzz, IN[1].xyzz 165: RSQ TEMP[2].x, TEMP[1].xxxx 166: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx 167: CMP TEMP[2].x, -TEMP[1].xxxx, TEMP[2].xxxx, IMM[0].xxxx 168: MOV TEMP[1].x, TEMP[2].xxxx 169: ELSE :171 170: MOV TEMP[1].x, -IN[1].zzzz 171: ENDIF 172: ADD TEMP[2].x, TEMP[1].xxxx, IMM[3].wwww 173: MUL TEMP[1].x, TEMP[2].xxxx, IMM[1].wwww 174: MOV_SAT TEMP[2].x, TEMP[1].xxxx 175: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx 176: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[1].xxxx 177: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[2].xxxx 178: MOV_SAT TEMP[2].x, TEMP[1].xxxx 179: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[2].xxxx 180: MUL TEMP[3], TEMP[0], TEMP[1].xxxx 181: MAD TEMP[0].xyz, IMM[4].xyzx, TEMP[2].xxxx, TEMP[3].xyzx 182: MOV TEMP[0].w, CONST[0].wwww 183: MOV OUT[0], TEMP[0] 184: END # Vertex Program/Shader 75 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: END InputsRead: 0x5 (0b101) OutputsWritten: 0x30001 (0b11,00000000,00000001) NumInstructions=13 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {-0.0188, -7.55e-08, 1, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {1, -1.42e-09, 0.0188, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-2.22e-16, 1, 7.55e-08, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {0.489, -0.873, 0.00932, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {-0.0188, -7.55e-08, 1, -0.000141} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {1, -1.42e-09, 0.0188, -0.49} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-2.22e-16, 1, 7.55e-08, 0.873} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: END # Fragment Program/Shader 78 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[30].wwww, CONST[31].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[32].xyzx; 12: ENDIF; 13: TEX TEMP[0], INPUT[17].xyyy, texture[5], 2D; 14: TEX TEMP[3], INPUT[17].xyyy, texture[4], 2D; 15: MOV TEMP[4].x, TEMP[3].xxxx; 16: MOV TEMP[4].y, TEMP[3].-y-y-y-y; 17: MOV TEMP[4].z, TEMP[3].zzzz; 18: ADD TEMP[3].xyz, TEMP[4].xyzz, CONST[33]; 19: MUL TEMP[4].xyz, CONST[31].yyyy, TEMP[3].xyzz; 20: MOV TEMP[3].x, TEMP[4].-x-x-x-x; 21: MOV TEMP[3].y, TEMP[4].-y-y-y-y; 22: DP3 TEMP[5].x, INPUT[16].xyzz, INPUT[16].xyzz; 23: RSQ TEMP[6].x, TEMP[5].xxxx; 24: MUL TEMP[5].xyz, INPUT[16].xyzz, TEMP[6].xxxx; 25: MUL TEMP[6].xyz, TEMP[1].zxyy, TEMP[5].yzxx; 26: MAD TEMP[7].xyz, TEMP[1].yzxx, TEMP[5].zxyy, TEMP[6].-x-y-z-z; 27: MUL TEMP[6].xyz, TEMP[3].xxxx, TEMP[5].xyzz; 28: MAD TEMP[5].xyz, TEMP[3].yyyy, TEMP[7].xyzz, TEMP[6].xyzz; 29: MAD TEMP[3].xyz, TEMP[4].zzzz, TEMP[1].xyzz, TEMP[5].xyzz; 30: DP3 TEMP[1].x, TEMP[3].xyzz, TEMP[3].xyzz; 31: RSQ TEMP[4].x, TEMP[1].xxxx; 32: MUL TEMP[1].xyz, TEMP[3].xyzz, TEMP[4].xxxx; 33: MOV TEMP[3].w, CONST[31].zzzz; 34: MOV TEMP[3].xyz, TEMP[0].xyzx; 35: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[1].xyzz; 36: TEX TEMP[5], TEMP[4].xxxx, texture[3], 1D; 37: MOV TEMP[4].w, CONST[31].zzzz; 38: MOV TEMP[4].xyz, TEMP[0].xyzx; 39: MOV_SAT TEMP[6].x, TEMP[5].wwww; 40: ADD TEMP[7], TEMP[4], TEMP[5]; 41: ADD TEMP[5].x, CONST[31].zzzz, TEMP[6].-x-x-x-x; 42: MUL TEMP[8], TEMP[4], TEMP[5].xxxx; 43: MAD TEMP[5], TEMP[7], TEMP[6].xxxx, TEMP[8]; 44: MOV TEMP[5].w, CONST[31].zzzz; 45: ADD TEMP[4].xyz, UNIFORM[24].xyzz, TEMP[2].xyzz; 46: MOV TEMP[6].w, CONST[31].zzzz; 47: DP3 TEMP[7].x, TEMP[4].xyzz, TEMP[4].xyzz; 48: RSQ TEMP[8].x, TEMP[7].xxxx; 49: MUL TEMP[7].xyz, TEMP[4].xyzz, TEMP[8].xxxx; 50: DP3 TEMP[4].x, TEMP[1].xyzz, TEMP[7].xyzz; 51: MAD TEMP[7].x, CONST[33].yyyy, TEMP[4].xxxx, CONST[33].yyyy; 52: POW TEMP[4].x, TEMP[7].xxxx, CONST[31].wwww; 53: MUL TEMP[6].xyz, TEMP[4].xxxx, UNIFORM[21].xyzx; 54: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[1].xyzz; 55: TEX TEMP[7], TEMP[4].xxxx, texture[2], 1D; 56: MOV TEMP[4].w, CONST[31].zzzz; 57: MOV TEMP[4].xyz, TEMP[0].xyzx; 58: MOV_SAT TEMP[8].x, TEMP[7].wwww; 59: ADD TEMP[9], TEMP[4], TEMP[7]; 60: ADD TEMP[7].x, CONST[31].zzzz, TEMP[8].-x-x-x-x; 61: MUL TEMP[10], TEMP[4], TEMP[7].xxxx; 62: MAD TEMP[7], TEMP[9], TEMP[8].xxxx, TEMP[10]; 63: MOV TEMP[7].w, CONST[31].zzzz; 64: DP3 TEMP[4].x, TEMP[1].xyzz, UNIFORM[20].xyzz; 65: MUL TEMP[8].x, TEMP[4].xxxx, CONST[32].wwww; 66: MAX TEMP[4].x, TEMP[8].xxxx, CONST[31].xxxx; 67: MUL TEMP[8], UNIFORM[19], TEMP[4].xxxx; 68: DP3 TEMP[4].x, TEMP[1].xyzz, UNIFORM[24].xyzz; 69: MAD TEMP[9].x, CONST[33].yyyy, TEMP[4].xxxx, CONST[33].yyyy; 70: MUL TEMP[4].x, TEMP[9].xxxx, CONST[32].wwww; 71: MAX TEMP[9].x, TEMP[4].xxxx, CONST[31].xxxx; 72: MUL TEMP[4], UNIFORM[23], TEMP[9].xxxx; 73: MUL TEMP[9], TEMP[3], CONST[33].wwww; 74: MAD TEMP[3], TEMP[4], TEMP[5], TEMP[9]; 75: MAD TEMP[4], TEMP[8], TEMP[7], TEMP[3]; 76: ADD TEMP[3].xyz, UNIFORM[20].xyzz, TEMP[2].xyzz; 77: MOV TEMP[2].w, CONST[31].zzzz; 78: DP3 TEMP[5].x, TEMP[3].xyzz, TEMP[3].xyzz; 79: RSQ TEMP[7].x, TEMP[5].xxxx; 80: MUL TEMP[5].xyz, TEMP[3].xyzz, TEMP[7].xxxx; 81: DP3 TEMP[3].x, TEMP[5].xyzz, TEMP[1].xyzz; 82: MAX TEMP[5].x, TEMP[3].xxxx, CONST[31].xxxx; 83: POW TEMP[3].x, TEMP[5].xxxx, CONST[31].wwww; 84: MUL TEMP[2].xyz, TEMP[3].xxxx, UNIFORM[17].xyzx; 85: ADD TEMP[3], CONST[31].xxxz, TEMP[6]; 86: ADD TEMP[5], TEMP[3], TEMP[2]; 87: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[16].-x-y-z-z; 88: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[2].xyzz; 89: RSQ TEMP[6].x, TEMP[3].xxxx; 90: MUL TEMP[3].xyz, TEMP[2].xyzz, TEMP[6].xxxx; 91: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[2].xyzz; 92: RSQ TEMP[2].x, TEMP[6].xxxx; 93: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[6].xxxx; 94: CMP TEMP[2].x, TEMP[6].-x-x-x-x, TEMP[2].xxxx, CONST[31].xxxx; 95: ADD TEMP[6].x, CONST[34].xxxx, TEMP[2].xxxx; 96: RCP TEMP[2].x, TEMP[6].xxxx; 97: MUL TEMP[6].x, CONST[34].xxxx, TEMP[2].xxxx; 98: DP3 TEMP[2].x, TEMP[3].xyzz, UNIFORM[15].xyzz; 99: SLE TEMP[7].x, TEMP[2].xxxx, CONST[34].yyyy; 100: IF TEMP[7].xxxx; # (if false, goto 102); 101: MOV TEMP[7].x, CONST[31].xxxx; 102: ELSE; # (goto 113) 103: ADD TEMP[8].x, TEMP[2].xxxx, CONST[34].zzzz; 104: MUL TEMP[9].x, TEMP[8].xxxx, CONST[34].wwww; 105: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 106: MUL TEMP[9].x, CONST[31].yyyy, TEMP[8].xxxx; 107: ADD TEMP[10].x, CONST[35].xxxx, TEMP[9].-x-x-x-x; 108: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 109: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 110: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx; 111: MUL TEMP[2].x, TEMP[6].xxxx, TEMP[8].xxxx; 112: MOV TEMP[7].x, TEMP[2].xxxx; 113: ENDIF; 114: SLT TEMP[2].x, TEMP[7].xxxx, CONST[35].yyyy; 115: IF TEMP[2].xxxx; # (if false, goto 117); 116: MOV TEMP[2].x, CONST[31].xxxx; 117: ELSE; # (goto 119) 118: MOV TEMP[2].x, TEMP[7].xxxx; 119: ENDIF; 120: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[3].xyzz; 121: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[2].xxxx; 122: MUL TEMP[2].x, TEMP[3].xxxx, CONST[32].wwww; 123: MAX TEMP[3].x, TEMP[2].xxxx, CONST[31].xxxx; 124: SLE TEMP[2].x, TEMP[6].xxxx, CONST[31].xxxx; 125: IF TEMP[2].xxxx; # (if false, goto 127); 126: MOV TEMP[2].x, CONST[31].xxxx; 127: ELSE; # (goto 139) 128: MUL TEMP[6], UNIFORM[10], INPUT[15].xxxx; 129: MAD TEMP[7], UNIFORM[11], INPUT[15].yyyy, TEMP[6]; 130: MAD TEMP[6], UNIFORM[12], INPUT[15].zzzz, TEMP[7]; 131: ADD TEMP[7], TEMP[6], UNIFORM[13]; 132: MUL TEMP[6].x, CONST[35].zzzz, TEMP[7].wwww; 133: ADD TEMP[8].x, TEMP[7].zzzz, TEMP[6].-x-x-x-x; 134: MOV TEMP[6], TEMP[7].xyyy; 135: MOV TEMP[6].w, TEMP[7].wwww; 136: MOV TEMP[6].z, TEMP[8].xxxx; 137: TXP TEMP[7].x, TEMP[6], texture[1], 2D SHADOW; 138: MOV TEMP[2].x, TEMP[7].xxxx; 139: ENDIF; 140: MOV TEMP[6].w, CONST[31].xxxx; 141: MUL TEMP[7].x, TEMP[3].xxxx, UNIFORM[9].xxxx; 142: ADD TEMP[3].x, CONST[31].zzzz, TEMP[2].-x-x-x-x; 143: MUL TEMP[2].x, TEMP[7].xxxx, TEMP[3].xxxx; 144: MUL TEMP[6].xyz, TEMP[0].xyzx, TEMP[2].xxxx; 145: ADD TEMP[2], TEMP[4], TEMP[6].-x-y-z-w; 146: ADD TEMP[3].xyz, INPUT[15].xyzz, UNIFORM[8].-x-y-z-z; 147: DP3 TEMP[4].x, TEMP[3].xyzz, TEMP[3].xyzz; 148: RSQ TEMP[6].x, TEMP[4].xxxx; 149: MUL TEMP[4].xyz, TEMP[3].xyzz, TEMP[6].xxxx; 150: DP3 TEMP[6].x, TEMP[3].xyzz, TEMP[3].xyzz; 151: RSQ TEMP[3].x, TEMP[6].xxxx; 152: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[6].xxxx; 153: CMP TEMP[3].x, TEMP[6].-x-x-x-x, TEMP[3].xxxx, CONST[31].xxxx; 154: ADD TEMP[6].x, CONST[34].xxxx, TEMP[3].xxxx; 155: RCP TEMP[3].x, TEMP[6].xxxx; 156: MUL TEMP[6].x, CONST[34].xxxx, TEMP[3].xxxx; 157: DP3 TEMP[3].x, TEMP[4].xyzz, UNIFORM[7].xyzz; 158: SLE TEMP[7].x, TEMP[3].xxxx, CONST[34].yyyy; 159: IF TEMP[7].xxxx; # (if false, goto 161); 160: MOV TEMP[7].x, CONST[31].xxxx; 161: ELSE; # (goto 172) 162: ADD TEMP[8].x, TEMP[3].xxxx, CONST[34].zzzz; 163: MUL TEMP[9].x, TEMP[8].xxxx, CONST[34].wwww; 164: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 165: MUL TEMP[9].x, CONST[31].yyyy, TEMP[8].xxxx; 166: ADD TEMP[10].x, CONST[35].xxxx, TEMP[9].-x-x-x-x; 167: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 168: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 169: MUL TEMP[8].x, TEMP[3].xxxx, TEMP[10].xxxx; 170: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[8].xxxx; 171: MOV TEMP[7].x, TEMP[3].xxxx; 172: ENDIF; 173: SLT TEMP[3].x, TEMP[7].xxxx, CONST[35].yyyy; 174: IF TEMP[3].xxxx; # (if false, goto 176); 175: MOV TEMP[3].x, CONST[31].xxxx; 176: ELSE; # (goto 178) 177: MOV TEMP[3].x, TEMP[7].xxxx; 178: ENDIF; 179: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[4].xyzz; 180: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[3].xxxx; 181: MUL TEMP[3].x, TEMP[1].xxxx, CONST[32].wwww; 182: MAX TEMP[1].x, TEMP[3].xxxx, CONST[31].xxxx; 183: SLE TEMP[3].x, TEMP[6].xxxx, CONST[31].xxxx; 184: IF TEMP[3].xxxx; # (if false, goto 186); 185: MOV TEMP[3].x, CONST[31].xxxx; 186: ELSE; # (goto 198) 187: MUL TEMP[4], UNIFORM[2], INPUT[15].xxxx; 188: MAD TEMP[6], UNIFORM[3], INPUT[15].yyyy, TEMP[4]; 189: MAD TEMP[4], UNIFORM[4], INPUT[15].zzzz, TEMP[6]; 190: ADD TEMP[6], TEMP[4], UNIFORM[5]; 191: MUL TEMP[4].x, CONST[35].zzzz, TEMP[6].wwww; 192: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[4].-x-x-x-x; 193: MOV TEMP[4], TEMP[6].xyyy; 194: MOV TEMP[4].w, TEMP[6].wwww; 195: MOV TEMP[4].z, TEMP[7].xxxx; 196: TXP TEMP[6].x, TEMP[4], texture[0], 2D SHADOW; 197: MOV TEMP[3].x, TEMP[6].xxxx; 198: ENDIF; 199: MOV TEMP[4].w, CONST[31].xxxx; 200: MUL TEMP[6].x, TEMP[1].xxxx, UNIFORM[1].xxxx; 201: ADD TEMP[1].x, CONST[31].zzzz, TEMP[3].-x-x-x-x; 202: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[1].xxxx; 203: MUL TEMP[4].xyz, TEMP[0].xyzx, TEMP[3].xxxx; 204: ADD TEMP[0], TEMP[2], TEMP[4].-x-y-z-w; 205: ADD TEMP[1], TEMP[0], TEMP[5]; 206: MUL TEMP[0].xyz, TEMP[1].xyzz, UNIFORM[0].xyzz; 207: MOV TEMP[1].xyz, TEMP[0].xyzx; 208: MOV TEMP[1].w, CONST[31].zzzz; 209: SEQ TEMP[0].x, STATE[30].wwww, CONST[31].xxxx; 210: IF TEMP[0].xxxx; # (if false, goto 216); 211: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 212: RSQ TEMP[2].x, TEMP[0].xxxx; 213: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx; 214: CMP TEMP[2].x, TEMP[0].-x-x-x-x, TEMP[2].xxxx, CONST[31].xxxx; 215: MOV TEMP[0].x, TEMP[2].xxxx; 216: ELSE; # (goto 218) 217: MOV TEMP[0].x, INPUT[15].-z-z-z-z; 218: ENDIF; 219: ADD TEMP[2].x, TEMP[0].xxxx, CONST[35].wwww; 220: MUL TEMP[0].x, TEMP[2].xxxx, CONST[36].xxxx; 221: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 222: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx; 223: ADD TEMP[2].x, CONST[31].zzzz, TEMP[0].-x-x-x-x; 224: ADD TEMP[0].x, CONST[31].zzzz, TEMP[2].-x-x-x-x; 225: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 226: ADD TEMP[0].x, CONST[31].zzzz, TEMP[2].-x-x-x-x; 227: MUL TEMP[3], TEMP[1], TEMP[0].xxxx; 228: MAD TEMP[0].xyz, CONST[37].xyzx, TEMP[2].xxxx, TEMP[3].xyzx; 229: MOV TEMP[0].w, UNIFORM[0].wwww; 230: MOV OUTPUT[2], TEMP[0]; 231: END InputsRead: 0x3c000 (0b11,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=232 NumTemporaries=11 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x3f (0b111111) Samplers=[ 5 4 3 2 1 0 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=4 UNIFORM unfobcolor = {1, 1, 1, 1} param[1] sz=1 UNIFORM unf212 = {1, 0, 0, 0} param[2] sz=16 UNIFORM unf206 = {5.7, -0.0767, 0.249, 0.191} param[3] sz=12 UNIFORM unf206 = {0.565, -1.44, -1.26, -0.969} param[4] sz=8 UNIFORM unf206 = {-0.271, -5.55, 0.208, 0.159} param[5] sz=4 UNIFORM unf206 = {17.1, -8.62, -8.83, 0.23} param[6] sz=4 SAMPLER samp5 = {0, 0, 0, 0} param[7] sz=3 UNIFORM unf187 = {0.191, -0.969, 0.159, 0} param[8] sz=3 UNIFORM unf180 = {-3.01, -0.58, -1.36, 0} param[9] sz=1 UNIFORM unf173 = {1, 0, 0, 0} param[10] sz=16 UNIFORM unf167 = {5.7, -0.0767, 0.249, 0.191} param[11] sz=12 UNIFORM unf167 = {0.565, -1.44, -1.26, -0.969} param[12] sz=8 UNIFORM unf167 = {-0.271, -5.55, 0.208, 0.159} param[13] sz=4 UNIFORM unf167 = {2.33, 3.5, 2.15, 8.65} param[14] sz=4 SAMPLER samp4 = {1, 0, 0, 0} param[15] sz=3 UNIFORM unf148 = {0.191, -0.969, 0.159, 0} param[16] sz=3 UNIFORM unf141 = {-1.32, 8.42, -1.54, 0} param[17] sz=3 UNIFORM unf134 = {2.2, 1.97, 1.79, 0} param[18] sz=4 SAMPLER samp3 = {2, 0, 0, 0} param[19] sz=4 UNIFORM unf100 = {2.2, 1.97, 1.79, 2.2} param[20] sz=3 UNIFORM unf88 = {0.233, -0.601, -0.764, 0} param[21] sz=3 UNIFORM unf82 = {0.551, 0.557, 0.68, 0} param[22] sz=4 SAMPLER samp2 = {3, 0, 0, 0} param[23] sz=4 UNIFORM unf51 = {0.551, 0.557, 0.68, 0.68} param[24] sz=3 UNIFORM unf37 = {-0.243, -0.303, 0.922, 0} param[25] sz=4 SAMPLER samp1 = {4, 0, 0, 0} param[26] sz=4 SAMPLER samp0 = {5, 0, 0, 0} param[27] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[28] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[29] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[30] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[31] sz=4 CONST (null) = {0, 2, 1, 144} param[32] sz=4 CONST (null) = {0, 0, -1, 0.699} param[33] sz=4 CONST (null) = {-0.5, 0.5, -0.5, 0.1} param[34] sz=4 CONST (null) = {20, 0.996, -0.996, 1.75e+03} param[35] sz=4 CONST (null) = {3, 0.001, 0.005, -6} param[36] sz=1 CONST (null) = {0.0385, 0, 0, 0} param[37] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL IN[3], GENERIC[13], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL SAMP[3] DCL SAMP[4] DCL SAMP[5] DCL CONST[0..5] DCL CONST[7..13] DCL CONST[15..17] DCL CONST[19..21] DCL CONST[23..24] DCL CONST[27..30] DCL TEMP[0..10] IMM FLT32 { 0.0000, 2.0000, 1.0000, 144.0000} IMM FLT32 { 0.0000, -1.0000, 0.6993, 0.0385} IMM FLT32 { -0.5000, 0.5000, 0.1000, 0.9063} IMM FLT32 { 20.0000, 0.9962, -0.9962, 1751.3136} IMM FLT32 { 3.0000, 0.0010, 0.0050, -6.0000} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[30].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: TEX TEMP[0], IN[3].xyyy, SAMP[5], 2D 14: TEX TEMP[3], IN[3].xyyy, SAMP[4], 2D 15: MOV TEMP[4].x, TEMP[3].xxxx 16: MOV TEMP[4].y, -TEMP[3].yyyy 17: MOV TEMP[4].z, TEMP[3].zzzz 18: ADD TEMP[3].xyz, TEMP[4].xyzz, IMM[2].xyxz 19: MUL TEMP[4].xyz, IMM[0].yyyy, TEMP[3].xyzz 20: MOV TEMP[3].x, -TEMP[4].xxxx 21: MOV TEMP[3].y, -TEMP[4].yyyy 22: DP3 TEMP[5].x, IN[2].xyzz, IN[2].xyzz 23: RSQ TEMP[6].x, TEMP[5].xxxx 24: MUL TEMP[5].xyz, IN[2].xyzz, TEMP[6].xxxx 25: MUL TEMP[6].xyz, TEMP[1].zxyy, TEMP[5].yzxx 26: MAD TEMP[7].xyz, TEMP[1].yzxx, TEMP[5].zxyy, -TEMP[6].xyzz 27: MUL TEMP[6].xyz, TEMP[3].xxxx, TEMP[5].xyzz 28: MAD TEMP[5].xyz, TEMP[3].yyyy, TEMP[7].xyzz, TEMP[6].xyzz 29: MAD TEMP[3].xyz, TEMP[4].zzzz, TEMP[1].xyzz, TEMP[5].xyzz 30: DP3 TEMP[1].x, TEMP[3].xyzz, TEMP[3].xyzz 31: RSQ TEMP[4].x, TEMP[1].xxxx 32: MUL TEMP[1].xyz, TEMP[3].xyzz, TEMP[4].xxxx 33: MOV TEMP[3].w, IMM[0].zzzz 34: MOV TEMP[3].xyz, TEMP[0].xyzx 35: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[1].xyzz 36: TEX TEMP[5], TEMP[4].xxxx, SAMP[3], 1D 37: MOV TEMP[4].w, IMM[0].zzzz 38: MOV TEMP[4].xyz, TEMP[0].xyzx 39: MOV_SAT TEMP[6].x, TEMP[5].wwww 40: ADD TEMP[7], TEMP[4], TEMP[5] 41: ADD TEMP[5].x, IMM[0].zzzz, -TEMP[6].xxxx 42: MUL TEMP[8], TEMP[4], TEMP[5].xxxx 43: MAD TEMP[5], TEMP[7], TEMP[6].xxxx, TEMP[8] 44: MOV TEMP[5].w, IMM[0].zzzz 45: ADD TEMP[4].xyz, CONST[24].xyzz, TEMP[2].xyzz 46: MOV TEMP[6].w, IMM[0].zzzz 47: DP3 TEMP[7].x, TEMP[4].xyzz, TEMP[4].xyzz 48: RSQ TEMP[8].x, TEMP[7].xxxx 49: MUL TEMP[7].xyz, TEMP[4].xyzz, TEMP[8].xxxx 50: DP3 TEMP[4].x, TEMP[1].xyzz, TEMP[7].xyzz 51: MAD TEMP[7].x, IMM[2].yyyy, TEMP[4].xxxx, IMM[2].yyyy 52: POW TEMP[4].x, TEMP[7].xxxx, IMM[0].wwww 53: MUL TEMP[6].xyz, TEMP[4].xxxx, CONST[21].xyzx 54: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[1].xyzz 55: TEX TEMP[7], TEMP[4].xxxx, SAMP[2], 1D 56: MOV TEMP[4].w, IMM[0].zzzz 57: MOV TEMP[4].xyz, TEMP[0].xyzx 58: MOV_SAT TEMP[8].x, TEMP[7].wwww 59: ADD TEMP[9], TEMP[4], TEMP[7] 60: ADD TEMP[7].x, IMM[0].zzzz, -TEMP[8].xxxx 61: MUL TEMP[10], TEMP[4], TEMP[7].xxxx 62: MAD TEMP[7], TEMP[9], TEMP[8].xxxx, TEMP[10] 63: MOV TEMP[7].w, IMM[0].zzzz 64: DP3 TEMP[4].x, TEMP[1].xyzz, CONST[20].xyzz 65: MUL TEMP[8].x, TEMP[4].xxxx, IMM[1].zzzz 66: MAX TEMP[4].x, TEMP[8].xxxx, IMM[0].xxxx 67: MUL TEMP[8], CONST[19], TEMP[4].xxxx 68: DP3 TEMP[4].x, TEMP[1].xyzz, CONST[24].xyzz 69: MAD TEMP[9].x, IMM[2].yyyy, TEMP[4].xxxx, IMM[2].yyyy 70: MUL TEMP[4].x, TEMP[9].xxxx, IMM[1].zzzz 71: MAX TEMP[9].x, TEMP[4].xxxx, IMM[0].xxxx 72: MUL TEMP[4], CONST[23], TEMP[9].xxxx 73: MUL TEMP[9], TEMP[3], IMM[2].zzzz 74: MAD TEMP[3], TEMP[4], TEMP[5], TEMP[9] 75: MAD TEMP[4], TEMP[8], TEMP[7], TEMP[3] 76: ADD TEMP[3].xyz, CONST[20].xyzz, TEMP[2].xyzz 77: MOV TEMP[2].w, IMM[0].zzzz 78: DP3 TEMP[5].x, TEMP[3].xyzz, TEMP[3].xyzz 79: RSQ TEMP[7].x, TEMP[5].xxxx 80: MUL TEMP[5].xyz, TEMP[3].xyzz, TEMP[7].xxxx 81: DP3 TEMP[3].x, TEMP[5].xyzz, TEMP[1].xyzz 82: MAX TEMP[5].x, TEMP[3].xxxx, IMM[0].xxxx 83: POW TEMP[3].x, TEMP[5].xxxx, IMM[0].wwww 84: MUL TEMP[2].xyz, TEMP[3].xxxx, CONST[17].xyzx 85: ADD TEMP[3], IMM[0].xxxz, TEMP[6] 86: ADD TEMP[5], TEMP[3], TEMP[2] 87: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[16].xyzz 88: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[2].xyzz 89: RSQ TEMP[6].x, TEMP[3].xxxx 90: MUL TEMP[3].xyz, TEMP[2].xyzz, TEMP[6].xxxx 91: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[2].xyzz 92: RSQ TEMP[2].x, TEMP[6].xxxx 93: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[6].xxxx 94: CMP TEMP[2].x, -TEMP[6].xxxx, TEMP[2].xxxx, IMM[0].xxxx 95: ADD TEMP[6].x, IMM[3].xxxx, TEMP[2].xxxx 96: RCP TEMP[2].x, TEMP[6].xxxx 97: MUL TEMP[6].x, IMM[3].xxxx, TEMP[2].xxxx 98: DP3 TEMP[2].x, TEMP[3].xyzz, CONST[15].xyzz 99: SLE TEMP[7].x, TEMP[2].xxxx, IMM[3].yyyy 100: IF TEMP[7].xxxx :102 101: MOV TEMP[7].x, IMM[0].xxxx 102: ELSE :113 103: ADD TEMP[8].x, TEMP[2].xxxx, IMM[3].zzzz 104: MUL TEMP[9].x, TEMP[8].xxxx, IMM[3].wwww 105: MOV_SAT TEMP[8].x, TEMP[9].xxxx 106: MUL TEMP[9].x, IMM[0].yyyy, TEMP[8].xxxx 107: ADD TEMP[10].x, IMM[4].xxxx, -TEMP[9].xxxx 108: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 109: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 110: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx 111: MUL TEMP[2].x, TEMP[6].xxxx, TEMP[8].xxxx 112: MOV TEMP[7].x, TEMP[2].xxxx 113: ENDIF 114: SLT TEMP[2].x, TEMP[7].xxxx, IMM[4].yyyy 115: IF TEMP[2].xxxx :117 116: MOV TEMP[2].x, IMM[0].xxxx 117: ELSE :119 118: MOV TEMP[2].x, TEMP[7].xxxx 119: ENDIF 120: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[3].xyzz 121: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[2].xxxx 122: MUL TEMP[2].x, TEMP[3].xxxx, IMM[1].zzzz 123: MAX TEMP[3].x, TEMP[2].xxxx, IMM[0].xxxx 124: SLE TEMP[2].x, TEMP[6].xxxx, IMM[0].xxxx 125: IF TEMP[2].xxxx :127 126: MOV TEMP[2].x, IMM[0].xxxx 127: ELSE :139 128: MUL TEMP[6], CONST[10], IN[1].xxxx 129: MAD TEMP[7], CONST[11], IN[1].yyyy, TEMP[6] 130: MAD TEMP[6], CONST[12], IN[1].zzzz, TEMP[7] 131: ADD TEMP[7], TEMP[6], CONST[13] 132: MUL TEMP[6].x, IMM[4].zzzz, TEMP[7].wwww 133: ADD TEMP[8].x, TEMP[7].zzzz, -TEMP[6].xxxx 134: MOV TEMP[6], TEMP[7].xyyy 135: MOV TEMP[6].w, TEMP[7].wwww 136: MOV TEMP[6].z, TEMP[8].xxxx 137: TXP TEMP[7].x, TEMP[6], SAMP[1], SHADOW2D 138: MOV TEMP[2].x, TEMP[7].xxxx 139: ENDIF 140: MOV TEMP[6].w, IMM[0].xxxx 141: MUL TEMP[7].x, TEMP[3].xxxx, CONST[9].xxxx 142: ADD TEMP[3].x, IMM[0].zzzz, -TEMP[2].xxxx 143: MUL TEMP[2].x, TEMP[7].xxxx, TEMP[3].xxxx 144: MUL TEMP[6].xyz, TEMP[0].xyzx, TEMP[2].xxxx 145: ADD TEMP[2], TEMP[4], -TEMP[6] 146: ADD TEMP[3].xyz, IN[1].xyzz, -CONST[8].xyzz 147: DP3 TEMP[4].x, TEMP[3].xyzz, TEMP[3].xyzz 148: RSQ TEMP[6].x, TEMP[4].xxxx 149: MUL TEMP[4].xyz, TEMP[3].xyzz, TEMP[6].xxxx 150: DP3 TEMP[6].x, TEMP[3].xyzz, TEMP[3].xyzz 151: RSQ TEMP[3].x, TEMP[6].xxxx 152: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[6].xxxx 153: CMP TEMP[3].x, -TEMP[6].xxxx, TEMP[3].xxxx, IMM[0].xxxx 154: ADD TEMP[6].x, IMM[3].xxxx, TEMP[3].xxxx 155: RCP TEMP[3].x, TEMP[6].xxxx 156: MUL TEMP[6].x, IMM[3].xxxx, TEMP[3].xxxx 157: DP3 TEMP[3].x, TEMP[4].xyzz, CONST[7].xyzz 158: SLE TEMP[7].x, TEMP[3].xxxx, IMM[3].yyyy 159: IF TEMP[7].xxxx :161 160: MOV TEMP[7].x, IMM[0].xxxx 161: ELSE :172 162: ADD TEMP[8].x, TEMP[3].xxxx, IMM[3].zzzz 163: MUL TEMP[9].x, TEMP[8].xxxx, IMM[3].wwww 164: MOV_SAT TEMP[8].x, TEMP[9].xxxx 165: MUL TEMP[9].x, IMM[0].yyyy, TEMP[8].xxxx 166: ADD TEMP[10].x, IMM[4].xxxx, -TEMP[9].xxxx 167: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 168: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 169: MUL TEMP[8].x, TEMP[3].xxxx, TEMP[10].xxxx 170: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[8].xxxx 171: MOV TEMP[7].x, TEMP[3].xxxx 172: ENDIF 173: SLT TEMP[3].x, TEMP[7].xxxx, IMM[4].yyyy 174: IF TEMP[3].xxxx :176 175: MOV TEMP[3].x, IMM[0].xxxx 176: ELSE :178 177: MOV TEMP[3].x, TEMP[7].xxxx 178: ENDIF 179: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[4].xyzz 180: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[3].xxxx 181: MUL TEMP[3].x, TEMP[1].xxxx, IMM[1].zzzz 182: MAX TEMP[1].x, TEMP[3].xxxx, IMM[0].xxxx 183: SLE TEMP[3].x, TEMP[6].xxxx, IMM[0].xxxx 184: IF TEMP[3].xxxx :186 185: MOV TEMP[3].x, IMM[0].xxxx 186: ELSE :198 187: MUL TEMP[4], CONST[2], IN[1].xxxx 188: MAD TEMP[6], CONST[3], IN[1].yyyy, TEMP[4] 189: MAD TEMP[4], CONST[4], IN[1].zzzz, TEMP[6] 190: ADD TEMP[6], TEMP[4], CONST[5] 191: MUL TEMP[4].x, IMM[4].zzzz, TEMP[6].wwww 192: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[4].xxxx 193: MOV TEMP[4], TEMP[6].xyyy 194: MOV TEMP[4].w, TEMP[6].wwww 195: MOV TEMP[4].z, TEMP[7].xxxx 196: TXP TEMP[6].x, TEMP[4], SAMP[0], SHADOW2D 197: MOV TEMP[3].x, TEMP[6].xxxx 198: ENDIF 199: MOV TEMP[4].w, IMM[0].xxxx 200: MUL TEMP[6].x, TEMP[1].xxxx, CONST[1].xxxx 201: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[3].xxxx 202: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[1].xxxx 203: MUL TEMP[4].xyz, TEMP[0].xyzx, TEMP[3].xxxx 204: ADD TEMP[0], TEMP[2], -TEMP[4] 205: ADD TEMP[1], TEMP[0], TEMP[5] 206: MUL TEMP[0].xyz, TEMP[1].xyzz, CONST[0].xyzz 207: MOV TEMP[1].xyz, TEMP[0].xyzx 208: MOV TEMP[1].w, IMM[0].zzzz 209: SEQ TEMP[0].x, CONST[30].wwww, IMM[0].xxxx 210: IF TEMP[0].xxxx :216 211: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 212: RSQ TEMP[2].x, TEMP[0].xxxx 213: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx 214: CMP TEMP[2].x, -TEMP[0].xxxx, TEMP[2].xxxx, IMM[0].xxxx 215: MOV TEMP[0].x, TEMP[2].xxxx 216: ELSE :218 217: MOV TEMP[0].x, -IN[1].zzzz 218: ENDIF 219: ADD TEMP[2].x, TEMP[0].xxxx, IMM[4].wwww 220: MUL TEMP[0].x, TEMP[2].xxxx, IMM[1].wwww 221: MOV_SAT TEMP[2].x, TEMP[0].xxxx 222: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx 223: ADD TEMP[2].x, IMM[0].zzzz, -TEMP[0].xxxx 224: ADD TEMP[0].x, IMM[0].zzzz, -TEMP[2].xxxx 225: MOV_SAT TEMP[2].x, TEMP[0].xxxx 226: ADD TEMP[0].x, IMM[0].zzzz, -TEMP[2].xxxx 227: MUL TEMP[3], TEMP[1], TEMP[0].xxxx 228: MAD TEMP[0].xyz, IMM[5].xyzx, TEMP[2].xxxx, TEMP[3].xyzx 229: MOV TEMP[0].w, CONST[0].wwww 230: MOV OUT[0], TEMP[0] 231: END # Vertex Program/Shader 78 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[19].xy, INPUT[18].xyxx; 13: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[17].xxxx; 14: MAD TEMP[1].xyz, STATE[9].xyzz, INPUT[17].yyyy, TEMP[0].xyzz; 15: MAD OUTPUT[18].xyz, STATE[10].xyzx, INPUT[17].zzzx, TEMP[1].xyzx; 16: END InputsRead: 0x60005 (0b110,00000000,00000101) OutputsWritten: 0xf0001 (0b1111,00000000,00000001) NumInstructions=17 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {-0.0188, -7.55e-08, 1, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {1, -1.42e-09, 0.0188, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-2.22e-16, 1, 7.55e-08, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {0.489, -0.873, 0.00932, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {-0.0188, -7.55e-08, 1, -0.000141} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {1, -1.42e-09, 0.0188, -0.49} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-2.22e-16, 1, 7.55e-08, 0.873} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL OUT[4], GENERIC[13] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[4].xy, IN[3].xyxx 13: MUL TEMP[0].xyz, CONST[8].xyzz, IN[2].xxxx 14: MAD TEMP[1].xyz, CONST[9].xyzz, IN[2].yyyy, TEMP[0].xyzz 15: MAD OUT[3].xyz, CONST[10].xyzx, IN[2].zzzx, TEMP[1].xyzx 16: END # Fragment Program/Shader 99 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[10].wwww, CONST[11].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[12].xyzx; 12: ENDIF; 13: TEX TEMP[0], INPUT[16].xyyy, texture[2], 2D; 14: SLT TEMP[3].x, TEMP[0].xxxx, CONST[11].yyyy; 15: IF TEMP[3].xxxx; # (if false, goto 17); 16: MOV TEMP[3].x, TEMP[0].xxxx; 17: ELSE; # (goto 19) 18: MOV TEMP[3].x, CONST[11].yyyy; 19: ENDIF; 20: SLT TEMP[4].x, TEMP[0].yyyy, CONST[11].yyyy; 21: IF TEMP[4].xxxx; # (if false, goto 23); 22: MOV TEMP[3].y, TEMP[0].yyyy; 23: ELSE; # (goto 25) 24: MOV TEMP[3].y, CONST[11].yyyy; 25: ENDIF; 26: SLT TEMP[4].x, TEMP[0].zzzz, CONST[11].yyyy; 27: IF TEMP[4].xxxx; # (if false, goto 29); 28: MOV TEMP[3].z, TEMP[0].zzzz; 29: ELSE; # (goto 31) 30: MOV TEMP[3].z, CONST[11].yyyy; 31: ENDIF; 32: SLT TEMP[4].x, TEMP[0].wwww, CONST[11].yyyy; 33: IF TEMP[4].xxxx; # (if false, goto 35); 34: MOV TEMP[4].x, TEMP[0].wwww; 35: ELSE; # (goto 37) 36: MOV TEMP[4].x, CONST[11].yyyy; 37: ENDIF; 38: MOV_SAT TEMP[0].x, TEMP[4].xxxx; 39: DP3 TEMP[4].x, TEMP[1].xyzz, UNIFORM[5].xyzz; 40: MAD TEMP[5].x, CONST[11].zzzz, TEMP[4].xxxx, CONST[11].zzzz; 41: MUL TEMP[4].x, TEMP[5].xxxx, CONST[11].wwww; 42: MAX TEMP[5].x, TEMP[4].xxxx, CONST[11].xxxx; 43: MUL TEMP[4], UNIFORM[4], TEMP[5].xxxx; 44: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[1].xyzz; 45: TEX TEMP[6], TEMP[5].xxxx, texture[1], 1D; 46: MOV TEMP[5].w, CONST[11].yyyy; 47: MOV TEMP[5].xyz, TEMP[3].xyzx; 48: MUL TEMP[7].x, TEMP[6].wwww, CONST[11].wwww; 49: MOV_SAT TEMP[8].x, TEMP[7].xxxx; 50: ADD TEMP[7].x, CONST[11].yyyy, TEMP[8].-x-x-x-x; 51: MOV TEMP[9], TEMP[5]; 52: SLT TEMP[5].x, TEMP[3].xxxx, CONST[11].zzzz; 53: IF TEMP[5].xxxx; # (if false, goto 58); 54: MUL TEMP[5].x, CONST[12].wwww, TEMP[8].xxxx; 55: MAD TEMP[10].x, TEMP[5].xxxx, TEMP[6].xxxx, TEMP[7].xxxx; 56: MUL TEMP[5].x, TEMP[3].xxxx, TEMP[10].xxxx; 57: MOV TEMP[9].x, TEMP[5].xxxx; 58: ELSE; # (goto 66) 59: MUL TEMP[5].x, CONST[12].wwww, TEMP[8].xxxx; 60: ADD TEMP[10].x, CONST[11].yyyy, TEMP[6].-x-x-x-x; 61: MAD TEMP[11].x, TEMP[5].xxxx, TEMP[10].xxxx, TEMP[7].xxxx; 62: ADD TEMP[5].x, CONST[11].yyyy, TEMP[9].-x-x-x-x; 63: MUL TEMP[10].x, TEMP[11].xxxx, TEMP[5].xxxx; 64: ADD TEMP[5].x, CONST[11].yyyy, TEMP[10].-x-x-x-x; 65: MOV TEMP[9].x, TEMP[5].xxxx; 66: ENDIF; 67: SLT TEMP[5].x, TEMP[3].yyyy, CONST[11].zzzz; 68: IF TEMP[5].xxxx; # (if false, goto 73); 69: MUL TEMP[5].x, CONST[12].wwww, TEMP[8].xxxx; 70: MAD TEMP[10].x, TEMP[5].xxxx, TEMP[6].yyyy, TEMP[7].xxxx; 71: MUL TEMP[5].x, TEMP[3].yyyy, TEMP[10].xxxx; 72: MOV TEMP[9].y, TEMP[5].xxxx; 73: ELSE; # (goto 81) 74: MUL TEMP[5].x, CONST[12].wwww, TEMP[8].xxxx; 75: ADD TEMP[10].x, CONST[11].yyyy, TEMP[6].-y-y-y-y; 76: MAD TEMP[11].x, TEMP[5].xxxx, TEMP[10].xxxx, TEMP[7].xxxx; 77: ADD TEMP[5].x, CONST[11].yyyy, TEMP[9].-y-y-y-y; 78: MUL TEMP[10].x, TEMP[11].xxxx, TEMP[5].xxxx; 79: ADD TEMP[5].x, CONST[11].yyyy, TEMP[10].-x-x-x-x; 80: MOV TEMP[9].y, TEMP[5].xxxx; 81: ENDIF; 82: SLT TEMP[5].x, TEMP[3].zzzz, CONST[11].zzzz; 83: IF TEMP[5].xxxx; # (if false, goto 88); 84: MUL TEMP[5].x, CONST[12].wwww, TEMP[8].xxxx; 85: MAD TEMP[10].x, TEMP[5].xxxx, TEMP[6].zzzz, TEMP[7].xxxx; 86: MUL TEMP[5].x, TEMP[3].zzzz, TEMP[10].xxxx; 87: MOV TEMP[9].z, TEMP[5].xxxx; 88: ELSE; # (goto 96) 89: MUL TEMP[5].x, CONST[12].wwww, TEMP[8].xxxx; 90: ADD TEMP[8].x, CONST[11].yyyy, TEMP[6].-z-z-z-z; 91: MAD TEMP[6].x, TEMP[5].xxxx, TEMP[8].xxxx, TEMP[7].xxxx; 92: ADD TEMP[5].x, CONST[11].yyyy, TEMP[9].-z-z-z-z; 93: MUL TEMP[7].x, TEMP[6].xxxx, TEMP[5].xxxx; 94: ADD TEMP[5].x, CONST[11].yyyy, TEMP[7].-x-x-x-x; 95: MOV TEMP[9].z, TEMP[5].xxxx; 96: ENDIF; 97: MAD TEMP[5], TEMP[4], TEMP[9], CONST[11].xxxy; 98: DP3 TEMP[4].x, TEMP[1].xyzz, UNIFORM[2].xyzz; 99: MUL TEMP[6].x, TEMP[4].xxxx, CONST[11].wwww; 100: MAX TEMP[4].x, TEMP[6].xxxx, CONST[11].xxxx; 101: MUL TEMP[6], UNIFORM[1], TEMP[4].xxxx; 102: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[1].xyzz; 103: TEX TEMP[1], TEMP[4].xxxx, texture[0], 1D; 104: MOV TEMP[2].w, CONST[11].yyyy; 105: MOV TEMP[2].xyz, TEMP[3].xyzx; 106: MUL TEMP[4].x, TEMP[1].wwww, CONST[11].wwww; 107: MOV_SAT TEMP[7].x, TEMP[4].xxxx; 108: ADD TEMP[4].x, CONST[11].yyyy, TEMP[7].-x-x-x-x; 109: MOV TEMP[8].xyz, TEMP[2]; 110: SLT TEMP[2].x, TEMP[3].xxxx, CONST[11].zzzz; 111: IF TEMP[2].xxxx; # (if false, goto 116); 112: MUL TEMP[2].x, CONST[12].wwww, TEMP[7].xxxx; 113: MAD TEMP[9].x, TEMP[2].xxxx, TEMP[1].xxxx, TEMP[4].xxxx; 114: MUL TEMP[2].x, TEMP[3].xxxx, TEMP[9].xxxx; 115: MOV TEMP[8].x, TEMP[2].xxxx; 116: ELSE; # (goto 124) 117: MUL TEMP[2].x, CONST[12].wwww, TEMP[7].xxxx; 118: ADD TEMP[9].x, CONST[11].yyyy, TEMP[1].-x-x-x-x; 119: MAD TEMP[10].x, TEMP[2].xxxx, TEMP[9].xxxx, TEMP[4].xxxx; 120: ADD TEMP[2].x, CONST[11].yyyy, TEMP[8].-x-x-x-x; 121: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[2].xxxx; 122: ADD TEMP[2].x, CONST[11].yyyy, TEMP[9].-x-x-x-x; 123: MOV TEMP[8].x, TEMP[2].xxxx; 124: ENDIF; 125: SLT TEMP[2].x, TEMP[3].yyyy, CONST[11].zzzz; 126: IF TEMP[2].xxxx; # (if false, goto 131); 127: MUL TEMP[2].x, CONST[12].wwww, TEMP[7].xxxx; 128: MAD TEMP[9].x, TEMP[2].xxxx, TEMP[1].yyyy, TEMP[4].xxxx; 129: MUL TEMP[2].x, TEMP[3].yyyy, TEMP[9].xxxx; 130: MOV TEMP[8].y, TEMP[2].xxxx; 131: ELSE; # (goto 139) 132: MUL TEMP[2].x, CONST[12].wwww, TEMP[7].xxxx; 133: ADD TEMP[9].x, CONST[11].yyyy, TEMP[1].-y-y-y-y; 134: MAD TEMP[10].x, TEMP[2].xxxx, TEMP[9].xxxx, TEMP[4].xxxx; 135: ADD TEMP[2].x, CONST[11].yyyy, TEMP[8].-y-y-y-y; 136: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[2].xxxx; 137: ADD TEMP[2].x, CONST[11].yyyy, TEMP[9].-x-x-x-x; 138: MOV TEMP[8].y, TEMP[2].xxxx; 139: ENDIF; 140: SLT TEMP[2].x, TEMP[3].zzzz, CONST[11].zzzz; 141: IF TEMP[2].xxxx; # (if false, goto 146); 142: MUL TEMP[2].x, CONST[12].wwww, TEMP[7].xxxx; 143: MAD TEMP[9].x, TEMP[2].xxxx, TEMP[1].zzzz, TEMP[4].xxxx; 144: MUL TEMP[2].x, TEMP[3].zzzz, TEMP[9].xxxx; 145: MOV TEMP[8].z, TEMP[2].xxxx; 146: ELSE; # (goto 154) 147: MUL TEMP[2].x, CONST[12].wwww, TEMP[7].xxxx; 148: ADD TEMP[3].x, CONST[11].yyyy, TEMP[1].-z-z-z-z; 149: MAD TEMP[1].x, TEMP[2].xxxx, TEMP[3].xxxx, TEMP[4].xxxx; 150: ADD TEMP[2].x, CONST[11].yyyy, TEMP[8].-z-z-z-z; 151: MUL TEMP[3].x, TEMP[1].xxxx, TEMP[2].xxxx; 152: ADD TEMP[1].x, CONST[11].yyyy, TEMP[3].-x-x-x-x; 153: MOV TEMP[8].z, TEMP[1].xxxx; 154: ENDIF; 155: MAD TEMP[1].xyz, TEMP[6], TEMP[8], TEMP[5]; 156: MOV TEMP[2].xyz, TEMP[1].xyzx; 157: MOV TEMP[2].w, TEMP[0].xxxx; 158: SEQ TEMP[1].x, STATE[10].wwww, CONST[11].xxxx; 159: IF TEMP[1].xxxx; # (if false, goto 165); 160: DP3 TEMP[1].x, INPUT[15].xyzz, INPUT[15].xyzz; 161: RSQ TEMP[3].x, TEMP[1].xxxx; 162: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[1].xxxx; 163: CMP TEMP[3].x, TEMP[1].-x-x-x-x, TEMP[3].xxxx, CONST[11].xxxx; 164: MOV TEMP[1].x, TEMP[3].xxxx; 165: ELSE; # (goto 167) 166: MOV TEMP[1].x, INPUT[15].-z-z-z-z; 167: ENDIF; 168: ADD TEMP[3].x, TEMP[1].xxxx, CONST[13].xxxx; 169: MUL TEMP[1].x, TEMP[3].xxxx, CONST[13].yyyy; 170: MOV_SAT TEMP[3].x, TEMP[1].xxxx; 171: MUL TEMP[1].x, TEMP[3].xxxx, TEMP[3].xxxx; 172: ADD TEMP[3].x, CONST[11].yyyy, TEMP[1].-x-x-x-x; 173: ADD TEMP[1].x, CONST[11].yyyy, TEMP[3].-x-x-x-x; 174: MOV_SAT TEMP[3].x, TEMP[1].xxxx; 175: ADD TEMP[1].x, CONST[11].yyyy, TEMP[3].-x-x-x-x; 176: MUL TEMP[4], TEMP[2], TEMP[1].xxxx; 177: MAD TEMP[1], CONST[14], TEMP[3].xxxx, TEMP[4]; 178: MOV TEMP[1].w, TEMP[0].xxxx; 179: MOV OUTPUT[2], TEMP[1]; 180: END InputsRead: 0x1c000 (0b1,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=181 NumTemporaries=12 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x7 (0b111) Samplers=[ 2 1 0 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=4 SAMPLER samp2 = {0, 0, 0, 0} param[1] sz=4 UNIFORM unf79 = {2.2, 1.97, 1.79, 2.2} param[2] sz=3 UNIFORM unf67 = {0.233, -0.601, -0.764, 0} param[3] sz=4 SAMPLER samp1 = {1, 0, 0, 0} param[4] sz=4 UNIFORM unf44 = {0.551, 0.557, 0.68, 0.68} param[5] sz=3 UNIFORM unf30 = {-0.243, -0.303, 0.922, 0} param[6] sz=4 SAMPLER samp0 = {2, 0, 0, 0} param[7] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[8] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[9] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[10] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[11] sz=4 CONST (null) = {0, 1, 0.5, 0.8} param[12] sz=4 CONST (null) = {0, 0, -1, 2} param[13] sz=2 CONST (null) = {-6, 0.0385, 0, 0} param[14] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL CONST[1..2] DCL CONST[4..5] DCL CONST[7..10] DCL TEMP[0..11] IMM FLT32 { 0.0000, 1.0000, 0.5000, 0.8000} IMM FLT32 { 0.0000, -1.0000, 2.0000, 0.9063} IMM FLT32 { -6.0000, 0.0385, 0.0000, 0.9063} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[10].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: TEX TEMP[0], IN[2].xyyy, SAMP[2], 2D 14: SLT TEMP[3].x, TEMP[0].xxxx, IMM[0].yyyy 15: IF TEMP[3].xxxx :17 16: MOV TEMP[3].x, TEMP[0].xxxx 17: ELSE :19 18: MOV TEMP[3].x, IMM[0].yyyy 19: ENDIF 20: SLT TEMP[4].x, TEMP[0].yyyy, IMM[0].yyyy 21: IF TEMP[4].xxxx :23 22: MOV TEMP[3].y, TEMP[0].yyyy 23: ELSE :25 24: MOV TEMP[3].y, IMM[0].yyyy 25: ENDIF 26: SLT TEMP[4].x, TEMP[0].zzzz, IMM[0].yyyy 27: IF TEMP[4].xxxx :29 28: MOV TEMP[3].z, TEMP[0].zzzz 29: ELSE :31 30: MOV TEMP[3].z, IMM[0].yyyy 31: ENDIF 32: SLT TEMP[4].x, TEMP[0].wwww, IMM[0].yyyy 33: IF TEMP[4].xxxx :35 34: MOV TEMP[4].x, TEMP[0].wwww 35: ELSE :37 36: MOV TEMP[4].x, IMM[0].yyyy 37: ENDIF 38: MOV_SAT TEMP[0].x, TEMP[4].xxxx 39: DP3 TEMP[4].x, TEMP[1].xyzz, CONST[5].xyzz 40: MAD TEMP[5].x, IMM[0].zzzz, TEMP[4].xxxx, IMM[0].zzzz 41: MUL TEMP[4].x, TEMP[5].xxxx, IMM[0].wwww 42: MAX TEMP[5].x, TEMP[4].xxxx, IMM[0].xxxx 43: MUL TEMP[4], CONST[4], TEMP[5].xxxx 44: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[1].xyzz 45: TEX TEMP[6], TEMP[5].xxxx, SAMP[1], 1D 46: MOV TEMP[5].w, IMM[0].yyyy 47: MOV TEMP[5].xyz, TEMP[3].xyzx 48: MUL TEMP[7].x, TEMP[6].wwww, IMM[0].wwww 49: MOV_SAT TEMP[8].x, TEMP[7].xxxx 50: ADD TEMP[7].x, IMM[0].yyyy, -TEMP[8].xxxx 51: MOV TEMP[9], TEMP[5] 52: SLT TEMP[5].x, TEMP[3].xxxx, IMM[0].zzzz 53: IF TEMP[5].xxxx :58 54: MUL TEMP[5].x, IMM[1].zzzz, TEMP[8].xxxx 55: MAD TEMP[10].x, TEMP[5].xxxx, TEMP[6].xxxx, TEMP[7].xxxx 56: MUL TEMP[5].x, TEMP[3].xxxx, TEMP[10].xxxx 57: MOV TEMP[9].x, TEMP[5].xxxx 58: ELSE :66 59: MUL TEMP[5].x, IMM[1].zzzz, TEMP[8].xxxx 60: ADD TEMP[10].x, IMM[0].yyyy, -TEMP[6].xxxx 61: MAD TEMP[11].x, TEMP[5].xxxx, TEMP[10].xxxx, TEMP[7].xxxx 62: ADD TEMP[5].x, IMM[0].yyyy, -TEMP[9].xxxx 63: MUL TEMP[10].x, TEMP[11].xxxx, TEMP[5].xxxx 64: ADD TEMP[5].x, IMM[0].yyyy, -TEMP[10].xxxx 65: MOV TEMP[9].x, TEMP[5].xxxx 66: ENDIF 67: SLT TEMP[5].x, TEMP[3].yyyy, IMM[0].zzzz 68: IF TEMP[5].xxxx :73 69: MUL TEMP[5].x, IMM[1].zzzz, TEMP[8].xxxx 70: MAD TEMP[10].x, TEMP[5].xxxx, TEMP[6].yyyy, TEMP[7].xxxx 71: MUL TEMP[5].x, TEMP[3].yyyy, TEMP[10].xxxx 72: MOV TEMP[9].y, TEMP[5].xxxx 73: ELSE :81 74: MUL TEMP[5].x, IMM[1].zzzz, TEMP[8].xxxx 75: ADD TEMP[10].x, IMM[0].yyyy, -TEMP[6].yyyy 76: MAD TEMP[11].x, TEMP[5].xxxx, TEMP[10].xxxx, TEMP[7].xxxx 77: ADD TEMP[5].x, IMM[0].yyyy, -TEMP[9].yyyy 78: MUL TEMP[10].x, TEMP[11].xxxx, TEMP[5].xxxx 79: ADD TEMP[5].x, IMM[0].yyyy, -TEMP[10].xxxx 80: MOV TEMP[9].y, TEMP[5].xxxx 81: ENDIF 82: SLT TEMP[5].x, TEMP[3].zzzz, IMM[0].zzzz 83: IF TEMP[5].xxxx :88 84: MUL TEMP[5].x, IMM[1].zzzz, TEMP[8].xxxx 85: MAD TEMP[10].x, TEMP[5].xxxx, TEMP[6].zzzz, TEMP[7].xxxx 86: MUL TEMP[5].x, TEMP[3].zzzz, TEMP[10].xxxx 87: MOV TEMP[9].z, TEMP[5].xxxx 88: ELSE :96 89: MUL TEMP[5].x, IMM[1].zzzz, TEMP[8].xxxx 90: ADD TEMP[8].x, IMM[0].yyyy, -TEMP[6].zzzz 91: MAD TEMP[6].x, TEMP[5].xxxx, TEMP[8].xxxx, TEMP[7].xxxx 92: ADD TEMP[5].x, IMM[0].yyyy, -TEMP[9].zzzz 93: MUL TEMP[7].x, TEMP[6].xxxx, TEMP[5].xxxx 94: ADD TEMP[5].x, IMM[0].yyyy, -TEMP[7].xxxx 95: MOV TEMP[9].z, TEMP[5].xxxx 96: ENDIF 97: MAD TEMP[5], TEMP[4], TEMP[9], IMM[0].xxxy 98: DP3 TEMP[4].x, TEMP[1].xyzz, CONST[2].xyzz 99: MUL TEMP[6].x, TEMP[4].xxxx, IMM[0].wwww 100: MAX TEMP[4].x, TEMP[6].xxxx, IMM[0].xxxx 101: MUL TEMP[6], CONST[1], TEMP[4].xxxx 102: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[1].xyzz 103: TEX TEMP[1], TEMP[4].xxxx, SAMP[0], 1D 104: MOV TEMP[2].w, IMM[0].yyyy 105: MOV TEMP[2].xyz, TEMP[3].xyzx 106: MUL TEMP[4].x, TEMP[1].wwww, IMM[0].wwww 107: MOV_SAT TEMP[7].x, TEMP[4].xxxx 108: ADD TEMP[4].x, IMM[0].yyyy, -TEMP[7].xxxx 109: MOV TEMP[8].xyz, TEMP[2] 110: SLT TEMP[2].x, TEMP[3].xxxx, IMM[0].zzzz 111: IF TEMP[2].xxxx :116 112: MUL TEMP[2].x, IMM[1].zzzz, TEMP[7].xxxx 113: MAD TEMP[9].x, TEMP[2].xxxx, TEMP[1].xxxx, TEMP[4].xxxx 114: MUL TEMP[2].x, TEMP[3].xxxx, TEMP[9].xxxx 115: MOV TEMP[8].x, TEMP[2].xxxx 116: ELSE :124 117: MUL TEMP[2].x, IMM[1].zzzz, TEMP[7].xxxx 118: ADD TEMP[9].x, IMM[0].yyyy, -TEMP[1].xxxx 119: MAD TEMP[10].x, TEMP[2].xxxx, TEMP[9].xxxx, TEMP[4].xxxx 120: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[8].xxxx 121: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[2].xxxx 122: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[9].xxxx 123: MOV TEMP[8].x, TEMP[2].xxxx 124: ENDIF 125: SLT TEMP[2].x, TEMP[3].yyyy, IMM[0].zzzz 126: IF TEMP[2].xxxx :131 127: MUL TEMP[2].x, IMM[1].zzzz, TEMP[7].xxxx 128: MAD TEMP[9].x, TEMP[2].xxxx, TEMP[1].yyyy, TEMP[4].xxxx 129: MUL TEMP[2].x, TEMP[3].yyyy, TEMP[9].xxxx 130: MOV TEMP[8].y, TEMP[2].xxxx 131: ELSE :139 132: MUL TEMP[2].x, IMM[1].zzzz, TEMP[7].xxxx 133: ADD TEMP[9].x, IMM[0].yyyy, -TEMP[1].yyyy 134: MAD TEMP[10].x, TEMP[2].xxxx, TEMP[9].xxxx, TEMP[4].xxxx 135: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[8].yyyy 136: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[2].xxxx 137: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[9].xxxx 138: MOV TEMP[8].y, TEMP[2].xxxx 139: ENDIF 140: SLT TEMP[2].x, TEMP[3].zzzz, IMM[0].zzzz 141: IF TEMP[2].xxxx :146 142: MUL TEMP[2].x, IMM[1].zzzz, TEMP[7].xxxx 143: MAD TEMP[9].x, TEMP[2].xxxx, TEMP[1].zzzz, TEMP[4].xxxx 144: MUL TEMP[2].x, TEMP[3].zzzz, TEMP[9].xxxx 145: MOV TEMP[8].z, TEMP[2].xxxx 146: ELSE :154 147: MUL TEMP[2].x, IMM[1].zzzz, TEMP[7].xxxx 148: ADD TEMP[3].x, IMM[0].yyyy, -TEMP[1].zzzz 149: MAD TEMP[1].x, TEMP[2].xxxx, TEMP[3].xxxx, TEMP[4].xxxx 150: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[8].zzzz 151: MUL TEMP[3].x, TEMP[1].xxxx, TEMP[2].xxxx 152: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[3].xxxx 153: MOV TEMP[8].z, TEMP[1].xxxx 154: ENDIF 155: MAD TEMP[1].xyz, TEMP[6], TEMP[8], TEMP[5] 156: MOV TEMP[2].xyz, TEMP[1].xyzx 157: MOV TEMP[2].w, TEMP[0].xxxx 158: SEQ TEMP[1].x, CONST[10].wwww, IMM[0].xxxx 159: IF TEMP[1].xxxx :165 160: DP3 TEMP[1].x, IN[1].xyzz, IN[1].xyzz 161: RSQ TEMP[3].x, TEMP[1].xxxx 162: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[1].xxxx 163: CMP TEMP[3].x, -TEMP[1].xxxx, TEMP[3].xxxx, IMM[0].xxxx 164: MOV TEMP[1].x, TEMP[3].xxxx 165: ELSE :167 166: MOV TEMP[1].x, -IN[1].zzzz 167: ENDIF 168: ADD TEMP[3].x, TEMP[1].xxxx, IMM[2].xxxx 169: MUL TEMP[1].x, TEMP[3].xxxx, IMM[2].yyyy 170: MOV_SAT TEMP[3].x, TEMP[1].xxxx 171: MUL TEMP[1].x, TEMP[3].xxxx, TEMP[3].xxxx 172: ADD TEMP[3].x, IMM[0].yyyy, -TEMP[1].xxxx 173: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[3].xxxx 174: MOV_SAT TEMP[3].x, TEMP[1].xxxx 175: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[3].xxxx 176: MUL TEMP[4], TEMP[2], TEMP[1].xxxx 177: MAD TEMP[1], IMM[3], TEMP[3].xxxx, TEMP[4] 178: MOV TEMP[1].w, TEMP[0].xxxx 179: MOV OUT[0], TEMP[1] 180: END # Vertex Program/Shader 99 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[18].xy, INPUT[17].xyxx; 13: END InputsRead: 0x20005 (0b10,00000000,00000101) OutputsWritten: 0x70001 (0b111,00000000,00000001) NumInstructions=14 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {-0.0291, 0.22, 0.975, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {0.871, 0.484, -0.083, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-0.49, 0.847, -0.205, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {2.33, 0.585, -9.48, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {-0.0291, 0.22, 0.975, 9.18} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {0.871, 0.484, -0.083, -3.1} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-0.49, 0.847, -0.205, -1.3} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[3].xy, IN[2].xyxx 13: END # Fragment Program/Shader 102 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[26].wwww, CONST[27].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[28].xyzx; 12: ENDIF; 13: TEX TEMP[0].xyz, INPUT[16].xyyy, texture[4], 2D; 14: DP3 TEMP[3].x, TEMP[1].xyzz, UNIFORM[21].xyzz; 15: MAD TEMP[4].x, CONST[27].yyyy, TEMP[3].xxxx, CONST[27].yyyy; 16: MUL TEMP[3].x, TEMP[4].xxxx, CONST[27].zzzz; 17: MAX TEMP[4].x, TEMP[3].xxxx, CONST[27].xxxx; 18: MUL TEMP[3], UNIFORM[20], TEMP[4].xxxx; 19: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[1].xyzz; 20: TEX TEMP[5], TEMP[4].xxxx, texture[3], 1D; 21: MOV TEMP[4].w, CONST[27].wwww; 22: MOV TEMP[4].xyz, TEMP[0].xyzx; 23: MUL TEMP[6].x, TEMP[5].wwww, CONST[28].wwww; 24: MOV_SAT TEMP[7].x, TEMP[6].xxxx; 25: ADD TEMP[6].x, CONST[27].wwww, TEMP[7].-x-x-x-x; 26: MOV TEMP[8], TEMP[4]; 27: SLT TEMP[4].x, TEMP[0].xxxx, CONST[27].yyyy; 28: IF TEMP[4].xxxx; # (if false, goto 33); 29: MUL TEMP[4].x, CONST[29].xxxx, TEMP[7].xxxx; 30: MAD TEMP[9].x, TEMP[4].xxxx, TEMP[5].xxxx, TEMP[6].xxxx; 31: MUL TEMP[4].x, TEMP[0].xxxx, TEMP[9].xxxx; 32: MOV TEMP[8].x, TEMP[4].xxxx; 33: ELSE; # (goto 41) 34: MUL TEMP[4].x, CONST[29].xxxx, TEMP[7].xxxx; 35: ADD TEMP[9].x, CONST[27].wwww, TEMP[5].-x-x-x-x; 36: MAD TEMP[10].x, TEMP[4].xxxx, TEMP[9].xxxx, TEMP[6].xxxx; 37: ADD TEMP[4].x, CONST[27].wwww, TEMP[8].-x-x-x-x; 38: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[4].xxxx; 39: ADD TEMP[4].x, CONST[27].wwww, TEMP[9].-x-x-x-x; 40: MOV TEMP[8].x, TEMP[4].xxxx; 41: ENDIF; 42: SLT TEMP[4].x, TEMP[0].yyyy, CONST[27].yyyy; 43: IF TEMP[4].xxxx; # (if false, goto 48); 44: MUL TEMP[4].x, CONST[29].xxxx, TEMP[7].xxxx; 45: MAD TEMP[9].x, TEMP[4].xxxx, TEMP[5].yyyy, TEMP[6].xxxx; 46: MUL TEMP[4].x, TEMP[0].yyyy, TEMP[9].xxxx; 47: MOV TEMP[8].y, TEMP[4].xxxx; 48: ELSE; # (goto 56) 49: MUL TEMP[4].x, CONST[29].xxxx, TEMP[7].xxxx; 50: ADD TEMP[9].x, CONST[27].wwww, TEMP[5].-y-y-y-y; 51: MAD TEMP[10].x, TEMP[4].xxxx, TEMP[9].xxxx, TEMP[6].xxxx; 52: ADD TEMP[4].x, CONST[27].wwww, TEMP[8].-y-y-y-y; 53: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[4].xxxx; 54: ADD TEMP[4].x, CONST[27].wwww, TEMP[9].-x-x-x-x; 55: MOV TEMP[8].y, TEMP[4].xxxx; 56: ENDIF; 57: SLT TEMP[4].x, TEMP[0].zzzz, CONST[27].yyyy; 58: IF TEMP[4].xxxx; # (if false, goto 63); 59: MUL TEMP[4].x, CONST[29].xxxx, TEMP[7].xxxx; 60: MAD TEMP[9].x, TEMP[4].xxxx, TEMP[5].zzzz, TEMP[6].xxxx; 61: MUL TEMP[4].x, TEMP[0].zzzz, TEMP[9].xxxx; 62: MOV TEMP[8].z, TEMP[4].xxxx; 63: ELSE; # (goto 71) 64: MUL TEMP[4].x, CONST[29].xxxx, TEMP[7].xxxx; 65: ADD TEMP[7].x, CONST[27].wwww, TEMP[5].-z-z-z-z; 66: MAD TEMP[5].x, TEMP[4].xxxx, TEMP[7].xxxx, TEMP[6].xxxx; 67: ADD TEMP[4].x, CONST[27].wwww, TEMP[8].-z-z-z-z; 68: MUL TEMP[6].x, TEMP[5].xxxx, TEMP[4].xxxx; 69: ADD TEMP[4].x, CONST[27].wwww, TEMP[6].-x-x-x-x; 70: MOV TEMP[8].z, TEMP[4].xxxx; 71: ENDIF; 72: MAD TEMP[4], TEMP[3], TEMP[8], CONST[27].xxxw; 73: DP3 TEMP[3].x, TEMP[1].xyzz, UNIFORM[18].xyzz; 74: MUL TEMP[5].x, TEMP[3].xxxx, CONST[27].zzzz; 75: MAX TEMP[3].x, TEMP[5].xxxx, CONST[27].xxxx; 76: MUL TEMP[5], UNIFORM[17], TEMP[3].xxxx; 77: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[1].xyzz; 78: TEX TEMP[2], TEMP[3].xxxx, texture[2], 1D; 79: MOV TEMP[3].w, CONST[27].wwww; 80: MOV TEMP[3].xyz, TEMP[0].xyzx; 81: MUL TEMP[6].x, TEMP[2].wwww, CONST[28].wwww; 82: MOV_SAT TEMP[7].x, TEMP[6].xxxx; 83: ADD TEMP[6].x, CONST[27].wwww, TEMP[7].-x-x-x-x; 84: MOV TEMP[8], TEMP[3]; 85: SLT TEMP[3].x, TEMP[0].xxxx, CONST[27].yyyy; 86: IF TEMP[3].xxxx; # (if false, goto 91); 87: MUL TEMP[3].x, CONST[29].xxxx, TEMP[7].xxxx; 88: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[2].xxxx, TEMP[6].xxxx; 89: MUL TEMP[3].x, TEMP[0].xxxx, TEMP[9].xxxx; 90: MOV TEMP[8].x, TEMP[3].xxxx; 91: ELSE; # (goto 99) 92: MUL TEMP[3].x, CONST[29].xxxx, TEMP[7].xxxx; 93: ADD TEMP[9].x, CONST[27].wwww, TEMP[2].-x-x-x-x; 94: MAD TEMP[10].x, TEMP[3].xxxx, TEMP[9].xxxx, TEMP[6].xxxx; 95: ADD TEMP[3].x, CONST[27].wwww, TEMP[8].-x-x-x-x; 96: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[3].xxxx; 97: ADD TEMP[3].x, CONST[27].wwww, TEMP[9].-x-x-x-x; 98: MOV TEMP[8].x, TEMP[3].xxxx; 99: ENDIF; 100: SLT TEMP[3].x, TEMP[0].yyyy, CONST[27].yyyy; 101: IF TEMP[3].xxxx; # (if false, goto 106); 102: MUL TEMP[3].x, CONST[29].xxxx, TEMP[7].xxxx; 103: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[2].yyyy, TEMP[6].xxxx; 104: MUL TEMP[3].x, TEMP[0].yyyy, TEMP[9].xxxx; 105: MOV TEMP[8].y, TEMP[3].xxxx; 106: ELSE; # (goto 114) 107: MUL TEMP[3].x, CONST[29].xxxx, TEMP[7].xxxx; 108: ADD TEMP[9].x, CONST[27].wwww, TEMP[2].-y-y-y-y; 109: MAD TEMP[10].x, TEMP[3].xxxx, TEMP[9].xxxx, TEMP[6].xxxx; 110: ADD TEMP[3].x, CONST[27].wwww, TEMP[8].-y-y-y-y; 111: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[3].xxxx; 112: ADD TEMP[3].x, CONST[27].wwww, TEMP[9].-x-x-x-x; 113: MOV TEMP[8].y, TEMP[3].xxxx; 114: ENDIF; 115: SLT TEMP[3].x, TEMP[0].zzzz, CONST[27].yyyy; 116: IF TEMP[3].xxxx; # (if false, goto 121); 117: MUL TEMP[3].x, CONST[29].xxxx, TEMP[7].xxxx; 118: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[2].zzzz, TEMP[6].xxxx; 119: MUL TEMP[3].x, TEMP[0].zzzz, TEMP[9].xxxx; 120: MOV TEMP[8].z, TEMP[3].xxxx; 121: ELSE; # (goto 129) 122: MUL TEMP[3].x, CONST[29].xxxx, TEMP[7].xxxx; 123: ADD TEMP[7].x, CONST[27].wwww, TEMP[2].-z-z-z-z; 124: MAD TEMP[2].x, TEMP[3].xxxx, TEMP[7].xxxx, TEMP[6].xxxx; 125: ADD TEMP[3].x, CONST[27].wwww, TEMP[8].-z-z-z-z; 126: MUL TEMP[6].x, TEMP[2].xxxx, TEMP[3].xxxx; 127: ADD TEMP[2].x, CONST[27].wwww, TEMP[6].-x-x-x-x; 128: MOV TEMP[8].z, TEMP[2].xxxx; 129: ENDIF; 130: MAD TEMP[2], TEMP[5], TEMP[8], TEMP[4]; 131: ADD TEMP[3].xyz, INPUT[15].xyzz, UNIFORM[15].-x-y-z-z; 132: DP3 TEMP[4].x, TEMP[3].xyzz, TEMP[3].xyzz; 133: RSQ TEMP[5].x, TEMP[4].xxxx; 134: MUL TEMP[4].xyz, TEMP[3].xyzz, TEMP[5].xxxx; 135: DP3 TEMP[5].x, TEMP[3].xyzz, TEMP[3].xyzz; 136: RSQ TEMP[3].x, TEMP[5].xxxx; 137: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[5].xxxx; 138: CMP TEMP[3].x, TEMP[5].-x-x-x-x, TEMP[3].xxxx, CONST[27].xxxx; 139: ADD TEMP[5].x, CONST[29].yyyy, TEMP[3].xxxx; 140: RCP TEMP[3].x, TEMP[5].xxxx; 141: MUL TEMP[5].x, CONST[29].yyyy, TEMP[3].xxxx; 142: DP3 TEMP[3].x, TEMP[4].xyzz, UNIFORM[14].xyzz; 143: SLE TEMP[6].x, TEMP[3].xxxx, CONST[29].zzzz; 144: IF TEMP[6].xxxx; # (if false, goto 146); 145: MOV TEMP[6].x, CONST[27].xxxx; 146: ELSE; # (goto 157) 147: ADD TEMP[7].x, TEMP[3].xxxx, CONST[29].wwww; 148: MUL TEMP[8].x, TEMP[7].xxxx, CONST[30].xxxx; 149: MOV_SAT TEMP[7].x, TEMP[8].xxxx; 150: MUL TEMP[8].x, CONST[29].xxxx, TEMP[7].xxxx; 151: ADD TEMP[9].x, CONST[30].yyyy, TEMP[8].-x-x-x-x; 152: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx; 153: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx; 154: MUL TEMP[7].x, TEMP[3].xxxx, TEMP[9].xxxx; 155: MUL TEMP[3].x, TEMP[5].xxxx, TEMP[7].xxxx; 156: MOV TEMP[6].x, TEMP[3].xxxx; 157: ENDIF; 158: SLT TEMP[3].x, TEMP[6].xxxx, CONST[30].zzzz; 159: IF TEMP[3].xxxx; # (if false, goto 161); 160: MOV TEMP[3].x, CONST[27].xxxx; 161: ELSE; # (goto 163) 162: MOV TEMP[3].x, TEMP[6].xxxx; 163: ENDIF; 164: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz; 165: MUL TEMP[4].x, TEMP[5].xxxx, TEMP[3].xxxx; 166: MUL TEMP[3].x, TEMP[4].xxxx, CONST[27].zzzz; 167: MAX TEMP[4].x, TEMP[3].xxxx, CONST[27].xxxx; 168: SLE TEMP[3].x, TEMP[5].xxxx, CONST[27].xxxx; 169: IF TEMP[3].xxxx; # (if false, goto 171); 170: MOV TEMP[3].x, CONST[27].xxxx; 171: ELSE; # (goto 183) 172: MUL TEMP[5], UNIFORM[9], INPUT[15].xxxx; 173: MAD TEMP[6], UNIFORM[10], INPUT[15].yyyy, TEMP[5]; 174: MAD TEMP[5], UNIFORM[11], INPUT[15].zzzz, TEMP[6]; 175: ADD TEMP[6], TEMP[5], UNIFORM[12]; 176: MUL TEMP[5].x, CONST[30].wwww, TEMP[6].wwww; 177: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[5].-x-x-x-x; 178: MOV TEMP[5], TEMP[6].xyyy; 179: MOV TEMP[5].w, TEMP[6].wwww; 180: MOV TEMP[5].z, TEMP[7].xxxx; 181: TXP TEMP[6].x, TEMP[5], texture[1], 2D SHADOW; 182: MOV TEMP[3].x, TEMP[6].xxxx; 183: ENDIF; 184: MOV TEMP[5].w, CONST[27].xxxx; 185: MUL TEMP[6].x, TEMP[4].xxxx, UNIFORM[8].xxxx; 186: ADD TEMP[4].x, CONST[27].wwww, TEMP[3].-x-x-x-x; 187: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[4].xxxx; 188: MUL TEMP[5].xyz, TEMP[0].xyzx, TEMP[3].xxxx; 189: ADD TEMP[3], TEMP[2], TEMP[5].-x-y-z-w; 190: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[7].-x-y-z-z; 191: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz; 192: RSQ TEMP[5].x, TEMP[4].xxxx; 193: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[5].xxxx; 194: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz; 195: RSQ TEMP[2].x, TEMP[5].xxxx; 196: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx; 197: CMP TEMP[2].x, TEMP[5].-x-x-x-x, TEMP[2].xxxx, CONST[27].xxxx; 198: ADD TEMP[5].x, CONST[29].yyyy, TEMP[2].xxxx; 199: RCP TEMP[2].x, TEMP[5].xxxx; 200: MUL TEMP[5].x, CONST[29].yyyy, TEMP[2].xxxx; 201: DP3 TEMP[2].x, TEMP[4].xyzz, UNIFORM[6].xyzz; 202: SLE TEMP[6].x, TEMP[2].xxxx, CONST[29].zzzz; 203: IF TEMP[6].xxxx; # (if false, goto 205); 204: MOV TEMP[6].x, CONST[27].xxxx; 205: ELSE; # (goto 216) 206: ADD TEMP[7].x, TEMP[2].xxxx, CONST[29].wwww; 207: MUL TEMP[8].x, TEMP[7].xxxx, CONST[30].xxxx; 208: MOV_SAT TEMP[7].x, TEMP[8].xxxx; 209: MUL TEMP[8].x, CONST[29].xxxx, TEMP[7].xxxx; 210: ADD TEMP[9].x, CONST[30].yyyy, TEMP[8].-x-x-x-x; 211: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx; 212: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx; 213: MUL TEMP[7].x, TEMP[2].xxxx, TEMP[9].xxxx; 214: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx; 215: MOV TEMP[6].x, TEMP[2].xxxx; 216: ENDIF; 217: SLT TEMP[2].x, TEMP[6].xxxx, CONST[30].zzzz; 218: IF TEMP[2].xxxx; # (if false, goto 220); 219: MOV TEMP[2].x, CONST[27].xxxx; 220: ELSE; # (goto 222) 221: MOV TEMP[2].x, TEMP[6].xxxx; 222: ENDIF; 223: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz; 224: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[2].xxxx; 225: MUL TEMP[2].x, TEMP[1].xxxx, CONST[27].zzzz; 226: MAX TEMP[1].x, TEMP[2].xxxx, CONST[27].xxxx; 227: SLE TEMP[2].x, TEMP[5].xxxx, CONST[27].xxxx; 228: IF TEMP[2].xxxx; # (if false, goto 230); 229: MOV TEMP[2].x, CONST[27].xxxx; 230: ELSE; # (goto 242) 231: MUL TEMP[4], UNIFORM[1], INPUT[15].xxxx; 232: MAD TEMP[5], UNIFORM[2], INPUT[15].yyyy, TEMP[4]; 233: MAD TEMP[4], UNIFORM[3], INPUT[15].zzzz, TEMP[5]; 234: ADD TEMP[5], TEMP[4], UNIFORM[4]; 235: MUL TEMP[4].x, CONST[30].wwww, TEMP[5].wwww; 236: ADD TEMP[6].x, TEMP[5].zzzz, TEMP[4].-x-x-x-x; 237: MOV TEMP[4], TEMP[5].xyyy; 238: MOV TEMP[4].w, TEMP[5].wwww; 239: MOV TEMP[4].z, TEMP[6].xxxx; 240: TXP TEMP[5].x, TEMP[4], texture[0], 2D SHADOW; 241: MOV TEMP[2].x, TEMP[5].xxxx; 242: ENDIF; 243: MOV TEMP[4].w, CONST[27].xxxx; 244: MUL TEMP[5].x, TEMP[1].xxxx, UNIFORM[0].xxxx; 245: ADD TEMP[1].x, CONST[27].wwww, TEMP[2].-x-x-x-x; 246: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[1].xxxx; 247: MUL TEMP[1].xyz, TEMP[0].xyzz, TEMP[2].xxxx; 248: MOV TEMP[4].xyz, TEMP[1].xyzx; 249: ADD TEMP[0].xyz, TEMP[3], TEMP[1].-x-y-z-x; 250: MOV TEMP[1].xyz, TEMP[0].xyzx; 251: MOV TEMP[1].w, CONST[27].wwww; 252: SEQ TEMP[0].x, STATE[26].wwww, CONST[27].xxxx; 253: IF TEMP[0].xxxx; # (if false, goto 259); 254: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 255: RSQ TEMP[2].x, TEMP[0].xxxx; 256: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx; 257: CMP TEMP[2].x, TEMP[0].-x-x-x-x, TEMP[2].xxxx, CONST[27].xxxx; 258: MOV TEMP[0].x, TEMP[2].xxxx; 259: ELSE; # (goto 261) 260: MOV TEMP[0].x, INPUT[15].-z-z-z-z; 261: ENDIF; 262: ADD TEMP[2].x, TEMP[0].xxxx, CONST[31].xxxx; 263: MUL TEMP[0].x, TEMP[2].xxxx, CONST[31].yyyy; 264: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 265: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx; 266: ADD TEMP[2].x, CONST[27].wwww, TEMP[0].-x-x-x-x; 267: ADD TEMP[0].x, CONST[27].wwww, TEMP[2].-x-x-x-x; 268: MOV_SAT TEMP[2].x, TEMP[0].xxxx; 269: ADD TEMP[0].x, CONST[27].wwww, TEMP[2].-x-x-x-x; 270: MUL TEMP[3], TEMP[1], TEMP[0].xxxx; 271: MAD TEMP[0].xyz, CONST[32], TEMP[2].xxxx, TEMP[3]; 272: MOV TEMP[1].w, CONST[27].wwww; 273: MOV TEMP[1].xyz, TEMP[0].xyzx; 274: MOV OUTPUT[2], TEMP[1]; 275: END InputsRead: 0x1c000 (0b1,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=276 NumTemporaries=11 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1f (0b11111) Samplers=[ 4 3 2 1 0 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=1 UNIFORM unf165 = {1, 0, 0, 0} param[1] sz=16 UNIFORM unf159 = {5.7, -0.0767, 0.249, 0.191} param[2] sz=12 UNIFORM unf159 = {0.565, -1.44, -1.26, -0.969} param[3] sz=8 UNIFORM unf159 = {-0.271, -5.55, 0.208, 0.159} param[4] sz=4 UNIFORM unf159 = {17.1, -8.62, -8.83, 0.23} param[5] sz=4 SAMPLER samp4 = {0, 0, 0, 0} param[6] sz=3 UNIFORM unf140 = {0.191, -0.969, 0.159, 0} param[7] sz=3 UNIFORM unf133 = {-3.01, -0.58, -1.36, 0} param[8] sz=1 UNIFORM unf126 = {1, 0, 0, 0} param[9] sz=16 UNIFORM unf120 = {5.7, -0.0767, 0.249, 0.191} param[10] sz=12 UNIFORM unf120 = {0.565, -1.44, -1.26, -0.969} param[11] sz=8 UNIFORM unf120 = {-0.271, -5.55, 0.208, 0.159} param[12] sz=4 UNIFORM unf120 = {2.33, 3.5, 2.15, 8.65} param[13] sz=4 SAMPLER samp3 = {1, 0, 0, 0} param[14] sz=3 UNIFORM unf101 = {0.191, -0.969, 0.159, 0} param[15] sz=3 UNIFORM unf94 = {-1.32, 8.42, -1.54, 0} param[16] sz=4 SAMPLER samp2 = {2, 0, 0, 0} param[17] sz=4 UNIFORM unf70 = {2.2, 1.97, 1.79, 2.2} param[18] sz=3 UNIFORM unf58 = {0.233, -0.601, -0.764, 0} param[19] sz=4 SAMPLER samp1 = {3, 0, 0, 0} param[20] sz=4 UNIFORM unf35 = {0.551, 0.557, 0.68, 0.68} param[21] sz=3 UNIFORM unf21 = {-0.243, -0.303, 0.922, 0} param[22] sz=4 SAMPLER samp0 = {4, 0, 0, 0} param[23] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[24] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[25] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[26] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[27] sz=4 CONST (null) = {0, 0.5, 0.8, 1} param[28] sz=4 CONST (null) = {0, 0, -1, 0.9} param[29] sz=4 CONST (null) = {2, 20, 0.996, -0.996} param[30] sz=4 CONST (null) = {1.75e+03, 3, 0.001, 0.005} param[31] sz=2 CONST (null) = {-6, 0.0385, 0, 0} param[32] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL SAMP[3] DCL SAMP[4] DCL CONST[0..4] DCL CONST[6..12] DCL CONST[14..15] DCL CONST[17..18] DCL CONST[20..21] DCL CONST[23..26] DCL TEMP[0..10] IMM FLT32 { 0.0000, 0.5000, 0.8000, 1.0000} IMM FLT32 { 0.0000, -1.0000, 0.9000, 0.9063} IMM FLT32 { 2.0000, 20.0000, 0.9962, -0.9962} IMM FLT32 { 1751.3136, 3.0000, 0.0010, 0.0050} IMM FLT32 { -6.0000, 0.0385, 0.0000, 0.9063} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[26].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: TEX TEMP[0].xyz, IN[2].xyyy, SAMP[4], 2D 14: DP3 TEMP[3].x, TEMP[1].xyzz, CONST[21].xyzz 15: MAD TEMP[4].x, IMM[0].yyyy, TEMP[3].xxxx, IMM[0].yyyy 16: MUL TEMP[3].x, TEMP[4].xxxx, IMM[0].zzzz 17: MAX TEMP[4].x, TEMP[3].xxxx, IMM[0].xxxx 18: MUL TEMP[3], CONST[20], TEMP[4].xxxx 19: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[1].xyzz 20: TEX TEMP[5], TEMP[4].xxxx, SAMP[3], 1D 21: MOV TEMP[4].w, IMM[0].wwww 22: MOV TEMP[4].xyz, TEMP[0].xyzx 23: MUL TEMP[6].x, TEMP[5].wwww, IMM[1].zzzz 24: MOV_SAT TEMP[7].x, TEMP[6].xxxx 25: ADD TEMP[6].x, IMM[0].wwww, -TEMP[7].xxxx 26: MOV TEMP[8], TEMP[4] 27: SLT TEMP[4].x, TEMP[0].xxxx, IMM[0].yyyy 28: IF TEMP[4].xxxx :33 29: MUL TEMP[4].x, IMM[2].xxxx, TEMP[7].xxxx 30: MAD TEMP[9].x, TEMP[4].xxxx, TEMP[5].xxxx, TEMP[6].xxxx 31: MUL TEMP[4].x, TEMP[0].xxxx, TEMP[9].xxxx 32: MOV TEMP[8].x, TEMP[4].xxxx 33: ELSE :41 34: MUL TEMP[4].x, IMM[2].xxxx, TEMP[7].xxxx 35: ADD TEMP[9].x, IMM[0].wwww, -TEMP[5].xxxx 36: MAD TEMP[10].x, TEMP[4].xxxx, TEMP[9].xxxx, TEMP[6].xxxx 37: ADD TEMP[4].x, IMM[0].wwww, -TEMP[8].xxxx 38: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[4].xxxx 39: ADD TEMP[4].x, IMM[0].wwww, -TEMP[9].xxxx 40: MOV TEMP[8].x, TEMP[4].xxxx 41: ENDIF 42: SLT TEMP[4].x, TEMP[0].yyyy, IMM[0].yyyy 43: IF TEMP[4].xxxx :48 44: MUL TEMP[4].x, IMM[2].xxxx, TEMP[7].xxxx 45: MAD TEMP[9].x, TEMP[4].xxxx, TEMP[5].yyyy, TEMP[6].xxxx 46: MUL TEMP[4].x, TEMP[0].yyyy, TEMP[9].xxxx 47: MOV TEMP[8].y, TEMP[4].xxxx 48: ELSE :56 49: MUL TEMP[4].x, IMM[2].xxxx, TEMP[7].xxxx 50: ADD TEMP[9].x, IMM[0].wwww, -TEMP[5].yyyy 51: MAD TEMP[10].x, TEMP[4].xxxx, TEMP[9].xxxx, TEMP[6].xxxx 52: ADD TEMP[4].x, IMM[0].wwww, -TEMP[8].yyyy 53: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[4].xxxx 54: ADD TEMP[4].x, IMM[0].wwww, -TEMP[9].xxxx 55: MOV TEMP[8].y, TEMP[4].xxxx 56: ENDIF 57: SLT TEMP[4].x, TEMP[0].zzzz, IMM[0].yyyy 58: IF TEMP[4].xxxx :63 59: MUL TEMP[4].x, IMM[2].xxxx, TEMP[7].xxxx 60: MAD TEMP[9].x, TEMP[4].xxxx, TEMP[5].zzzz, TEMP[6].xxxx 61: MUL TEMP[4].x, TEMP[0].zzzz, TEMP[9].xxxx 62: MOV TEMP[8].z, TEMP[4].xxxx 63: ELSE :71 64: MUL TEMP[4].x, IMM[2].xxxx, TEMP[7].xxxx 65: ADD TEMP[7].x, IMM[0].wwww, -TEMP[5].zzzz 66: MAD TEMP[5].x, TEMP[4].xxxx, TEMP[7].xxxx, TEMP[6].xxxx 67: ADD TEMP[4].x, IMM[0].wwww, -TEMP[8].zzzz 68: MUL TEMP[6].x, TEMP[5].xxxx, TEMP[4].xxxx 69: ADD TEMP[4].x, IMM[0].wwww, -TEMP[6].xxxx 70: MOV TEMP[8].z, TEMP[4].xxxx 71: ENDIF 72: MAD TEMP[4], TEMP[3], TEMP[8], IMM[0].xxxw 73: DP3 TEMP[3].x, TEMP[1].xyzz, CONST[18].xyzz 74: MUL TEMP[5].x, TEMP[3].xxxx, IMM[0].zzzz 75: MAX TEMP[3].x, TEMP[5].xxxx, IMM[0].xxxx 76: MUL TEMP[5], CONST[17], TEMP[3].xxxx 77: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[1].xyzz 78: TEX TEMP[2], TEMP[3].xxxx, SAMP[2], 1D 79: MOV TEMP[3].w, IMM[0].wwww 80: MOV TEMP[3].xyz, TEMP[0].xyzx 81: MUL TEMP[6].x, TEMP[2].wwww, IMM[1].zzzz 82: MOV_SAT TEMP[7].x, TEMP[6].xxxx 83: ADD TEMP[6].x, IMM[0].wwww, -TEMP[7].xxxx 84: MOV TEMP[8], TEMP[3] 85: SLT TEMP[3].x, TEMP[0].xxxx, IMM[0].yyyy 86: IF TEMP[3].xxxx :91 87: MUL TEMP[3].x, IMM[2].xxxx, TEMP[7].xxxx 88: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[2].xxxx, TEMP[6].xxxx 89: MUL TEMP[3].x, TEMP[0].xxxx, TEMP[9].xxxx 90: MOV TEMP[8].x, TEMP[3].xxxx 91: ELSE :99 92: MUL TEMP[3].x, IMM[2].xxxx, TEMP[7].xxxx 93: ADD TEMP[9].x, IMM[0].wwww, -TEMP[2].xxxx 94: MAD TEMP[10].x, TEMP[3].xxxx, TEMP[9].xxxx, TEMP[6].xxxx 95: ADD TEMP[3].x, IMM[0].wwww, -TEMP[8].xxxx 96: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[3].xxxx 97: ADD TEMP[3].x, IMM[0].wwww, -TEMP[9].xxxx 98: MOV TEMP[8].x, TEMP[3].xxxx 99: ENDIF 100: SLT TEMP[3].x, TEMP[0].yyyy, IMM[0].yyyy 101: IF TEMP[3].xxxx :106 102: MUL TEMP[3].x, IMM[2].xxxx, TEMP[7].xxxx 103: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[2].yyyy, TEMP[6].xxxx 104: MUL TEMP[3].x, TEMP[0].yyyy, TEMP[9].xxxx 105: MOV TEMP[8].y, TEMP[3].xxxx 106: ELSE :114 107: MUL TEMP[3].x, IMM[2].xxxx, TEMP[7].xxxx 108: ADD TEMP[9].x, IMM[0].wwww, -TEMP[2].yyyy 109: MAD TEMP[10].x, TEMP[3].xxxx, TEMP[9].xxxx, TEMP[6].xxxx 110: ADD TEMP[3].x, IMM[0].wwww, -TEMP[8].yyyy 111: MUL TEMP[9].x, TEMP[10].xxxx, TEMP[3].xxxx 112: ADD TEMP[3].x, IMM[0].wwww, -TEMP[9].xxxx 113: MOV TEMP[8].y, TEMP[3].xxxx 114: ENDIF 115: SLT TEMP[3].x, TEMP[0].zzzz, IMM[0].yyyy 116: IF TEMP[3].xxxx :121 117: MUL TEMP[3].x, IMM[2].xxxx, TEMP[7].xxxx 118: MAD TEMP[9].x, TEMP[3].xxxx, TEMP[2].zzzz, TEMP[6].xxxx 119: MUL TEMP[3].x, TEMP[0].zzzz, TEMP[9].xxxx 120: MOV TEMP[8].z, TEMP[3].xxxx 121: ELSE :129 122: MUL TEMP[3].x, IMM[2].xxxx, TEMP[7].xxxx 123: ADD TEMP[7].x, IMM[0].wwww, -TEMP[2].zzzz 124: MAD TEMP[2].x, TEMP[3].xxxx, TEMP[7].xxxx, TEMP[6].xxxx 125: ADD TEMP[3].x, IMM[0].wwww, -TEMP[8].zzzz 126: MUL TEMP[6].x, TEMP[2].xxxx, TEMP[3].xxxx 127: ADD TEMP[2].x, IMM[0].wwww, -TEMP[6].xxxx 128: MOV TEMP[8].z, TEMP[2].xxxx 129: ENDIF 130: MAD TEMP[2], TEMP[5], TEMP[8], TEMP[4] 131: ADD TEMP[3].xyz, IN[1].xyzz, -CONST[15].xyzz 132: DP3 TEMP[4].x, TEMP[3].xyzz, TEMP[3].xyzz 133: RSQ TEMP[5].x, TEMP[4].xxxx 134: MUL TEMP[4].xyz, TEMP[3].xyzz, TEMP[5].xxxx 135: DP3 TEMP[5].x, TEMP[3].xyzz, TEMP[3].xyzz 136: RSQ TEMP[3].x, TEMP[5].xxxx 137: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[5].xxxx 138: CMP TEMP[3].x, -TEMP[5].xxxx, TEMP[3].xxxx, IMM[0].xxxx 139: ADD TEMP[5].x, IMM[2].yyyy, TEMP[3].xxxx 140: RCP TEMP[3].x, TEMP[5].xxxx 141: MUL TEMP[5].x, IMM[2].yyyy, TEMP[3].xxxx 142: DP3 TEMP[3].x, TEMP[4].xyzz, CONST[14].xyzz 143: SLE TEMP[6].x, TEMP[3].xxxx, IMM[2].zzzz 144: IF TEMP[6].xxxx :146 145: MOV TEMP[6].x, IMM[0].xxxx 146: ELSE :157 147: ADD TEMP[7].x, TEMP[3].xxxx, IMM[2].wwww 148: MUL TEMP[8].x, TEMP[7].xxxx, IMM[3].xxxx 149: MOV_SAT TEMP[7].x, TEMP[8].xxxx 150: MUL TEMP[8].x, IMM[2].xxxx, TEMP[7].xxxx 151: ADD TEMP[9].x, IMM[3].yyyy, -TEMP[8].xxxx 152: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx 153: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx 154: MUL TEMP[7].x, TEMP[3].xxxx, TEMP[9].xxxx 155: MUL TEMP[3].x, TEMP[5].xxxx, TEMP[7].xxxx 156: MOV TEMP[6].x, TEMP[3].xxxx 157: ENDIF 158: SLT TEMP[3].x, TEMP[6].xxxx, IMM[3].zzzz 159: IF TEMP[3].xxxx :161 160: MOV TEMP[3].x, IMM[0].xxxx 161: ELSE :163 162: MOV TEMP[3].x, TEMP[6].xxxx 163: ENDIF 164: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz 165: MUL TEMP[4].x, TEMP[5].xxxx, TEMP[3].xxxx 166: MUL TEMP[3].x, TEMP[4].xxxx, IMM[0].zzzz 167: MAX TEMP[4].x, TEMP[3].xxxx, IMM[0].xxxx 168: SLE TEMP[3].x, TEMP[5].xxxx, IMM[0].xxxx 169: IF TEMP[3].xxxx :171 170: MOV TEMP[3].x, IMM[0].xxxx 171: ELSE :183 172: MUL TEMP[5], CONST[9], IN[1].xxxx 173: MAD TEMP[6], CONST[10], IN[1].yyyy, TEMP[5] 174: MAD TEMP[5], CONST[11], IN[1].zzzz, TEMP[6] 175: ADD TEMP[6], TEMP[5], CONST[12] 176: MUL TEMP[5].x, IMM[3].wwww, TEMP[6].wwww 177: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[5].xxxx 178: MOV TEMP[5], TEMP[6].xyyy 179: MOV TEMP[5].w, TEMP[6].wwww 180: MOV TEMP[5].z, TEMP[7].xxxx 181: TXP TEMP[6].x, TEMP[5], SAMP[1], SHADOW2D 182: MOV TEMP[3].x, TEMP[6].xxxx 183: ENDIF 184: MOV TEMP[5].w, IMM[0].xxxx 185: MUL TEMP[6].x, TEMP[4].xxxx, CONST[8].xxxx 186: ADD TEMP[4].x, IMM[0].wwww, -TEMP[3].xxxx 187: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[4].xxxx 188: MUL TEMP[5].xyz, TEMP[0].xyzx, TEMP[3].xxxx 189: ADD TEMP[3], TEMP[2], -TEMP[5] 190: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[7].xyzz 191: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz 192: RSQ TEMP[5].x, TEMP[4].xxxx 193: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[5].xxxx 194: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz 195: RSQ TEMP[2].x, TEMP[5].xxxx 196: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[5].xxxx 197: CMP TEMP[2].x, -TEMP[5].xxxx, TEMP[2].xxxx, IMM[0].xxxx 198: ADD TEMP[5].x, IMM[2].yyyy, TEMP[2].xxxx 199: RCP TEMP[2].x, TEMP[5].xxxx 200: MUL TEMP[5].x, IMM[2].yyyy, TEMP[2].xxxx 201: DP3 TEMP[2].x, TEMP[4].xyzz, CONST[6].xyzz 202: SLE TEMP[6].x, TEMP[2].xxxx, IMM[2].zzzz 203: IF TEMP[6].xxxx :205 204: MOV TEMP[6].x, IMM[0].xxxx 205: ELSE :216 206: ADD TEMP[7].x, TEMP[2].xxxx, IMM[2].wwww 207: MUL TEMP[8].x, TEMP[7].xxxx, IMM[3].xxxx 208: MOV_SAT TEMP[7].x, TEMP[8].xxxx 209: MUL TEMP[8].x, IMM[2].xxxx, TEMP[7].xxxx 210: ADD TEMP[9].x, IMM[3].yyyy, -TEMP[8].xxxx 211: MUL TEMP[8].x, TEMP[7].xxxx, TEMP[9].xxxx 212: MUL TEMP[9].x, TEMP[7].xxxx, TEMP[8].xxxx 213: MUL TEMP[7].x, TEMP[2].xxxx, TEMP[9].xxxx 214: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[7].xxxx 215: MOV TEMP[6].x, TEMP[2].xxxx 216: ENDIF 217: SLT TEMP[2].x, TEMP[6].xxxx, IMM[3].zzzz 218: IF TEMP[2].xxxx :220 219: MOV TEMP[2].x, IMM[0].xxxx 220: ELSE :222 221: MOV TEMP[2].x, TEMP[6].xxxx 222: ENDIF 223: DP3 TEMP[5].x, TEMP[1].xyzz, TEMP[4].xyzz 224: MUL TEMP[1].x, TEMP[5].xxxx, TEMP[2].xxxx 225: MUL TEMP[2].x, TEMP[1].xxxx, IMM[0].zzzz 226: MAX TEMP[1].x, TEMP[2].xxxx, IMM[0].xxxx 227: SLE TEMP[2].x, TEMP[5].xxxx, IMM[0].xxxx 228: IF TEMP[2].xxxx :230 229: MOV TEMP[2].x, IMM[0].xxxx 230: ELSE :242 231: MUL TEMP[4], CONST[1], IN[1].xxxx 232: MAD TEMP[5], CONST[2], IN[1].yyyy, TEMP[4] 233: MAD TEMP[4], CONST[3], IN[1].zzzz, TEMP[5] 234: ADD TEMP[5], TEMP[4], CONST[4] 235: MUL TEMP[4].x, IMM[3].wwww, TEMP[5].wwww 236: ADD TEMP[6].x, TEMP[5].zzzz, -TEMP[4].xxxx 237: MOV TEMP[4], TEMP[5].xyyy 238: MOV TEMP[4].w, TEMP[5].wwww 239: MOV TEMP[4].z, TEMP[6].xxxx 240: TXP TEMP[5].x, TEMP[4], SAMP[0], SHADOW2D 241: MOV TEMP[2].x, TEMP[5].xxxx 242: ENDIF 243: MOV TEMP[4].w, IMM[0].xxxx 244: MUL TEMP[5].x, TEMP[1].xxxx, CONST[0].xxxx 245: ADD TEMP[1].x, IMM[0].wwww, -TEMP[2].xxxx 246: MUL TEMP[2].x, TEMP[5].xxxx, TEMP[1].xxxx 247: MUL TEMP[1].xyz, TEMP[0].xyzz, TEMP[2].xxxx 248: MOV TEMP[4].xyz, TEMP[1].xyzx 249: ADD TEMP[0].xyz, TEMP[3], -TEMP[1].xyzx 250: MOV TEMP[1].xyz, TEMP[0].xyzx 251: MOV TEMP[1].w, IMM[0].wwww 252: SEQ TEMP[0].x, CONST[26].wwww, IMM[0].xxxx 253: IF TEMP[0].xxxx :259 254: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 255: RSQ TEMP[2].x, TEMP[0].xxxx 256: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[0].xxxx 257: CMP TEMP[2].x, -TEMP[0].xxxx, TEMP[2].xxxx, IMM[0].xxxx 258: MOV TEMP[0].x, TEMP[2].xxxx 259: ELSE :261 260: MOV TEMP[0].x, -IN[1].zzzz 261: ENDIF 262: ADD TEMP[2].x, TEMP[0].xxxx, IMM[4].xxxx 263: MUL TEMP[0].x, TEMP[2].xxxx, IMM[4].yyyy 264: MOV_SAT TEMP[2].x, TEMP[0].xxxx 265: MUL TEMP[0].x, TEMP[2].xxxx, TEMP[2].xxxx 266: ADD TEMP[2].x, IMM[0].wwww, -TEMP[0].xxxx 267: ADD TEMP[0].x, IMM[0].wwww, -TEMP[2].xxxx 268: MOV_SAT TEMP[2].x, TEMP[0].xxxx 269: ADD TEMP[0].x, IMM[0].wwww, -TEMP[2].xxxx 270: MUL TEMP[3], TEMP[1], TEMP[0].xxxx 271: MAD TEMP[0].xyz, IMM[5], TEMP[2].xxxx, TEMP[3] 272: MOV TEMP[1].w, IMM[0].wwww 273: MOV TEMP[1].xyz, TEMP[0].xyzx 274: MOV OUT[0], TEMP[1] 275: END # Vertex Program/Shader 102 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[18].xy, INPUT[17].xyxx; 13: END InputsRead: 0x20005 (0b10,00000000,00000101) OutputsWritten: 0x70001 (0b111,00000000,00000001) NumInstructions=14 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {-0.0291, 0.22, 0.975, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {0.871, 0.484, -0.083, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-0.49, 0.847, -0.205, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {2.33, 0.585, -9.48, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {-0.0291, 0.22, 0.975, 9.18} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {0.871, 0.484, -0.083, -3.1} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-0.49, 0.847, -0.205, -1.3} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[3].xy, IN[2].xyxx 13: END # Fragment Program/Shader 108 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[29].wwww, CONST[30].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[31].xyzx; 12: ENDIF; 13: MAD TEMP[3].xy, CONST[32], INPUT[18].xyxx, CONST[33]; 14: TEX TEMP[0], TEMP[3].xyyy, texture[6], 2D; 15: DP3 TEMP[3].x, CONST[34], TEMP[0].xyzz; 16: MUL TEMP[4].x, TEMP[3].xxxx, CONST[30].yyyy; 17: MAX TEMP[3].x, TEMP[4].xxxx, CONST[30].xxxx; 18: MAD TEMP[5].xy, CONST[35], INPUT[18].xyxx, CONST[36]; 19: TEX TEMP[4], TEMP[5].xyyy, texture[5], 2D; 20: MOV TEMP[5].x, TEMP[4].xxxx; 21: MOV TEMP[5].y, TEMP[4].-y-y-y-y; 22: MOV TEMP[5].z, TEMP[4].zzzz; 23: ADD TEMP[4].xyz, TEMP[5].xyzz, CONST[37]; 24: MUL TEMP[5].xyz, CONST[32].xxxx, TEMP[4].xyzz; 25: DP3 TEMP[4].x, INPUT[17].xyzz, INPUT[17].xyzz; 26: RSQ TEMP[6].x, TEMP[4].xxxx; 27: MUL TEMP[4].xyz, INPUT[17].xyzz, TEMP[6].xxxx; 28: MUL TEMP[6].xyz, TEMP[1].zxyy, TEMP[4].yzxx; 29: MAD TEMP[7].xyz, TEMP[1].yzxx, TEMP[4].zxyy, TEMP[6].-x-y-z-z; 30: MUL TEMP[6].xyz, TEMP[5].xxxx, TEMP[4].xyzz; 31: MAD TEMP[4].xyz, TEMP[5].yyyy, TEMP[7].xyzz, TEMP[6].xyzz; 32: MAD TEMP[6].xyz, TEMP[5].zzzz, TEMP[1].xyzz, TEMP[4].xyzz; 33: DP3 TEMP[4].x, TEMP[6].xyzz, TEMP[6].xyzz; 34: RSQ TEMP[5].x, TEMP[4].xxxx; 35: MUL TEMP[4].xyz, TEMP[6].xyzz, TEMP[5].xxxx; 36: MUL TEMP[5].xyz, CONST[37].yyyy, TEMP[1].xyzz; 37: MAD TEMP[1].xyz, CONST[37].yyyy, TEMP[4].xyzz, TEMP[5].xyzz; 38: DP3 TEMP[4].x, TEMP[1].xyzz, TEMP[1].xyzz; 39: RSQ TEMP[5].x, TEMP[4].xxxx; 40: MUL TEMP[4].xyz, TEMP[1].xyzz, TEMP[5].xxxx; 41: TEX TEMP[1].xyz, INPUT[16].xyyy, texture[4], 2D; 42: MUL TEMP[5].xyz, TEMP[1].xyzz, TEMP[0].xyzz; 43: DP3 TEMP[0].x, TEMP[2].xyzz, TEMP[4].xyzz; 44: TEX TEMP[1], TEMP[0].xxxx, texture[3], 1D; 45: MOV TEMP[0].w, CONST[32].zzzz; 46: MOV TEMP[0].xyz, TEMP[5].xyzx; 47: MOV_SAT TEMP[6].x, TEMP[1].wwww; 48: ADD TEMP[7], CONST[38], TEMP[1].-x-y-z-w; 49: ADD TEMP[1].x, CONST[32].zzzz, TEMP[6].-x-x-x-x; 50: MAD TEMP[8], TEMP[6].xxxx, TEMP[7], TEMP[1].xxxx; 51: ADD TEMP[1], CONST[38], TEMP[0].-x-y-z-w; 52: MUL TEMP[0], TEMP[8], TEMP[1]; 53: ADD TEMP[0], CONST[38], TEMP[0].-x-y-z-w; 54: MOV TEMP[0].w, CONST[32].zzzz; 55: DP3 TEMP[1].x, TEMP[2].xyzz, TEMP[4].xyzz; 56: TEX TEMP[6], TEMP[1].xxxx, texture[2], 1D; 57: MOV TEMP[1].w, CONST[32].zzzz; 58: MOV TEMP[1].xyz, TEMP[5].xyzx; 59: MOV_SAT TEMP[7].x, TEMP[6].wwww; 60: ADD TEMP[8], CONST[38], TEMP[6].-x-y-z-w; 61: ADD TEMP[6].x, CONST[32].zzzz, TEMP[7].-x-x-x-x; 62: MAD TEMP[9], TEMP[7].xxxx, TEMP[8], TEMP[6].xxxx; 63: ADD TEMP[6], CONST[38], TEMP[1].-x-y-z-w; 64: MUL TEMP[1], TEMP[9], TEMP[6]; 65: ADD TEMP[1], CONST[38], TEMP[1].-x-y-z-w; 66: MOV TEMP[1].w, CONST[32].zzzz; 67: DP3 TEMP[6].x, TEMP[4].xyzz, UNIFORM[19].xyzz; 68: MAX TEMP[7].x, TEMP[6].xxxx, CONST[30].xxxx; 69: MUL TEMP[6], UNIFORM[18], TEMP[7].xxxx; 70: DP3 TEMP[7].x, TEMP[4].xyzz, UNIFORM[22].xyzz; 71: MAD TEMP[8].x, CONST[37].yyyy, TEMP[7].xxxx, CONST[37].yyyy; 72: MAX TEMP[7].x, TEMP[8].xxxx, CONST[30].xxxx; 73: MUL TEMP[8], UNIFORM[21], TEMP[7].xxxx; 74: MAD TEMP[7], TEMP[8], TEMP[0], CONST[39]; 75: MAD TEMP[0], TEMP[6], TEMP[1], TEMP[7]; 76: ADD TEMP[1].xyz, TEMP[2].xyzz, UNIFORM[19].xyzz; 77: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[1].xyzz; 78: RSQ TEMP[7].x, TEMP[6].xxxx; 79: MUL TEMP[6].xyz, TEMP[1].xyzz, TEMP[7].xxxx; 80: DP3 TEMP[1].x, TEMP[4].xyzz, TEMP[6].xyzz; 81: SLT TEMP[6].x, TEMP[1].xxxx, CONST[30].xxxx; 82: IF TEMP[6].xxxx; # (if false, goto 84); 83: MOV TEMP[6].x, CONST[30].xxxx; 84: ELSE; # (goto 92) 85: POW TEMP[7].x, TEMP[1].xxxx, CONST[30].zzzz; 86: DP3 TEMP[1].x, TEMP[4].xyzz, TEMP[2].xyzz; 87: MAX TEMP[2].x, TEMP[1].xxxx, CONST[30].xxxx; 88: ADD TEMP[1].x, CONST[30].wwww, TEMP[2].xxxx; 89: RCP TEMP[2].x, TEMP[1].xxxx; 90: MUL TEMP[1].x, TEMP[7].xxxx, TEMP[2].xxxx; 91: MOV TEMP[6].x, TEMP[1].xxxx; 92: ENDIF; 93: MOV TEMP[1].w, CONST[32].zzzz; 94: MUL TEMP[2].x, TEMP[3].xxxx, TEMP[6].xxxx; 95: MUL TEMP[1].xyz, TEMP[2].xxxx, UNIFORM[16].xyzx; 96: ADD TEMP[2].xyz, CONST[40], TEMP[1]; 97: ADD TEMP[1].xyz, INPUT[15].xyzz, UNIFORM[15].-x-y-z-z; 98: DP3 TEMP[3].x, TEMP[1].xyzz, TEMP[1].xyzz; 99: RSQ TEMP[6].x, TEMP[3].xxxx; 100: MUL TEMP[3].xyz, TEMP[1].xyzz, TEMP[6].xxxx; 101: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[1].xyzz; 102: RSQ TEMP[1].x, TEMP[6].xxxx; 103: MUL TEMP[1].x, TEMP[1].xxxx, TEMP[6].xxxx; 104: CMP TEMP[1].x, TEMP[6].-x-x-x-x, TEMP[1].xxxx, CONST[30].xxxx; 105: ADD TEMP[6].x, CONST[31].wwww, TEMP[1].xxxx; 106: RCP TEMP[1].x, TEMP[6].xxxx; 107: MUL TEMP[6].x, CONST[31].wwww, TEMP[1].xxxx; 108: DP3 TEMP[1].x, TEMP[3].xyzz, UNIFORM[14].xyzz; 109: SLE TEMP[7].x, TEMP[1].xxxx, CONST[32].wwww; 110: IF TEMP[7].xxxx; # (if false, goto 112); 111: MOV TEMP[7].x, CONST[30].xxxx; 112: ELSE; # (goto 123) 113: ADD TEMP[8].x, TEMP[1].xxxx, CONST[33].wwww; 114: MUL TEMP[9].x, TEMP[8].xxxx, CONST[34].wwww; 115: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 116: MUL TEMP[9].x, CONST[32].xxxx, TEMP[8].xxxx; 117: ADD TEMP[10].x, CONST[35].wwww, TEMP[9].-x-x-x-x; 118: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 119: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 120: MUL TEMP[8].x, TEMP[1].xxxx, TEMP[10].xxxx; 121: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[8].xxxx; 122: MOV TEMP[7].x, TEMP[1].xxxx; 123: ENDIF; 124: SLT TEMP[1].x, TEMP[7].xxxx, CONST[36].wwww; 125: IF TEMP[1].xxxx; # (if false, goto 127); 126: MOV TEMP[1].x, CONST[30].xxxx; 127: ELSE; # (goto 129) 128: MOV TEMP[1].x, TEMP[7].xxxx; 129: ENDIF; 130: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[3].xyzz; 131: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[1].xxxx; 132: MAX TEMP[1].x, TEMP[3].xxxx, CONST[30].xxxx; 133: SLE TEMP[3].x, TEMP[6].xxxx, CONST[30].xxxx; 134: IF TEMP[3].xxxx; # (if false, goto 136); 135: MOV TEMP[3].x, CONST[30].xxxx; 136: ELSE; # (goto 148) 137: MUL TEMP[6], UNIFORM[9], INPUT[15].xxxx; 138: MAD TEMP[7], UNIFORM[10], INPUT[15].yyyy, TEMP[6]; 139: MAD TEMP[6], UNIFORM[11], INPUT[15].zzzz, TEMP[7]; 140: ADD TEMP[7], TEMP[6], UNIFORM[12]; 141: MUL TEMP[6].x, CONST[37].wwww, TEMP[7].wwww; 142: ADD TEMP[8].x, TEMP[7].zzzz, TEMP[6].-x-x-x-x; 143: MOV TEMP[6], TEMP[7].xyyy; 144: MOV TEMP[6].w, TEMP[7].wwww; 145: MOV TEMP[6].z, TEMP[8].xxxx; 146: TXP TEMP[7].x, TEMP[6], texture[1], 2D SHADOW; 147: MOV TEMP[3].x, TEMP[7].xxxx; 148: ENDIF; 149: MOV TEMP[6].w, CONST[30].xxxx; 150: MUL TEMP[7].x, TEMP[1].xxxx, UNIFORM[8].xxxx; 151: ADD TEMP[1].x, CONST[32].zzzz, TEMP[3].-x-x-x-x; 152: MUL TEMP[3].x, TEMP[7].xxxx, TEMP[1].xxxx; 153: MUL TEMP[6].xyz, TEMP[5].xyzx, TEMP[3].xxxx; 154: ADD TEMP[1], TEMP[0], TEMP[6].-x-y-z-w; 155: ADD TEMP[0].xyz, INPUT[15].xyzz, UNIFORM[7].-x-y-z-z; 156: DP3 TEMP[3].x, TEMP[0].xyzz, TEMP[0].xyzz; 157: RSQ TEMP[6].x, TEMP[3].xxxx; 158: MUL TEMP[3].xyz, TEMP[0].xyzz, TEMP[6].xxxx; 159: DP3 TEMP[6].x, TEMP[0].xyzz, TEMP[0].xyzz; 160: RSQ TEMP[0].x, TEMP[6].xxxx; 161: MUL TEMP[0].x, TEMP[0].xxxx, TEMP[6].xxxx; 162: CMP TEMP[0].x, TEMP[6].-x-x-x-x, TEMP[0].xxxx, CONST[30].xxxx; 163: ADD TEMP[6].x, CONST[31].wwww, TEMP[0].xxxx; 164: RCP TEMP[0].x, TEMP[6].xxxx; 165: MUL TEMP[6].x, CONST[31].wwww, TEMP[0].xxxx; 166: DP3 TEMP[0].x, TEMP[3].xyzz, UNIFORM[6].xyzz; 167: SLE TEMP[7].x, TEMP[0].xxxx, CONST[32].wwww; 168: IF TEMP[7].xxxx; # (if false, goto 170); 169: MOV TEMP[7].x, CONST[30].xxxx; 170: ELSE; # (goto 181) 171: ADD TEMP[8].x, TEMP[0].xxxx, CONST[33].wwww; 172: MUL TEMP[9].x, TEMP[8].xxxx, CONST[34].wwww; 173: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 174: MUL TEMP[9].x, CONST[32].xxxx, TEMP[8].xxxx; 175: ADD TEMP[10].x, CONST[35].wwww, TEMP[9].-x-x-x-x; 176: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 177: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 178: MUL TEMP[8].x, TEMP[0].xxxx, TEMP[10].xxxx; 179: MUL TEMP[0].x, TEMP[6].xxxx, TEMP[8].xxxx; 180: MOV TEMP[7].x, TEMP[0].xxxx; 181: ENDIF; 182: SLT TEMP[0].x, TEMP[7].xxxx, CONST[36].wwww; 183: IF TEMP[0].xxxx; # (if false, goto 185); 184: MOV TEMP[0].x, CONST[30].xxxx; 185: ELSE; # (goto 187) 186: MOV TEMP[0].x, TEMP[7].xxxx; 187: ENDIF; 188: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[3].xyzz; 189: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[0].xxxx; 190: MAX TEMP[0].x, TEMP[3].xxxx, CONST[30].xxxx; 191: SLE TEMP[3].x, TEMP[6].xxxx, CONST[30].xxxx; 192: IF TEMP[3].xxxx; # (if false, goto 194); 193: MOV TEMP[3].x, CONST[30].xxxx; 194: ELSE; # (goto 206) 195: MUL TEMP[4], UNIFORM[1], INPUT[15].xxxx; 196: MAD TEMP[6], UNIFORM[2], INPUT[15].yyyy, TEMP[4]; 197: MAD TEMP[4], UNIFORM[3], INPUT[15].zzzz, TEMP[6]; 198: ADD TEMP[6], TEMP[4], UNIFORM[4]; 199: MUL TEMP[4].x, CONST[37].wwww, TEMP[6].wwww; 200: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[4].-x-x-x-x; 201: MOV TEMP[4], TEMP[6].xyyy; 202: MOV TEMP[4].w, TEMP[6].wwww; 203: MOV TEMP[4].z, TEMP[7].xxxx; 204: TXP TEMP[6].x, TEMP[4], texture[0], 2D SHADOW; 205: MOV TEMP[3].x, TEMP[6].xxxx; 206: ENDIF; 207: MOV TEMP[4].w, CONST[30].xxxx; 208: MUL TEMP[6].x, TEMP[0].xxxx, UNIFORM[0].xxxx; 209: ADD TEMP[0].x, CONST[32].zzzz, TEMP[3].-x-x-x-x; 210: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[0].xxxx; 211: MUL TEMP[4].xyz, TEMP[5].xyzx, TEMP[3].xxxx; 212: ADD TEMP[0], TEMP[1], TEMP[4].-x-y-z-w; 213: ADD TEMP[1].xyz, TEMP[0], TEMP[2]; 214: MOV TEMP[0].xyz, TEMP[1].xyzx; 215: MOV TEMP[0].w, CONST[32].zzzz; 216: SEQ TEMP[1].x, STATE[29].wwww, CONST[30].xxxx; 217: IF TEMP[1].xxxx; # (if false, goto 223); 218: DP3 TEMP[1].x, INPUT[15].xyzz, INPUT[15].xyzz; 219: RSQ TEMP[2].x, TEMP[1].xxxx; 220: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx; 221: CMP TEMP[2].x, TEMP[1].-x-x-x-x, TEMP[2].xxxx, CONST[30].xxxx; 222: MOV TEMP[1].x, TEMP[2].xxxx; 223: ELSE; # (goto 225) 224: MOV TEMP[1].x, INPUT[15].-z-z-z-z; 225: ENDIF; 226: ADD TEMP[2].x, TEMP[1].xxxx, CONST[41].xxxx; 227: MUL TEMP[1].x, TEMP[2].xxxx, CONST[41].yyyy; 228: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 229: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx; 230: ADD TEMP[2].x, CONST[32].zzzz, TEMP[1].-x-x-x-x; 231: ADD TEMP[1].x, CONST[32].zzzz, TEMP[2].-x-x-x-x; 232: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 233: ADD TEMP[1].x, CONST[32].zzzz, TEMP[2].-x-x-x-x; 234: MUL TEMP[3], TEMP[0], TEMP[1].xxxx; 235: MAD TEMP[0], CONST[42], TEMP[2].xxxx, TEMP[3]; 236: MOV TEMP[1].w, CONST[32].zzzz; 237: MOV TEMP[1].xyz, TEMP[0].xyzx; 238: MOV OUTPUT[2], TEMP[1]; 239: END InputsRead: 0x7c000 (0b111,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=240 NumTemporaries=11 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x7f (0b1111111) Samplers=[ 6 5 4 3 2 1 0 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=1 UNIFORM unf252 = {1, 0, 0, 0} param[1] sz=16 UNIFORM unf246 = {5.7, -0.0767, 0.249, 0.191} param[2] sz=12 UNIFORM unf246 = {0.565, -1.44, -1.26, -0.969} param[3] sz=8 UNIFORM unf246 = {-0.271, -5.55, 0.208, 0.159} param[4] sz=4 UNIFORM unf246 = {17.1, -8.62, -8.83, 0.23} param[5] sz=4 SAMPLER samp6 = {0, 0, 0, 0} param[6] sz=3 UNIFORM unf227 = {0.191, -0.969, 0.159, 0} param[7] sz=3 UNIFORM unf220 = {-3.01, -0.58, -1.36, 0} param[8] sz=1 UNIFORM unf213 = {1, 0, 0, 0} param[9] sz=16 UNIFORM unf207 = {5.7, -0.0767, 0.249, 0.191} param[10] sz=12 UNIFORM unf207 = {0.565, -1.44, -1.26, -0.969} param[11] sz=8 UNIFORM unf207 = {-0.271, -5.55, 0.208, 0.159} param[12] sz=4 UNIFORM unf207 = {2.33, 3.5, 2.15, 8.65} param[13] sz=4 SAMPLER samp5 = {1, 0, 0, 0} param[14] sz=3 UNIFORM unf188 = {0.191, -0.969, 0.159, 0} param[15] sz=3 UNIFORM unf181 = {-1.32, 8.42, -1.54, 0} param[16] sz=3 UNIFORM unf174 = {2.2, 1.97, 1.79, 0} param[17] sz=4 SAMPLER samp4 = {2, 0, 0, 0} param[18] sz=4 UNIFORM unf140 = {2.2, 1.97, 1.79, 2.2} param[19] sz=3 UNIFORM unf128 = {0.233, -0.601, -0.764, 0} param[20] sz=4 SAMPLER samp3 = {3, 0, 0, 0} param[21] sz=4 UNIFORM unf91 = {0.551, 0.557, 0.68, 0.68} param[22] sz=3 UNIFORM unf77 = {-0.243, -0.303, 0.922, 0} param[23] sz=4 SAMPLER samp2 = {4, 0, 0, 0} param[24] sz=4 SAMPLER samp1 = {5, 0, 0, 0} param[25] sz=4 SAMPLER samp0 = {6, 0, 0, 0} param[26] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[27] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[28] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[29] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[30] sz=4 CONST (null) = {0, 0.075, 52, 0.1} param[31] sz=4 CONST (null) = {0, 0, -1, 20} param[32] sz=4 CONST (null) = {2, 2, 1, 0.996} param[33] sz=4 CONST (null) = {-0.5, -0.5, 0, -0.996} param[34] sz=4 CONST (null) = {0.35, 0.45, 0.2, 1.75e+03} param[35] sz=4 CONST (null) = {1, 1.5, 1, 3} param[36] sz=4 CONST (null) = {0, -0.25, 0, 0.001} param[37] sz=4 CONST (null) = {-0.5, 0.5, -0.5, 0.005} param[38] sz=4 CONST (null) = {1, 1, 1, 1} param[39] sz=4 CONST (null) = {0, 0, 0, 1} param[40] sz=4 CONST (null) = {0, 0, 0, 2} param[41] sz=2 CONST (null) = {-6, 0.0385, 0, 0} param[42] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL IN[3], GENERIC[13], PERSPECTIVE DCL IN[4], GENERIC[14], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL SAMP[3] DCL SAMP[4] DCL SAMP[5] DCL SAMP[6] DCL CONST[0..4] DCL CONST[6..12] DCL CONST[14..16] DCL CONST[18..19] DCL CONST[21..22] DCL CONST[26..29] DCL TEMP[0..10] IMM FLT32 { 0.0000, 0.0750, 52.0000, 0.1000} IMM FLT32 { 0.0000, -1.0000, 20.0000, 1.0000} IMM FLT32 { 2.0000, 1.0000, 0.9962, 0.0000} IMM FLT32 { -0.5000, 0.0000, -0.9962, 0.9063} IMM FLT32 { 0.3500, 0.4500, 0.2000, 1751.3136} IMM FLT32 { 1.0000, 1.5000, 3.0000, 0.9063} IMM FLT32 { 0.0000, -0.2500, 0.0010, 0.9063} IMM FLT32 { -0.5000, 0.5000, 0.0050, 0.9063} IMM FLT32 { -6.0000, 0.0385, 0.0000, 0.9063} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[29].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: MAD TEMP[3].xy, IMM[2].xxyz, IN[4].xyxx, IMM[3].xxyz 14: TEX TEMP[0], TEMP[3].xyyy, SAMP[6], 2D 15: DP3 TEMP[3].x, IMM[4], TEMP[0].xyzz 16: MUL TEMP[4].x, TEMP[3].xxxx, IMM[0].yyyy 17: MAX TEMP[3].x, TEMP[4].xxxx, IMM[0].xxxx 18: MAD TEMP[5].xy, IMM[5].xyxz, IN[4].xyxx, IMM[6].xyxz 19: TEX TEMP[4], TEMP[5].xyyy, SAMP[5], 2D 20: MOV TEMP[5].x, TEMP[4].xxxx 21: MOV TEMP[5].y, -TEMP[4].yyyy 22: MOV TEMP[5].z, TEMP[4].zzzz 23: ADD TEMP[4].xyz, TEMP[5].xyzz, IMM[7].xyxz 24: MUL TEMP[5].xyz, IMM[2].xxxx, TEMP[4].xyzz 25: DP3 TEMP[4].x, IN[3].xyzz, IN[3].xyzz 26: RSQ TEMP[6].x, TEMP[4].xxxx 27: MUL TEMP[4].xyz, IN[3].xyzz, TEMP[6].xxxx 28: MUL TEMP[6].xyz, TEMP[1].zxyy, TEMP[4].yzxx 29: MAD TEMP[7].xyz, TEMP[1].yzxx, TEMP[4].zxyy, -TEMP[6].xyzz 30: MUL TEMP[6].xyz, TEMP[5].xxxx, TEMP[4].xyzz 31: MAD TEMP[4].xyz, TEMP[5].yyyy, TEMP[7].xyzz, TEMP[6].xyzz 32: MAD TEMP[6].xyz, TEMP[5].zzzz, TEMP[1].xyzz, TEMP[4].xyzz 33: DP3 TEMP[4].x, TEMP[6].xyzz, TEMP[6].xyzz 34: RSQ TEMP[5].x, TEMP[4].xxxx 35: MUL TEMP[4].xyz, TEMP[6].xyzz, TEMP[5].xxxx 36: MUL TEMP[5].xyz, IMM[7].yyyy, TEMP[1].xyzz 37: MAD TEMP[1].xyz, IMM[7].yyyy, TEMP[4].xyzz, TEMP[5].xyzz 38: DP3 TEMP[4].x, TEMP[1].xyzz, TEMP[1].xyzz 39: RSQ TEMP[5].x, TEMP[4].xxxx 40: MUL TEMP[4].xyz, TEMP[1].xyzz, TEMP[5].xxxx 41: TEX TEMP[1].xyz, IN[2].xyyy, SAMP[4], 2D 42: MUL TEMP[5].xyz, TEMP[1].xyzz, TEMP[0].xyzz 43: DP3 TEMP[0].x, TEMP[2].xyzz, TEMP[4].xyzz 44: TEX TEMP[1], TEMP[0].xxxx, SAMP[3], 1D 45: MOV TEMP[0].w, IMM[2].yyyy 46: MOV TEMP[0].xyz, TEMP[5].xyzx 47: MOV_SAT TEMP[6].x, TEMP[1].wwww 48: ADD TEMP[7], IMM[1].wwww, -TEMP[1] 49: ADD TEMP[1].x, IMM[2].yyyy, -TEMP[6].xxxx 50: MAD TEMP[8], TEMP[6].xxxx, TEMP[7], TEMP[1].xxxx 51: ADD TEMP[1], IMM[1].wwww, -TEMP[0] 52: MUL TEMP[0], TEMP[8], TEMP[1] 53: ADD TEMP[0], IMM[1].wwww, -TEMP[0] 54: MOV TEMP[0].w, IMM[2].yyyy 55: DP3 TEMP[1].x, TEMP[2].xyzz, TEMP[4].xyzz 56: TEX TEMP[6], TEMP[1].xxxx, SAMP[2], 1D 57: MOV TEMP[1].w, IMM[2].yyyy 58: MOV TEMP[1].xyz, TEMP[5].xyzx 59: MOV_SAT TEMP[7].x, TEMP[6].wwww 60: ADD TEMP[8], IMM[1].wwww, -TEMP[6] 61: ADD TEMP[6].x, IMM[2].yyyy, -TEMP[7].xxxx 62: MAD TEMP[9], TEMP[7].xxxx, TEMP[8], TEMP[6].xxxx 63: ADD TEMP[6], IMM[1].wwww, -TEMP[1] 64: MUL TEMP[1], TEMP[9], TEMP[6] 65: ADD TEMP[1], IMM[1].wwww, -TEMP[1] 66: MOV TEMP[1].w, IMM[2].yyyy 67: DP3 TEMP[6].x, TEMP[4].xyzz, CONST[19].xyzz 68: MAX TEMP[7].x, TEMP[6].xxxx, IMM[0].xxxx 69: MUL TEMP[6], CONST[18], TEMP[7].xxxx 70: DP3 TEMP[7].x, TEMP[4].xyzz, CONST[22].xyzz 71: MAD TEMP[8].x, IMM[7].yyyy, TEMP[7].xxxx, IMM[7].yyyy 72: MAX TEMP[7].x, TEMP[8].xxxx, IMM[0].xxxx 73: MUL TEMP[8], CONST[21], TEMP[7].xxxx 74: MAD TEMP[7], TEMP[8], TEMP[0], IMM[1].xxxw 75: MAD TEMP[0], TEMP[6], TEMP[1], TEMP[7] 76: ADD TEMP[1].xyz, TEMP[2].xyzz, CONST[19].xyzz 77: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[1].xyzz 78: RSQ TEMP[7].x, TEMP[6].xxxx 79: MUL TEMP[6].xyz, TEMP[1].xyzz, TEMP[7].xxxx 80: DP3 TEMP[1].x, TEMP[4].xyzz, TEMP[6].xyzz 81: SLT TEMP[6].x, TEMP[1].xxxx, IMM[0].xxxx 82: IF TEMP[6].xxxx :84 83: MOV TEMP[6].x, IMM[0].xxxx 84: ELSE :92 85: POW TEMP[7].x, TEMP[1].xxxx, IMM[0].zzzz 86: DP3 TEMP[1].x, TEMP[4].xyzz, TEMP[2].xyzz 87: MAX TEMP[2].x, TEMP[1].xxxx, IMM[0].xxxx 88: ADD TEMP[1].x, IMM[0].wwww, TEMP[2].xxxx 89: RCP TEMP[2].x, TEMP[1].xxxx 90: MUL TEMP[1].x, TEMP[7].xxxx, TEMP[2].xxxx 91: MOV TEMP[6].x, TEMP[1].xxxx 92: ENDIF 93: MOV TEMP[1].w, IMM[2].yyyy 94: MUL TEMP[2].x, TEMP[3].xxxx, TEMP[6].xxxx 95: MUL TEMP[1].xyz, TEMP[2].xxxx, CONST[16].xyzx 96: ADD TEMP[2].xyz, IMM[2].wwwx, TEMP[1] 97: ADD TEMP[1].xyz, IN[1].xyzz, -CONST[15].xyzz 98: DP3 TEMP[3].x, TEMP[1].xyzz, TEMP[1].xyzz 99: RSQ TEMP[6].x, TEMP[3].xxxx 100: MUL TEMP[3].xyz, TEMP[1].xyzz, TEMP[6].xxxx 101: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[1].xyzz 102: RSQ TEMP[1].x, TEMP[6].xxxx 103: MUL TEMP[1].x, TEMP[1].xxxx, TEMP[6].xxxx 104: CMP TEMP[1].x, -TEMP[6].xxxx, TEMP[1].xxxx, IMM[0].xxxx 105: ADD TEMP[6].x, IMM[1].zzzz, TEMP[1].xxxx 106: RCP TEMP[1].x, TEMP[6].xxxx 107: MUL TEMP[6].x, IMM[1].zzzz, TEMP[1].xxxx 108: DP3 TEMP[1].x, TEMP[3].xyzz, CONST[14].xyzz 109: SLE TEMP[7].x, TEMP[1].xxxx, IMM[2].zzzz 110: IF TEMP[7].xxxx :112 111: MOV TEMP[7].x, IMM[0].xxxx 112: ELSE :123 113: ADD TEMP[8].x, TEMP[1].xxxx, IMM[3].zzzz 114: MUL TEMP[9].x, TEMP[8].xxxx, IMM[4].wwww 115: MOV_SAT TEMP[8].x, TEMP[9].xxxx 116: MUL TEMP[9].x, IMM[2].xxxx, TEMP[8].xxxx 117: ADD TEMP[10].x, IMM[5].zzzz, -TEMP[9].xxxx 118: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 119: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 120: MUL TEMP[8].x, TEMP[1].xxxx, TEMP[10].xxxx 121: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[8].xxxx 122: MOV TEMP[7].x, TEMP[1].xxxx 123: ENDIF 124: SLT TEMP[1].x, TEMP[7].xxxx, IMM[6].zzzz 125: IF TEMP[1].xxxx :127 126: MOV TEMP[1].x, IMM[0].xxxx 127: ELSE :129 128: MOV TEMP[1].x, TEMP[7].xxxx 129: ENDIF 130: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[3].xyzz 131: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[1].xxxx 132: MAX TEMP[1].x, TEMP[3].xxxx, IMM[0].xxxx 133: SLE TEMP[3].x, TEMP[6].xxxx, IMM[0].xxxx 134: IF TEMP[3].xxxx :136 135: MOV TEMP[3].x, IMM[0].xxxx 136: ELSE :148 137: MUL TEMP[6], CONST[9], IN[1].xxxx 138: MAD TEMP[7], CONST[10], IN[1].yyyy, TEMP[6] 139: MAD TEMP[6], CONST[11], IN[1].zzzz, TEMP[7] 140: ADD TEMP[7], TEMP[6], CONST[12] 141: MUL TEMP[6].x, IMM[7].zzzz, TEMP[7].wwww 142: ADD TEMP[8].x, TEMP[7].zzzz, -TEMP[6].xxxx 143: MOV TEMP[6], TEMP[7].xyyy 144: MOV TEMP[6].w, TEMP[7].wwww 145: MOV TEMP[6].z, TEMP[8].xxxx 146: TXP TEMP[7].x, TEMP[6], SAMP[1], SHADOW2D 147: MOV TEMP[3].x, TEMP[7].xxxx 148: ENDIF 149: MOV TEMP[6].w, IMM[0].xxxx 150: MUL TEMP[7].x, TEMP[1].xxxx, CONST[8].xxxx 151: ADD TEMP[1].x, IMM[2].yyyy, -TEMP[3].xxxx 152: MUL TEMP[3].x, TEMP[7].xxxx, TEMP[1].xxxx 153: MUL TEMP[6].xyz, TEMP[5].xyzx, TEMP[3].xxxx 154: ADD TEMP[1], TEMP[0], -TEMP[6] 155: ADD TEMP[0].xyz, IN[1].xyzz, -CONST[7].xyzz 156: DP3 TEMP[3].x, TEMP[0].xyzz, TEMP[0].xyzz 157: RSQ TEMP[6].x, TEMP[3].xxxx 158: MUL TEMP[3].xyz, TEMP[0].xyzz, TEMP[6].xxxx 159: DP3 TEMP[6].x, TEMP[0].xyzz, TEMP[0].xyzz 160: RSQ TEMP[0].x, TEMP[6].xxxx 161: MUL TEMP[0].x, TEMP[0].xxxx, TEMP[6].xxxx 162: CMP TEMP[0].x, -TEMP[6].xxxx, TEMP[0].xxxx, IMM[0].xxxx 163: ADD TEMP[6].x, IMM[1].zzzz, TEMP[0].xxxx 164: RCP TEMP[0].x, TEMP[6].xxxx 165: MUL TEMP[6].x, IMM[1].zzzz, TEMP[0].xxxx 166: DP3 TEMP[0].x, TEMP[3].xyzz, CONST[6].xyzz 167: SLE TEMP[7].x, TEMP[0].xxxx, IMM[2].zzzz 168: IF TEMP[7].xxxx :170 169: MOV TEMP[7].x, IMM[0].xxxx 170: ELSE :181 171: ADD TEMP[8].x, TEMP[0].xxxx, IMM[3].zzzz 172: MUL TEMP[9].x, TEMP[8].xxxx, IMM[4].wwww 173: MOV_SAT TEMP[8].x, TEMP[9].xxxx 174: MUL TEMP[9].x, IMM[2].xxxx, TEMP[8].xxxx 175: ADD TEMP[10].x, IMM[5].zzzz, -TEMP[9].xxxx 176: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 177: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 178: MUL TEMP[8].x, TEMP[0].xxxx, TEMP[10].xxxx 179: MUL TEMP[0].x, TEMP[6].xxxx, TEMP[8].xxxx 180: MOV TEMP[7].x, TEMP[0].xxxx 181: ENDIF 182: SLT TEMP[0].x, TEMP[7].xxxx, IMM[6].zzzz 183: IF TEMP[0].xxxx :185 184: MOV TEMP[0].x, IMM[0].xxxx 185: ELSE :187 186: MOV TEMP[0].x, TEMP[7].xxxx 187: ENDIF 188: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[3].xyzz 189: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[0].xxxx 190: MAX TEMP[0].x, TEMP[3].xxxx, IMM[0].xxxx 191: SLE TEMP[3].x, TEMP[6].xxxx, IMM[0].xxxx 192: IF TEMP[3].xxxx :194 193: MOV TEMP[3].x, IMM[0].xxxx 194: ELSE :206 195: MUL TEMP[4], CONST[1], IN[1].xxxx 196: MAD TEMP[6], CONST[2], IN[1].yyyy, TEMP[4] 197: MAD TEMP[4], CONST[3], IN[1].zzzz, TEMP[6] 198: ADD TEMP[6], TEMP[4], CONST[4] 199: MUL TEMP[4].x, IMM[7].zzzz, TEMP[6].wwww 200: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[4].xxxx 201: MOV TEMP[4], TEMP[6].xyyy 202: MOV TEMP[4].w, TEMP[6].wwww 203: MOV TEMP[4].z, TEMP[7].xxxx 204: TXP TEMP[6].x, TEMP[4], SAMP[0], SHADOW2D 205: MOV TEMP[3].x, TEMP[6].xxxx 206: ENDIF 207: MOV TEMP[4].w, IMM[0].xxxx 208: MUL TEMP[6].x, TEMP[0].xxxx, CONST[0].xxxx 209: ADD TEMP[0].x, IMM[2].yyyy, -TEMP[3].xxxx 210: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[0].xxxx 211: MUL TEMP[4].xyz, TEMP[5].xyzx, TEMP[3].xxxx 212: ADD TEMP[0], TEMP[1], -TEMP[4] 213: ADD TEMP[1].xyz, TEMP[0], TEMP[2] 214: MOV TEMP[0].xyz, TEMP[1].xyzx 215: MOV TEMP[0].w, IMM[2].yyyy 216: SEQ TEMP[1].x, CONST[29].wwww, IMM[0].xxxx 217: IF TEMP[1].xxxx :223 218: DP3 TEMP[1].x, IN[1].xyzz, IN[1].xyzz 219: RSQ TEMP[2].x, TEMP[1].xxxx 220: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx 221: CMP TEMP[2].x, -TEMP[1].xxxx, TEMP[2].xxxx, IMM[0].xxxx 222: MOV TEMP[1].x, TEMP[2].xxxx 223: ELSE :225 224: MOV TEMP[1].x, -IN[1].zzzz 225: ENDIF 226: ADD TEMP[2].x, TEMP[1].xxxx, IMM[8].xxxx 227: MUL TEMP[1].x, TEMP[2].xxxx, IMM[8].yyyy 228: MOV_SAT TEMP[2].x, TEMP[1].xxxx 229: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx 230: ADD TEMP[2].x, IMM[2].yyyy, -TEMP[1].xxxx 231: ADD TEMP[1].x, IMM[2].yyyy, -TEMP[2].xxxx 232: MOV_SAT TEMP[2].x, TEMP[1].xxxx 233: ADD TEMP[1].x, IMM[2].yyyy, -TEMP[2].xxxx 234: MUL TEMP[3], TEMP[0], TEMP[1].xxxx 235: MAD TEMP[0], IMM[9], TEMP[2].xxxx, TEMP[3] 236: MOV TEMP[1].w, IMM[2].yyyy 237: MOV TEMP[1].xyz, TEMP[0].xyzx 238: MOV OUT[0], TEMP[1] 239: END # Vertex Program/Shader 108 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[20].xy, INPUT[19].xyxx; 13: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[18].xxxx; 14: MAD TEMP[1].xyz, STATE[9].xyzz, INPUT[18].yyyy, TEMP[0].xyzz; 15: MAD OUTPUT[19].xyz, STATE[10].xyzx, INPUT[18].zzzx, TEMP[1].xyzx; 16: MOV OUTPUT[18].xy, INPUT[17].xyxx; 17: END InputsRead: 0xe0005 (0b1110,00000000,00000101) OutputsWritten: 0x1f0001 (0b11111,00000000,00000001) NumInstructions=18 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {-0.0291, 0.22, 0.975, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {0.871, 0.484, -0.083, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-0.49, 0.847, -0.205, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {3.03, -0.473, -9.36, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {-0.0291, 0.22, 0.975, 9.32} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {0.871, 0.484, -0.083, -3.19} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-0.49, 0.847, -0.205, -0.0397} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL IN[4] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL OUT[4], GENERIC[13] DCL OUT[5], GENERIC[14] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[5].xy, IN[4].xyxx 13: MUL TEMP[0].xyz, CONST[8].xyzz, IN[3].xxxx 14: MAD TEMP[1].xyz, CONST[9].xyzz, IN[3].yyyy, TEMP[0].xyzz 15: MAD OUT[4].xyz, CONST[10].xyzx, IN[3].zzzx, TEMP[1].xyzx 16: MOV OUT[3].xy, IN[2].xyxx 17: END # Fragment Program/Shader 60 0: MAD TEMP[0].xy, INPUT[16].xyyy, CONST[6].xxxx, CONST[7]; 1: TEX TEMP[1], TEMP[0].xyyy, texture[0], 2D; 2: TEX TEMP[0], INPUT[15].xyyy, texture[0], 2D; 3: MAD TEMP[2].xyz, CONST[6].yyyy, TEMP[1].xyzz, CONST[8]; 4: ADD TEMP[3].xyz, TEMP[0].xyzz, TEMP[2].xyzz; 5: MOV_SAT TEMP[2].x, TEMP[1].wwww; 6: ADD TEMP[1].x, TEMP[0].wwww, TEMP[2].xxxx; 7: MOV_SAT TEMP[0].x, TEMP[1].xxxx; 8: MUL TEMP[1].xyz, TEMP[3].xyzz, UNIFORM[0].xyzz; 9: MOV TEMP[2].xyz, TEMP[1].xyzx; 10: MOV TEMP[2].w, TEMP[0].xxxx; 11: SEQ TEMP[1].x, STATE[5].wwww, CONST[6].wwww; 12: IF TEMP[1].xxxx; # (if false, goto 18); 13: DP3 TEMP[1].x, INPUT[14].xyzz, INPUT[14].xyzz; 14: RSQ TEMP[3].x, TEMP[1].xxxx; 15: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[1].xxxx; 16: CMP TEMP[3].x, TEMP[1].-x-x-x-x, TEMP[3].xxxx, CONST[6].wwww; 17: MOV TEMP[1].x, TEMP[3].xxxx; 18: ELSE; # (goto 20) 19: MOV TEMP[1].x, INPUT[14].-z-z-z-z; 20: ENDIF; 21: ADD TEMP[3].x, TEMP[1].xxxx, CONST[7].zzzz; 22: MUL TEMP[1].x, TEMP[3].xxxx, CONST[7].wwww; 23: MOV_SAT TEMP[3].x, TEMP[1].xxxx; 24: MUL TEMP[1].x, TEMP[3].xxxx, TEMP[3].xxxx; 25: ADD TEMP[3].x, CONST[6].zzzz, TEMP[1].-x-x-x-x; 26: ADD TEMP[1].x, CONST[6].zzzz, TEMP[3].-x-x-x-x; 27: MOV_SAT TEMP[3].x, TEMP[1].xxxx; 28: ADD TEMP[1].x, CONST[6].zzzz, TEMP[3].-x-x-x-x; 29: MUL TEMP[4].xyz, TEMP[2], TEMP[1].xxxx; 30: MAD TEMP[1].xyz, CONST[9].xyzx, TEMP[3].xxxx, TEMP[4].xyzx; 31: MUL TEMP[1].w, TEMP[0].xxxx, UNIFORM[0].xxxw; 32: MOV OUTPUT[2], TEMP[1]; 33: END InputsRead: 0x1c000 (0b1,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=34 NumTemporaries=5 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1 (0b1) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=4 UNIFORM unfobcolor = {1, 1, 1, 0} param[1] sz=4 SAMPLER samp0 = {0, 0, 0, 0} param[2] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[3] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[4] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[5] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[6] sz=4 CONST (null) = {0.5, 0.6, 1, 0} param[7] sz=4 CONST (null) = {0.5, 0.5, -6, 0.0385} param[8] sz=3 CONST (null) = {0.32, 0.32, 0.32, 0} param[9] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL CONST[0] DCL CONST[2..5] DCL TEMP[0..4] IMM FLT32 { 0.5000, 0.6000, 1.0000, 0.0000} IMM FLT32 { 0.5000, -6.0000, 0.0385, 0.9063} IMM FLT32 { 0.3200, 0.0000, 0.9063, 0.8827} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: MAD TEMP[0].xy, IN[2].xyyy, IMM[0].xxxx, IMM[1].xxyz 1: TEX TEMP[1], TEMP[0].xyyy, SAMP[0], 2D 2: TEX TEMP[0], IN[1].xyyy, SAMP[0], 2D 3: MAD TEMP[2].xyz, IMM[0].yyyy, TEMP[1].xyzz, IMM[2].xxxy 4: ADD TEMP[3].xyz, TEMP[0].xyzz, TEMP[2].xyzz 5: MOV_SAT TEMP[2].x, TEMP[1].wwww 6: ADD TEMP[1].x, TEMP[0].wwww, TEMP[2].xxxx 7: MOV_SAT TEMP[0].x, TEMP[1].xxxx 8: MUL TEMP[1].xyz, TEMP[3].xyzz, CONST[0].xyzz 9: MOV TEMP[2].xyz, TEMP[1].xyzx 10: MOV TEMP[2].w, TEMP[0].xxxx 11: SEQ TEMP[1].x, CONST[5].wwww, IMM[0].wwww 12: IF TEMP[1].xxxx :18 13: DP3 TEMP[1].x, IN[0].xyzz, IN[0].xyzz 14: RSQ TEMP[3].x, TEMP[1].xxxx 15: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[1].xxxx 16: CMP TEMP[3].x, -TEMP[1].xxxx, TEMP[3].xxxx, IMM[0].wwww 17: MOV TEMP[1].x, TEMP[3].xxxx 18: ELSE :20 19: MOV TEMP[1].x, -IN[0].zzzz 20: ENDIF 21: ADD TEMP[3].x, TEMP[1].xxxx, IMM[1].yyyy 22: MUL TEMP[1].x, TEMP[3].xxxx, IMM[1].zzzz 23: MOV_SAT TEMP[3].x, TEMP[1].xxxx 24: MUL TEMP[1].x, TEMP[3].xxxx, TEMP[3].xxxx 25: ADD TEMP[3].x, IMM[0].zzzz, -TEMP[1].xxxx 26: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[3].xxxx 27: MOV_SAT TEMP[3].x, TEMP[1].xxxx 28: ADD TEMP[1].x, IMM[0].zzzz, -TEMP[3].xxxx 29: MUL TEMP[4].xyz, TEMP[2], TEMP[1].xxxx 30: MAD TEMP[1].xyz, IMM[3].xyzx, TEMP[3].xxxx, TEMP[4].xyzx 31: MUL TEMP[1].w, TEMP[0].xxxx, CONST[0].xxxw 32: MOV OUT[0], TEMP[1] 33: END # Vertex Program/Shader 60 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[16].xyz, TEMP[1].xyzx; 5: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 6: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 7: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 8: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 9: MOV OUTPUT[18].xyz, INPUT[18].xyzx; 10: MOV OUTPUT[17].xy, INPUT[17].xyxx; 11: END InputsRead: 0x60001 (0b110,00000000,00000001) OutputsWritten: 0x70001 (0b111,00000000,00000001) NumInstructions=12 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {-0.317, -0.424, 0.676, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {-0.777, 2.76e-08, -0.365, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-0.18, 0.747, 0.384, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {3.2, 4.27, -6.81, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL CONST[0..7] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[1].xyz, TEMP[1].xyzx 5: MUL TEMP[0], CONST[4], TEMP[1].xxxx 6: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 7: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 8: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 9: MOV OUT[3].xyz, IN[2].xyzx 10: MOV OUT[2].xy, IN[1].xyxx 11: END # Fragment Program/Shader 69 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: TEX TEMP[0], INPUT[16].xyyy, texture[2], 2D; 5: MUL TEMP[2].x, TEMP[0].wwww, CONST[26].xxxx; 6: MOV_SAT TEMP[3].x, TEMP[2].xxxx; 7: MOV TEMP[2].w, CONST[26].yyyy; 8: MOV TEMP[2].xyz, TEMP[0].xyzx; 9: MOV TEMP[4].w, CONST[26].yyyy; 10: MOV TEMP[4].xyz, TEMP[0].xyzx; 11: DP3 TEMP[5].x, TEMP[1].xyzz, UNIFORM[18].xyzz; 12: MAX TEMP[6].x, TEMP[5].xxxx, CONST[26].zzzz; 13: MUL TEMP[5], UNIFORM[17], TEMP[6].xxxx; 14: DP3 TEMP[6].x, TEMP[1].xyzz, UNIFORM[20].xyzz; 15: MAD TEMP[7].x, CONST[26].wwww, TEMP[6].xxxx, CONST[26].wwww; 16: MAX TEMP[6].x, TEMP[7].xxxx, CONST[26].zzzz; 17: MUL TEMP[7], UNIFORM[19], TEMP[6].xxxx; 18: MAD TEMP[6], TEMP[7], TEMP[2], CONST[26].zzzy; 19: MAD TEMP[2], TEMP[5], TEMP[4], TEMP[6]; 20: ADD TEMP[4].xyz, INPUT[15].xyzz, UNIFORM[16].-x-y-z-z; 21: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz; 22: RSQ TEMP[6].x, TEMP[5].xxxx; 23: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[6].xxxx; 24: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz; 25: RSQ TEMP[4].x, TEMP[6].xxxx; 26: MUL TEMP[4].x, TEMP[4].xxxx, TEMP[6].xxxx; 27: CMP TEMP[4].x, TEMP[6].-x-x-x-x, TEMP[4].xxxx, CONST[26].zzzz; 28: ADD TEMP[6].x, CONST[27].xxxx, TEMP[4].xxxx; 29: RCP TEMP[4].x, TEMP[6].xxxx; 30: MUL TEMP[6].x, CONST[27].xxxx, TEMP[4].xxxx; 31: DP3 TEMP[4].x, TEMP[5].xyzz, UNIFORM[15].xyzz; 32: SLE TEMP[7].x, TEMP[4].xxxx, CONST[27].yyyy; 33: IF TEMP[7].xxxx; # (if false, goto 35); 34: MOV TEMP[7].x, CONST[26].zzzz; 35: ELSE; # (goto 46) 36: ADD TEMP[8].x, TEMP[4].xxxx, CONST[27].zzzz; 37: MUL TEMP[9].x, TEMP[8].xxxx, CONST[27].wwww; 38: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 39: MUL TEMP[9].x, CONST[28].yyyy, TEMP[8].xxxx; 40: ADD TEMP[10].x, CONST[28].xxxx, TEMP[9].-x-x-x-x; 41: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 42: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 43: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[10].xxxx; 44: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[8].xxxx; 45: MOV TEMP[7].x, TEMP[4].xxxx; 46: ENDIF; 47: SLT TEMP[4].x, TEMP[7].xxxx, CONST[28].zzzz; 48: IF TEMP[4].xxxx; # (if false, goto 50); 49: MOV TEMP[4].x, CONST[26].zzzz; 50: ELSE; # (goto 52) 51: MOV TEMP[4].x, TEMP[7].xxxx; 52: ENDIF; 53: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[5].xyzz; 54: MUL TEMP[5].x, TEMP[6].xxxx, TEMP[4].xxxx; 55: MAX TEMP[4].x, TEMP[5].xxxx, CONST[26].zzzz; 56: SLE TEMP[5].x, TEMP[6].xxxx, CONST[26].zzzz; 57: IF TEMP[5].xxxx; # (if false, goto 59); 58: MOV TEMP[5].x, CONST[26].zzzz; 59: ELSE; # (goto 71) 60: MUL TEMP[6], UNIFORM[10], INPUT[15].xxxx; 61: MAD TEMP[7], UNIFORM[11], INPUT[15].yyyy, TEMP[6]; 62: MAD TEMP[6], UNIFORM[12], INPUT[15].zzzz, TEMP[7]; 63: ADD TEMP[7], TEMP[6], UNIFORM[13]; 64: MUL TEMP[6].x, CONST[28].wwww, TEMP[7].wwww; 65: ADD TEMP[8].x, TEMP[7].zzzz, TEMP[6].-x-x-x-x; 66: MOV TEMP[6], TEMP[7].xyyy; 67: MOV TEMP[6].w, TEMP[7].wwww; 68: MOV TEMP[6].z, TEMP[8].xxxx; 69: TXP TEMP[7].x, TEMP[6], texture[1], 2D SHADOW; 70: MOV TEMP[5].x, TEMP[7].xxxx; 71: ENDIF; 72: MOV TEMP[6].w, CONST[26].zzzz; 73: MUL TEMP[7].x, TEMP[4].xxxx, UNIFORM[9].xxxx; 74: ADD TEMP[4].x, CONST[26].yyyy, TEMP[5].-x-x-x-x; 75: MUL TEMP[5].x, TEMP[7].xxxx, TEMP[4].xxxx; 76: MUL TEMP[6].xyz, TEMP[0].xyzx, TEMP[5].xxxx; 77: ADD TEMP[4], TEMP[2], TEMP[6].-x-y-z-w; 78: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[8].-x-y-z-z; 79: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz; 80: RSQ TEMP[6].x, TEMP[5].xxxx; 81: MUL TEMP[5].xyz, TEMP[2].xyzz, TEMP[6].xxxx; 82: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[2].xyzz; 83: RSQ TEMP[2].x, TEMP[6].xxxx; 84: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[6].xxxx; 85: CMP TEMP[2].x, TEMP[6].-x-x-x-x, TEMP[2].xxxx, CONST[26].zzzz; 86: ADD TEMP[6].x, CONST[27].xxxx, TEMP[2].xxxx; 87: RCP TEMP[2].x, TEMP[6].xxxx; 88: MUL TEMP[6].x, CONST[27].xxxx, TEMP[2].xxxx; 89: DP3 TEMP[2].x, TEMP[5].xyzz, UNIFORM[7].xyzz; 90: SLE TEMP[7].x, TEMP[2].xxxx, CONST[27].yyyy; 91: IF TEMP[7].xxxx; # (if false, goto 93); 92: MOV TEMP[7].x, CONST[26].zzzz; 93: ELSE; # (goto 104) 94: ADD TEMP[8].x, TEMP[2].xxxx, CONST[27].zzzz; 95: MUL TEMP[9].x, TEMP[8].xxxx, CONST[27].wwww; 96: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 97: MUL TEMP[9].x, CONST[28].yyyy, TEMP[8].xxxx; 98: ADD TEMP[10].x, CONST[28].xxxx, TEMP[9].-x-x-x-x; 99: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 100: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 101: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx; 102: MUL TEMP[2].x, TEMP[6].xxxx, TEMP[8].xxxx; 103: MOV TEMP[7].x, TEMP[2].xxxx; 104: ENDIF; 105: SLT TEMP[2].x, TEMP[7].xxxx, CONST[28].zzzz; 106: IF TEMP[2].xxxx; # (if false, goto 108); 107: MOV TEMP[2].x, CONST[26].zzzz; 108: ELSE; # (goto 110) 109: MOV TEMP[2].x, TEMP[7].xxxx; 110: ENDIF; 111: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[5].xyzz; 112: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[2].xxxx; 113: MAX TEMP[2].x, TEMP[1].xxxx, CONST[26].zzzz; 114: SLE TEMP[1].x, TEMP[6].xxxx, CONST[26].zzzz; 115: IF TEMP[1].xxxx; # (if false, goto 117); 116: MOV TEMP[1].x, CONST[26].zzzz; 117: ELSE; # (goto 129) 118: MUL TEMP[5], UNIFORM[2], INPUT[15].xxxx; 119: MAD TEMP[6], UNIFORM[3], INPUT[15].yyyy, TEMP[5]; 120: MAD TEMP[5], UNIFORM[4], INPUT[15].zzzz, TEMP[6]; 121: ADD TEMP[6], TEMP[5], UNIFORM[5]; 122: MUL TEMP[5].x, CONST[28].wwww, TEMP[6].wwww; 123: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[5].-x-x-x-x; 124: MOV TEMP[5], TEMP[6].xyyy; 125: MOV TEMP[5].w, TEMP[6].wwww; 126: MOV TEMP[5].z, TEMP[7].xxxx; 127: TXP TEMP[6].x, TEMP[5], texture[0], 2D SHADOW; 128: MOV TEMP[1].x, TEMP[6].xxxx; 129: ENDIF; 130: MOV TEMP[5].w, CONST[26].zzzz; 131: MUL TEMP[6].x, TEMP[2].xxxx, UNIFORM[1].xxxx; 132: ADD TEMP[2].x, CONST[26].yyyy, TEMP[1].-x-x-x-x; 133: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[2].xxxx; 134: MUL TEMP[2].xyz, TEMP[0].xyzz, TEMP[1].xxxx; 135: MOV TEMP[5].xyz, TEMP[2].xyzx; 136: ADD TEMP[0], TEMP[4], TEMP[5].-x-y-z-w; 137: MUL TEMP[1].xyz, TEMP[0].xyzz, UNIFORM[0].xyzz; 138: MOV TEMP[0].xyz, TEMP[1].xyzx; 139: MOV TEMP[0].w, TEMP[3].xxxx; 140: SEQ TEMP[1].x, STATE[25].wwww, CONST[26].zzzz; 141: IF TEMP[1].xxxx; # (if false, goto 147); 142: DP3 TEMP[1].x, INPUT[15].xyzz, INPUT[15].xyzz; 143: RSQ TEMP[2].x, TEMP[1].xxxx; 144: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx; 145: CMP TEMP[2].x, TEMP[1].-x-x-x-x, TEMP[2].xxxx, CONST[26].zzzz; 146: MOV TEMP[1].x, TEMP[2].xxxx; 147: ELSE; # (goto 149) 148: MOV TEMP[1].x, INPUT[15].-z-z-z-z; 149: ENDIF; 150: ADD TEMP[2].x, TEMP[1].xxxx, CONST[29].xxxx; 151: MUL TEMP[1].x, TEMP[2].xxxx, CONST[29].yyyy; 152: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 153: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx; 154: ADD TEMP[2].x, CONST[26].yyyy, TEMP[1].-x-x-x-x; 155: ADD TEMP[1].x, CONST[26].yyyy, TEMP[2].-x-x-x-x; 156: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 157: ADD TEMP[1].x, CONST[26].yyyy, TEMP[2].-x-x-x-x; 158: MUL TEMP[4], TEMP[0], TEMP[1].xxxx; 159: MAD TEMP[0].xyz, CONST[30].xyzx, TEMP[2].xxxx, TEMP[4].xyzx; 160: MUL TEMP[0].w, TEMP[3].xxxx, UNIFORM[0].xxxw; 161: MOV OUTPUT[2], TEMP[0]; 162: END InputsRead: 0x1c000 (0b1,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=163 NumTemporaries=11 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x7 (0b111) Samplers=[ 2 1 0 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=4 UNIFORM unfobcolor = {1, 1, 1, 1} param[1] sz=1 UNIFORM unf138 = {1, 0, 0, 0} param[2] sz=16 UNIFORM unf132 = {5.7, -0.0767, 0.249, 0.191} param[3] sz=12 UNIFORM unf132 = {0.565, -1.44, -1.26, -0.969} param[4] sz=8 UNIFORM unf132 = {-0.271, -5.55, 0.208, 0.159} param[5] sz=4 UNIFORM unf132 = {17.1, -8.62, -8.83, 0.23} param[6] sz=4 SAMPLER samp2 = {0, 0, 0, 0} param[7] sz=3 UNIFORM unf113 = {0.191, -0.969, 0.159, 0} param[8] sz=3 UNIFORM unf106 = {-3.01, -0.58, -1.36, 0} param[9] sz=1 UNIFORM unf99 = {1, 0, 0, 0} param[10] sz=16 UNIFORM unf93 = {5.7, -0.0767, 0.249, 0.191} param[11] sz=12 UNIFORM unf93 = {0.565, -1.44, -1.26, -0.969} param[12] sz=8 UNIFORM unf93 = {-0.271, -5.55, 0.208, 0.159} param[13] sz=4 UNIFORM unf93 = {2.33, 3.5, 2.15, 8.65} param[14] sz=4 SAMPLER samp1 = {1, 0, 0, 0} param[15] sz=3 UNIFORM unf74 = {0.191, -0.969, 0.159, 0} param[16] sz=3 UNIFORM unf67 = {-1.32, 8.42, -1.54, 0} param[17] sz=4 UNIFORM unf60 = {2.2, 1.97, 1.79, 2.2} param[18] sz=3 UNIFORM unf48 = {0.233, -0.601, -0.764, 0} param[19] sz=4 UNIFORM unf42 = {0.551, 0.557, 0.68, 0.68} param[20] sz=3 UNIFORM unf28 = {-0.243, -0.303, 0.922, 0} param[21] sz=4 SAMPLER samp0 = {2, 0, 0, 0} param[22] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[23] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[24] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[25] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[26] sz=4 CONST (null) = {0.8, 1, 0, 0.5} param[27] sz=4 CONST (null) = {20, 0.996, -0.996, 1.75e+03} param[28] sz=4 CONST (null) = {3, 2, 0.001, 0.005} param[29] sz=2 CONST (null) = {-6, 0.0385, 0, 0} param[30] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL CONST[0..5] DCL CONST[7..13] DCL CONST[15..20] DCL CONST[22..25] DCL TEMP[0..10] IMM FLT32 { 0.8000, 1.0000, 0.0000, 0.5000} IMM FLT32 { 20.0000, 0.9962, -0.9962, 1751.3136} IMM FLT32 { 3.0000, 2.0000, 0.0010, 0.0050} IMM FLT32 { -6.0000, 0.0385, 0.0000, 0.9063} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: TEX TEMP[0], IN[2].xyyy, SAMP[2], 2D 5: MUL TEMP[2].x, TEMP[0].wwww, IMM[0].xxxx 6: MOV_SAT TEMP[3].x, TEMP[2].xxxx 7: MOV TEMP[2].w, IMM[0].yyyy 8: MOV TEMP[2].xyz, TEMP[0].xyzx 9: MOV TEMP[4].w, IMM[0].yyyy 10: MOV TEMP[4].xyz, TEMP[0].xyzx 11: DP3 TEMP[5].x, TEMP[1].xyzz, CONST[18].xyzz 12: MAX TEMP[6].x, TEMP[5].xxxx, IMM[0].zzzz 13: MUL TEMP[5], CONST[17], TEMP[6].xxxx 14: DP3 TEMP[6].x, TEMP[1].xyzz, CONST[20].xyzz 15: MAD TEMP[7].x, IMM[0].wwww, TEMP[6].xxxx, IMM[0].wwww 16: MAX TEMP[6].x, TEMP[7].xxxx, IMM[0].zzzz 17: MUL TEMP[7], CONST[19], TEMP[6].xxxx 18: MAD TEMP[6], TEMP[7], TEMP[2], IMM[0].zzzy 19: MAD TEMP[2], TEMP[5], TEMP[4], TEMP[6] 20: ADD TEMP[4].xyz, IN[1].xyzz, -CONST[16].xyzz 21: DP3 TEMP[5].x, TEMP[4].xyzz, TEMP[4].xyzz 22: RSQ TEMP[6].x, TEMP[5].xxxx 23: MUL TEMP[5].xyz, TEMP[4].xyzz, TEMP[6].xxxx 24: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz 25: RSQ TEMP[4].x, TEMP[6].xxxx 26: MUL TEMP[4].x, TEMP[4].xxxx, TEMP[6].xxxx 27: CMP TEMP[4].x, -TEMP[6].xxxx, TEMP[4].xxxx, IMM[0].zzzz 28: ADD TEMP[6].x, IMM[1].xxxx, TEMP[4].xxxx 29: RCP TEMP[4].x, TEMP[6].xxxx 30: MUL TEMP[6].x, IMM[1].xxxx, TEMP[4].xxxx 31: DP3 TEMP[4].x, TEMP[5].xyzz, CONST[15].xyzz 32: SLE TEMP[7].x, TEMP[4].xxxx, IMM[1].yyyy 33: IF TEMP[7].xxxx :35 34: MOV TEMP[7].x, IMM[0].zzzz 35: ELSE :46 36: ADD TEMP[8].x, TEMP[4].xxxx, IMM[1].zzzz 37: MUL TEMP[9].x, TEMP[8].xxxx, IMM[1].wwww 38: MOV_SAT TEMP[8].x, TEMP[9].xxxx 39: MUL TEMP[9].x, IMM[2].yyyy, TEMP[8].xxxx 40: ADD TEMP[10].x, IMM[2].xxxx, -TEMP[9].xxxx 41: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 42: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 43: MUL TEMP[8].x, TEMP[4].xxxx, TEMP[10].xxxx 44: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[8].xxxx 45: MOV TEMP[7].x, TEMP[4].xxxx 46: ENDIF 47: SLT TEMP[4].x, TEMP[7].xxxx, IMM[2].zzzz 48: IF TEMP[4].xxxx :50 49: MOV TEMP[4].x, IMM[0].zzzz 50: ELSE :52 51: MOV TEMP[4].x, TEMP[7].xxxx 52: ENDIF 53: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[5].xyzz 54: MUL TEMP[5].x, TEMP[6].xxxx, TEMP[4].xxxx 55: MAX TEMP[4].x, TEMP[5].xxxx, IMM[0].zzzz 56: SLE TEMP[5].x, TEMP[6].xxxx, IMM[0].zzzz 57: IF TEMP[5].xxxx :59 58: MOV TEMP[5].x, IMM[0].zzzz 59: ELSE :71 60: MUL TEMP[6], CONST[10], IN[1].xxxx 61: MAD TEMP[7], CONST[11], IN[1].yyyy, TEMP[6] 62: MAD TEMP[6], CONST[12], IN[1].zzzz, TEMP[7] 63: ADD TEMP[7], TEMP[6], CONST[13] 64: MUL TEMP[6].x, IMM[2].wwww, TEMP[7].wwww 65: ADD TEMP[8].x, TEMP[7].zzzz, -TEMP[6].xxxx 66: MOV TEMP[6], TEMP[7].xyyy 67: MOV TEMP[6].w, TEMP[7].wwww 68: MOV TEMP[6].z, TEMP[8].xxxx 69: TXP TEMP[7].x, TEMP[6], SAMP[1], SHADOW2D 70: MOV TEMP[5].x, TEMP[7].xxxx 71: ENDIF 72: MOV TEMP[6].w, IMM[0].zzzz 73: MUL TEMP[7].x, TEMP[4].xxxx, CONST[9].xxxx 74: ADD TEMP[4].x, IMM[0].yyyy, -TEMP[5].xxxx 75: MUL TEMP[5].x, TEMP[7].xxxx, TEMP[4].xxxx 76: MUL TEMP[6].xyz, TEMP[0].xyzx, TEMP[5].xxxx 77: ADD TEMP[4], TEMP[2], -TEMP[6] 78: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[8].xyzz 79: DP3 TEMP[5].x, TEMP[2].xyzz, TEMP[2].xyzz 80: RSQ TEMP[6].x, TEMP[5].xxxx 81: MUL TEMP[5].xyz, TEMP[2].xyzz, TEMP[6].xxxx 82: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[2].xyzz 83: RSQ TEMP[2].x, TEMP[6].xxxx 84: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[6].xxxx 85: CMP TEMP[2].x, -TEMP[6].xxxx, TEMP[2].xxxx, IMM[0].zzzz 86: ADD TEMP[6].x, IMM[1].xxxx, TEMP[2].xxxx 87: RCP TEMP[2].x, TEMP[6].xxxx 88: MUL TEMP[6].x, IMM[1].xxxx, TEMP[2].xxxx 89: DP3 TEMP[2].x, TEMP[5].xyzz, CONST[7].xyzz 90: SLE TEMP[7].x, TEMP[2].xxxx, IMM[1].yyyy 91: IF TEMP[7].xxxx :93 92: MOV TEMP[7].x, IMM[0].zzzz 93: ELSE :104 94: ADD TEMP[8].x, TEMP[2].xxxx, IMM[1].zzzz 95: MUL TEMP[9].x, TEMP[8].xxxx, IMM[1].wwww 96: MOV_SAT TEMP[8].x, TEMP[9].xxxx 97: MUL TEMP[9].x, IMM[2].yyyy, TEMP[8].xxxx 98: ADD TEMP[10].x, IMM[2].xxxx, -TEMP[9].xxxx 99: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 100: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 101: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx 102: MUL TEMP[2].x, TEMP[6].xxxx, TEMP[8].xxxx 103: MOV TEMP[7].x, TEMP[2].xxxx 104: ENDIF 105: SLT TEMP[2].x, TEMP[7].xxxx, IMM[2].zzzz 106: IF TEMP[2].xxxx :108 107: MOV TEMP[2].x, IMM[0].zzzz 108: ELSE :110 109: MOV TEMP[2].x, TEMP[7].xxxx 110: ENDIF 111: DP3 TEMP[6].x, TEMP[1].xyzz, TEMP[5].xyzz 112: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[2].xxxx 113: MAX TEMP[2].x, TEMP[1].xxxx, IMM[0].zzzz 114: SLE TEMP[1].x, TEMP[6].xxxx, IMM[0].zzzz 115: IF TEMP[1].xxxx :117 116: MOV TEMP[1].x, IMM[0].zzzz 117: ELSE :129 118: MUL TEMP[5], CONST[2], IN[1].xxxx 119: MAD TEMP[6], CONST[3], IN[1].yyyy, TEMP[5] 120: MAD TEMP[5], CONST[4], IN[1].zzzz, TEMP[6] 121: ADD TEMP[6], TEMP[5], CONST[5] 122: MUL TEMP[5].x, IMM[2].wwww, TEMP[6].wwww 123: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[5].xxxx 124: MOV TEMP[5], TEMP[6].xyyy 125: MOV TEMP[5].w, TEMP[6].wwww 126: MOV TEMP[5].z, TEMP[7].xxxx 127: TXP TEMP[6].x, TEMP[5], SAMP[0], SHADOW2D 128: MOV TEMP[1].x, TEMP[6].xxxx 129: ENDIF 130: MOV TEMP[5].w, IMM[0].zzzz 131: MUL TEMP[6].x, TEMP[2].xxxx, CONST[1].xxxx 132: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[1].xxxx 133: MUL TEMP[1].x, TEMP[6].xxxx, TEMP[2].xxxx 134: MUL TEMP[2].xyz, TEMP[0].xyzz, TEMP[1].xxxx 135: MOV TEMP[5].xyz, TEMP[2].xyzx 136: ADD TEMP[0], TEMP[4], -TEMP[5] 137: MUL TEMP[1].xyz, TEMP[0].xyzz, CONST[0].xyzz 138: MOV TEMP[0].xyz, TEMP[1].xyzx 139: MOV TEMP[0].w, TEMP[3].xxxx 140: SEQ TEMP[1].x, CONST[25].wwww, IMM[0].zzzz 141: IF TEMP[1].xxxx :147 142: DP3 TEMP[1].x, IN[1].xyzz, IN[1].xyzz 143: RSQ TEMP[2].x, TEMP[1].xxxx 144: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx 145: CMP TEMP[2].x, -TEMP[1].xxxx, TEMP[2].xxxx, IMM[0].zzzz 146: MOV TEMP[1].x, TEMP[2].xxxx 147: ELSE :149 148: MOV TEMP[1].x, -IN[1].zzzz 149: ENDIF 150: ADD TEMP[2].x, TEMP[1].xxxx, IMM[3].xxxx 151: MUL TEMP[1].x, TEMP[2].xxxx, IMM[3].yyyy 152: MOV_SAT TEMP[2].x, TEMP[1].xxxx 153: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx 154: ADD TEMP[2].x, IMM[0].yyyy, -TEMP[1].xxxx 155: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[2].xxxx 156: MOV_SAT TEMP[2].x, TEMP[1].xxxx 157: ADD TEMP[1].x, IMM[0].yyyy, -TEMP[2].xxxx 158: MUL TEMP[4], TEMP[0], TEMP[1].xxxx 159: MAD TEMP[0].xyz, IMM[4].xyzx, TEMP[2].xxxx, TEMP[4].xyzx 160: MUL TEMP[0].w, TEMP[3].xxxx, CONST[0].xxxw 161: MOV OUT[0], TEMP[0] 162: END # Vertex Program/Shader 69 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[18].xy, INPUT[17].xyxx; 13: END InputsRead: 0x20005 (0b10,00000000,00000101) OutputsWritten: 0x70001 (0b111,00000000,00000001) NumInstructions=14 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {-0.0188, -7.55e-08, 1, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {1, -1.42e-09, 0.0188, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-2.22e-16, 1, 7.55e-08, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {0.489, -0.873, 0.00932, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {-0.0188, -7.55e-08, 1, -0.000141} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {1, -1.42e-09, 0.0188, -0.49} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-2.22e-16, 1, 7.55e-08, 0.873} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[3].xy, IN[2].xyxx 13: END # Fragment Program/Shader 24 0: DP3 TEMP[0].x, INPUT[14].xyzz, INPUT[14].xyzz; 1: RSQ TEMP[1].x, TEMP[0].xxxx; 2: MUL TEMP[0].xyz, INPUT[14].xyzz, TEMP[1].xxxx; 3: MOV TEMP[1].xyz, TEMP[0].-x-y-z-x; 4: SEQ TEMP[0].x, STATE[29].wwww, CONST[30].xxxx; 5: IF TEMP[0].xxxx; # (if false, goto 10); 6: DP3 TEMP[0].x, INPUT[15].xyzz, INPUT[15].xyzz; 7: RSQ TEMP[2].x, TEMP[0].xxxx; 8: MUL TEMP[0].xyz, INPUT[15].xyzz, TEMP[2].xxxx; 9: MOV TEMP[2].xyz, TEMP[0].xyzx; 10: ELSE; # (goto 12) 11: MOV TEMP[2].xyz, CONST[31].xyzx; 12: ENDIF; 13: TEX TEMP[0], INPUT[17].xyyy, texture[5], 2D; 14: MOV TEMP[3].x, TEMP[0].xxxx; 15: MOV TEMP[3].y, TEMP[0].-y-y-y-y; 16: MOV TEMP[3].z, TEMP[0].zzzz; 17: ADD TEMP[0].xyz, TEMP[3].xyzz, CONST[32]; 18: MUL TEMP[3].xyz, CONST[30].yyyy, TEMP[0].xyzz; 19: DP3 TEMP[0].x, INPUT[16].xyzz, INPUT[16].xyzz; 20: RSQ TEMP[4].x, TEMP[0].xxxx; 21: MUL TEMP[0].xyz, INPUT[16].xyzz, TEMP[4].xxxx; 22: MUL TEMP[4].xyz, TEMP[1].zxyy, TEMP[0].yzxx; 23: MAD TEMP[5].xyz, TEMP[1].yzxx, TEMP[0].zxyy, TEMP[4].-x-y-z-z; 24: MUL TEMP[4].xyz, TEMP[3].xxxx, TEMP[0].xyzz; 25: MAD TEMP[0].xyz, TEMP[3].yyyy, TEMP[5].xyzz, TEMP[4].xyzz; 26: MAD TEMP[4].xyz, TEMP[3].zzzz, TEMP[1].xyzz, TEMP[0].xyzz; 27: DP3 TEMP[0].x, TEMP[4].xyzz, TEMP[4].xyzz; 28: RSQ TEMP[1].x, TEMP[0].xxxx; 29: MUL TEMP[0].xyz, TEMP[4].xyzz, TEMP[1].xxxx; 30: DP3 TEMP[1].x, TEMP[0].xyzz, TEMP[2].xyzz; 31: MUL TEMP[3].x, CONST[30].yyyy, TEMP[1].xxxx; 32: MUL TEMP[1].xyz, TEMP[3].xxxx, TEMP[0].xyzz; 33: ADD TEMP[3].xyz, TEMP[2].xyzz, TEMP[1].-x-y-z-z; 34: MAD TEMP[1].xy, TEMP[3].xyyy, CONST[32].yyyy, CONST[32].yyyy; 35: MAD TEMP[1].xy, CONST[33], TEMP[1].xyxx, CONST[34]; 36: TEX TEMP[3], TEMP[1].xyyy, texture[4], 2D; 37: MUL TEMP[1].x, TEMP[3].wwww, CONST[30].zzzz; 38: ADD TEMP[4].x, CONST[33].zzzz, TEMP[1].-x-x-x-x; 39: MUL TEMP[5].xyz, TEMP[1].xxxx, TEMP[3].xyzz; 40: MAD TEMP[1].xyz, TEMP[4].xxxx, CONST[35], TEMP[5].xyzz; 41: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[0].xyzz; 42: TEX TEMP[4], TEMP[3].xxxx, texture[3], 1D; 43: MOV TEMP[3].w, CONST[33].zzzz; 44: MOV TEMP[3].xyz, TEMP[1].xyzx; 45: MUL TEMP[5].x, TEMP[4].wwww, CONST[30].wwww; 46: MOV_SAT TEMP[6].x, TEMP[5].xxxx; 47: ADD TEMP[5], TEMP[3], TEMP[4]; 48: ADD TEMP[4].x, CONST[33].zzzz, TEMP[6].-x-x-x-x; 49: MUL TEMP[7], TEMP[3], TEMP[4].xxxx; 50: MAD TEMP[4], TEMP[5], TEMP[6].xxxx, TEMP[7]; 51: MOV TEMP[4].w, CONST[33].zzzz; 52: ADD TEMP[3].xyz, UNIFORM[23].xyzz, TEMP[2].xyzz; 53: MOV TEMP[5].w, CONST[33].zzzz; 54: DP3 TEMP[6].x, TEMP[3].xyzz, TEMP[3].xyzz; 55: RSQ TEMP[7].x, TEMP[6].xxxx; 56: MUL TEMP[6].xyz, TEMP[3].xyzz, TEMP[7].xxxx; 57: DP3 TEMP[3].x, TEMP[0].xyzz, TEMP[6].xyzz; 58: MAD TEMP[6].x, CONST[32].yyyy, TEMP[3].xxxx, CONST[32].yyyy; 59: POW TEMP[3].x, TEMP[6].xxxx, CONST[32].wwww; 60: MUL TEMP[6].x, CONST[31].wwww, TEMP[3].xxxx; 61: MUL TEMP[5].xyz, TEMP[6].xxxx, UNIFORM[20].xyzx; 62: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[0].xyzz; 63: TEX TEMP[6], TEMP[3].xxxx, texture[2], 1D; 64: MOV TEMP[3].w, CONST[33].zzzz; 65: MOV TEMP[3].xyz, TEMP[1].xyzx; 66: MUL TEMP[7].x, TEMP[6].wwww, CONST[30].wwww; 67: MOV_SAT TEMP[8].x, TEMP[7].xxxx; 68: ADD TEMP[7], TEMP[3], TEMP[6]; 69: ADD TEMP[6].x, CONST[33].zzzz, TEMP[8].-x-x-x-x; 70: MUL TEMP[9], TEMP[3], TEMP[6].xxxx; 71: MAD TEMP[6], TEMP[7], TEMP[8].xxxx, TEMP[9]; 72: MOV TEMP[6].w, CONST[33].zzzz; 73: DP3 TEMP[3].x, TEMP[0].xyzz, UNIFORM[19].xyzz; 74: MUL TEMP[7].x, TEMP[3].xxxx, CONST[33].wwww; 75: MAX TEMP[3].x, TEMP[7].xxxx, CONST[30].xxxx; 76: MUL TEMP[7], UNIFORM[18], TEMP[3].xxxx; 77: DP3 TEMP[3].x, TEMP[0].xyzz, UNIFORM[23].xyzz; 78: MAD TEMP[8].x, CONST[32].yyyy, TEMP[3].xxxx, CONST[32].yyyy; 79: MUL TEMP[3].x, TEMP[8].xxxx, CONST[33].wwww; 80: MAX TEMP[8].x, TEMP[3].xxxx, CONST[30].xxxx; 81: MUL TEMP[3], UNIFORM[22], TEMP[8].xxxx; 82: MAD TEMP[8], TEMP[3], TEMP[4], CONST[36]; 83: MAD TEMP[3], TEMP[7], TEMP[6], TEMP[8]; 84: ADD TEMP[4].xyz, UNIFORM[19].xyzz, TEMP[2].xyzz; 85: MOV TEMP[2].w, CONST[33].zzzz; 86: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz; 87: RSQ TEMP[7].x, TEMP[6].xxxx; 88: MUL TEMP[6].xyz, TEMP[4].xyzz, TEMP[7].xxxx; 89: DP3 TEMP[4].x, TEMP[6].xyzz, TEMP[0].xyzz; 90: MAX TEMP[6].x, TEMP[4].xxxx, CONST[30].xxxx; 91: POW TEMP[4].x, TEMP[6].xxxx, CONST[32].wwww; 92: MUL TEMP[6].x, CONST[31].wwww, TEMP[4].xxxx; 93: MUL TEMP[2].xyz, TEMP[6].xxxx, UNIFORM[16].xyzx; 94: ADD TEMP[4], CONST[36], TEMP[5]; 95: ADD TEMP[5], TEMP[4], TEMP[2]; 96: ADD TEMP[2].xyz, INPUT[15].xyzz, UNIFORM[15].-x-y-z-z; 97: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz; 98: RSQ TEMP[6].x, TEMP[4].xxxx; 99: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[6].xxxx; 100: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[2].xyzz; 101: RSQ TEMP[2].x, TEMP[6].xxxx; 102: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[6].xxxx; 103: CMP TEMP[2].x, TEMP[6].-x-x-x-x, TEMP[2].xxxx, CONST[30].xxxx; 104: ADD TEMP[6].x, CONST[34].wwww, TEMP[2].xxxx; 105: RCP TEMP[2].x, TEMP[6].xxxx; 106: MUL TEMP[6].x, CONST[34].wwww, TEMP[2].xxxx; 107: DP3 TEMP[2].x, TEMP[4].xyzz, UNIFORM[14].xyzz; 108: SLE TEMP[7].x, TEMP[2].xxxx, CONST[35].wwww; 109: IF TEMP[7].xxxx; # (if false, goto 111); 110: MOV TEMP[7].x, CONST[30].xxxx; 111: ELSE; # (goto 122) 112: ADD TEMP[8].x, TEMP[2].xxxx, CONST[37].xxxx; 113: MUL TEMP[9].x, TEMP[8].xxxx, CONST[37].yyyy; 114: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 115: MUL TEMP[9].x, CONST[30].yyyy, TEMP[8].xxxx; 116: ADD TEMP[10].x, CONST[37].zzzz, TEMP[9].-x-x-x-x; 117: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 118: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 119: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx; 120: MUL TEMP[2].x, TEMP[6].xxxx, TEMP[8].xxxx; 121: MOV TEMP[7].x, TEMP[2].xxxx; 122: ENDIF; 123: SLT TEMP[2].x, TEMP[7].xxxx, CONST[37].wwww; 124: IF TEMP[2].xxxx; # (if false, goto 126); 125: MOV TEMP[2].x, CONST[30].xxxx; 126: ELSE; # (goto 128) 127: MOV TEMP[2].x, TEMP[7].xxxx; 128: ENDIF; 129: DP3 TEMP[6].x, TEMP[0].xyzz, TEMP[4].xyzz; 130: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[2].xxxx; 131: MUL TEMP[2].x, TEMP[4].xxxx, CONST[33].wwww; 132: MAX TEMP[4].x, TEMP[2].xxxx, CONST[30].xxxx; 133: SLE TEMP[2].x, TEMP[6].xxxx, CONST[30].xxxx; 134: IF TEMP[2].xxxx; # (if false, goto 136); 135: MOV TEMP[2].x, CONST[30].xxxx; 136: ELSE; # (goto 148) 137: MUL TEMP[6], UNIFORM[9], INPUT[15].xxxx; 138: MAD TEMP[7], UNIFORM[10], INPUT[15].yyyy, TEMP[6]; 139: MAD TEMP[6], UNIFORM[11], INPUT[15].zzzz, TEMP[7]; 140: ADD TEMP[7], TEMP[6], UNIFORM[12]; 141: MUL TEMP[6].x, CONST[38].xxxx, TEMP[7].wwww; 142: ADD TEMP[8].x, TEMP[7].zzzz, TEMP[6].-x-x-x-x; 143: MOV TEMP[6], TEMP[7].xyyy; 144: MOV TEMP[6].w, TEMP[7].wwww; 145: MOV TEMP[6].z, TEMP[8].xxxx; 146: TXP TEMP[7].x, TEMP[6], texture[1], 2D SHADOW; 147: MOV TEMP[2].x, TEMP[7].xxxx; 148: ENDIF; 149: MOV TEMP[6].w, CONST[30].xxxx; 150: MUL TEMP[7].x, TEMP[4].xxxx, UNIFORM[8].xxxx; 151: ADD TEMP[4].x, CONST[33].zzzz, TEMP[2].-x-x-x-x; 152: MUL TEMP[2].x, TEMP[7].xxxx, TEMP[4].xxxx; 153: MUL TEMP[6].xyz, TEMP[1].xyzx, TEMP[2].xxxx; 154: ADD TEMP[2], TEMP[3], TEMP[6].-x-y-z-w; 155: ADD TEMP[3].xyz, INPUT[15].xyzz, UNIFORM[7].-x-y-z-z; 156: DP3 TEMP[4].x, TEMP[3].xyzz, TEMP[3].xyzz; 157: RSQ TEMP[6].x, TEMP[4].xxxx; 158: MUL TEMP[4].xyz, TEMP[3].xyzz, TEMP[6].xxxx; 159: DP3 TEMP[6].x, TEMP[3].xyzz, TEMP[3].xyzz; 160: RSQ TEMP[3].x, TEMP[6].xxxx; 161: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[6].xxxx; 162: CMP TEMP[3].x, TEMP[6].-x-x-x-x, TEMP[3].xxxx, CONST[30].xxxx; 163: ADD TEMP[6].x, CONST[34].wwww, TEMP[3].xxxx; 164: RCP TEMP[3].x, TEMP[6].xxxx; 165: MUL TEMP[6].x, CONST[34].wwww, TEMP[3].xxxx; 166: DP3 TEMP[3].x, TEMP[4].xyzz, UNIFORM[6].xyzz; 167: SLE TEMP[7].x, TEMP[3].xxxx, CONST[35].wwww; 168: IF TEMP[7].xxxx; # (if false, goto 170); 169: MOV TEMP[7].x, CONST[30].xxxx; 170: ELSE; # (goto 181) 171: ADD TEMP[8].x, TEMP[3].xxxx, CONST[37].xxxx; 172: MUL TEMP[9].x, TEMP[8].xxxx, CONST[37].yyyy; 173: MOV_SAT TEMP[8].x, TEMP[9].xxxx; 174: MUL TEMP[9].x, CONST[30].yyyy, TEMP[8].xxxx; 175: ADD TEMP[10].x, CONST[37].zzzz, TEMP[9].-x-x-x-x; 176: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx; 177: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx; 178: MUL TEMP[8].x, TEMP[3].xxxx, TEMP[10].xxxx; 179: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[8].xxxx; 180: MOV TEMP[7].x, TEMP[3].xxxx; 181: ENDIF; 182: SLT TEMP[3].x, TEMP[7].xxxx, CONST[37].wwww; 183: IF TEMP[3].xxxx; # (if false, goto 185); 184: MOV TEMP[3].x, CONST[30].xxxx; 185: ELSE; # (goto 187) 186: MOV TEMP[3].x, TEMP[7].xxxx; 187: ENDIF; 188: DP3 TEMP[6].x, TEMP[0].xyzz, TEMP[4].xyzz; 189: MUL TEMP[0].x, TEMP[6].xxxx, TEMP[3].xxxx; 190: MUL TEMP[3].x, TEMP[0].xxxx, CONST[33].wwww; 191: MAX TEMP[0].x, TEMP[3].xxxx, CONST[30].xxxx; 192: SLE TEMP[3].x, TEMP[6].xxxx, CONST[30].xxxx; 193: IF TEMP[3].xxxx; # (if false, goto 195); 194: MOV TEMP[3].x, CONST[30].xxxx; 195: ELSE; # (goto 207) 196: MUL TEMP[4], UNIFORM[1], INPUT[15].xxxx; 197: MAD TEMP[6], UNIFORM[2], INPUT[15].yyyy, TEMP[4]; 198: MAD TEMP[4], UNIFORM[3], INPUT[15].zzzz, TEMP[6]; 199: ADD TEMP[6], TEMP[4], UNIFORM[4]; 200: MUL TEMP[4].x, CONST[38].xxxx, TEMP[6].wwww; 201: ADD TEMP[7].x, TEMP[6].zzzz, TEMP[4].-x-x-x-x; 202: MOV TEMP[4], TEMP[6].xyyy; 203: MOV TEMP[4].w, TEMP[6].wwww; 204: MOV TEMP[4].z, TEMP[7].xxxx; 205: TXP TEMP[6].x, TEMP[4], texture[0], 2D SHADOW; 206: MOV TEMP[3].x, TEMP[6].xxxx; 207: ENDIF; 208: MOV TEMP[4].w, CONST[30].xxxx; 209: MUL TEMP[6].x, TEMP[0].xxxx, UNIFORM[0].xxxx; 210: ADD TEMP[0].x, CONST[33].zzzz, TEMP[3].-x-x-x-x; 211: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[0].xxxx; 212: MUL TEMP[4].xyz, TEMP[1].xyzx, TEMP[3].xxxx; 213: ADD TEMP[0], TEMP[2], TEMP[4].-x-y-z-w; 214: ADD TEMP[1].xyz, TEMP[0], TEMP[5]; 215: MOV TEMP[0].xyz, TEMP[1].xyzx; 216: MOV TEMP[0].w, CONST[38].yyyy; 217: SEQ TEMP[1].x, STATE[29].wwww, CONST[30].xxxx; 218: IF TEMP[1].xxxx; # (if false, goto 224); 219: DP3 TEMP[1].x, INPUT[15].xyzz, INPUT[15].xyzz; 220: RSQ TEMP[2].x, TEMP[1].xxxx; 221: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx; 222: CMP TEMP[2].x, TEMP[1].-x-x-x-x, TEMP[2].xxxx, CONST[30].xxxx; 223: MOV TEMP[1].x, TEMP[2].xxxx; 224: ELSE; # (goto 226) 225: MOV TEMP[1].x, INPUT[15].-z-z-z-z; 226: ENDIF; 227: ADD TEMP[2].x, TEMP[1].xxxx, CONST[38].zzzz; 228: MUL TEMP[1].x, TEMP[2].xxxx, CONST[38].wwww; 229: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 230: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx; 231: ADD TEMP[2].x, CONST[33].zzzz, TEMP[1].-x-x-x-x; 232: ADD TEMP[1].x, CONST[33].zzzz, TEMP[2].-x-x-x-x; 233: MOV_SAT TEMP[2].x, TEMP[1].xxxx; 234: ADD TEMP[1].x, CONST[33].zzzz, TEMP[2].-x-x-x-x; 235: MUL TEMP[3], TEMP[0], TEMP[1].xxxx; 236: MAD TEMP[0], CONST[39], TEMP[2].xxxx, TEMP[3]; 237: MOV TEMP[0].w, CONST[38].yyyy; 238: MOV OUTPUT[2], TEMP[0]; 239: END InputsRead: 0x3c000 (0b11,11000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=240 NumTemporaries=11 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x3f (0b111111) Samplers=[ 5 4 3 2 1 0 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x2 param[0] sz=1 UNIFORM unf221 = {1, 0, 0, 0} param[1] sz=16 UNIFORM unf215 = {5.7, -0.0767, 0.249, 0.191} param[2] sz=12 UNIFORM unf215 = {0.565, -1.44, -1.26, -0.969} param[3] sz=8 UNIFORM unf215 = {-0.271, -5.55, 0.208, 0.159} param[4] sz=4 UNIFORM unf215 = {17.1, -8.62, -8.83, 0.23} param[5] sz=4 SAMPLER samp5 = {0, 0, 0, 0} param[6] sz=3 UNIFORM unf196 = {0.191, -0.969, 0.159, 0} param[7] sz=3 UNIFORM unf189 = {-3.01, -0.58, -1.36, 0} param[8] sz=1 UNIFORM unf182 = {1, 0, 0, 0} param[9] sz=16 UNIFORM unf176 = {5.7, -0.0767, 0.249, 0.191} param[10] sz=12 UNIFORM unf176 = {0.565, -1.44, -1.26, -0.969} param[11] sz=8 UNIFORM unf176 = {-0.271, -5.55, 0.208, 0.159} param[12] sz=4 UNIFORM unf176 = {2.33, 3.5, 2.15, 8.65} param[13] sz=4 SAMPLER samp4 = {1, 0, 0, 0} param[14] sz=3 UNIFORM unf157 = {0.191, -0.969, 0.159, 0} param[15] sz=3 UNIFORM unf150 = {-1.32, 8.42, -1.54, 0} param[16] sz=3 UNIFORM unf143 = {2.2, 1.97, 1.79, 0} param[17] sz=4 SAMPLER samp3 = {2, 0, 0, 0} param[18] sz=4 UNIFORM unf109 = {2.2, 1.97, 1.79, 2.2} param[19] sz=3 UNIFORM unf97 = {0.233, -0.601, -0.764, 0} param[20] sz=3 UNIFORM unf91 = {0.551, 0.557, 0.68, 0} param[21] sz=4 SAMPLER samp2 = {3, 0, 0, 0} param[22] sz=4 UNIFORM unf60 = {0.551, 0.557, 0.68, 0.68} param[23] sz=3 UNIFORM unf46 = {-0.243, -0.303, 0.922, 0} param[24] sz=4 SAMPLER samp1 = {4, 0, 0, 0} param[25] sz=4 SAMPLER samp0 = {5, 0, 0, 0} param[26] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[27] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[28] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[29] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[30] sz=4 CONST (null) = {0, 2, 0.6, 0.9} param[31] sz=4 CONST (null) = {0, 0, -1, 0.57} param[32] sz=4 CONST (null) = {-0.5, 0.5, -0.5, 84} param[33] sz=4 CONST (null) = {0.8, 0.8, 1, 0.3} param[34] sz=4 CONST (null) = {2, 0.4, 0, 20} param[35] sz=4 CONST (null) = {0.612, 0.867, 1, 0.996} param[36] sz=4 CONST (null) = {0, 0, 0, 1} param[37] sz=4 CONST (null) = {-0.996, 1.75e+03, 3, 0.001} param[38] sz=4 CONST (null) = {0.005, 0.7, -6, 0.0385} param[39] sz=4 CONST (null) = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL IN[1], GENERIC[11], PERSPECTIVE DCL IN[2], GENERIC[12], PERSPECTIVE DCL IN[3], GENERIC[13], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SAMP[2] DCL SAMP[3] DCL SAMP[4] DCL SAMP[5] DCL CONST[0..4] DCL CONST[6..12] DCL CONST[14..16] DCL CONST[18..20] DCL CONST[22..23] DCL CONST[26..29] DCL TEMP[0..10] IMM FLT32 { 0.0000, 2.0000, 0.6000, 0.9000} IMM FLT32 { 0.0000, -1.0000, 0.5699, 1.0000} IMM FLT32 { -0.5000, 0.5000, 84.0000, 0.9063} IMM FLT32 { 0.8000, 1.0000, 0.3000, 0.9063} IMM FLT32 { 2.0000, 0.4000, 0.0000, 20.0000} IMM FLT32 { 0.6122, 0.8667, 1.0000, 0.9962} IMM FLT32 { -0.9962, 1751.3136, 3.0000, 0.0010} IMM FLT32 { 0.0050, 0.7000, -6.0000, 0.0385} IMM FLT32 { 0.9063, 0.8827, 0.9922, 0.0000} 0: DP3 TEMP[0].x, IN[0].xyzz, IN[0].xyzz 1: RSQ TEMP[1].x, TEMP[0].xxxx 2: MUL TEMP[0].xyz, IN[0].xyzz, TEMP[1].xxxx 3: MOV TEMP[1].xyz, -TEMP[0].xyzx 4: SEQ TEMP[0].x, CONST[29].wwww, IMM[0].xxxx 5: IF TEMP[0].xxxx :10 6: DP3 TEMP[0].x, IN[1].xyzz, IN[1].xyzz 7: RSQ TEMP[2].x, TEMP[0].xxxx 8: MUL TEMP[0].xyz, IN[1].xyzz, TEMP[2].xxxx 9: MOV TEMP[2].xyz, TEMP[0].xyzx 10: ELSE :12 11: MOV TEMP[2].xyz, IMM[1].xxyx 12: ENDIF 13: TEX TEMP[0], IN[3].xyyy, SAMP[5], 2D 14: MOV TEMP[3].x, TEMP[0].xxxx 15: MOV TEMP[3].y, -TEMP[0].yyyy 16: MOV TEMP[3].z, TEMP[0].zzzz 17: ADD TEMP[0].xyz, TEMP[3].xyzz, IMM[2].xyxz 18: MUL TEMP[3].xyz, IMM[0].yyyy, TEMP[0].xyzz 19: DP3 TEMP[0].x, IN[2].xyzz, IN[2].xyzz 20: RSQ TEMP[4].x, TEMP[0].xxxx 21: MUL TEMP[0].xyz, IN[2].xyzz, TEMP[4].xxxx 22: MUL TEMP[4].xyz, TEMP[1].zxyy, TEMP[0].yzxx 23: MAD TEMP[5].xyz, TEMP[1].yzxx, TEMP[0].zxyy, -TEMP[4].xyzz 24: MUL TEMP[4].xyz, TEMP[3].xxxx, TEMP[0].xyzz 25: MAD TEMP[0].xyz, TEMP[3].yyyy, TEMP[5].xyzz, TEMP[4].xyzz 26: MAD TEMP[4].xyz, TEMP[3].zzzz, TEMP[1].xyzz, TEMP[0].xyzz 27: DP3 TEMP[0].x, TEMP[4].xyzz, TEMP[4].xyzz 28: RSQ TEMP[1].x, TEMP[0].xxxx 29: MUL TEMP[0].xyz, TEMP[4].xyzz, TEMP[1].xxxx 30: DP3 TEMP[1].x, TEMP[0].xyzz, TEMP[2].xyzz 31: MUL TEMP[3].x, IMM[0].yyyy, TEMP[1].xxxx 32: MUL TEMP[1].xyz, TEMP[3].xxxx, TEMP[0].xyzz 33: ADD TEMP[3].xyz, TEMP[2].xyzz, -TEMP[1].xyzz 34: MAD TEMP[1].xy, TEMP[3].xyyy, IMM[2].yyyy, IMM[2].yyyy 35: MAD TEMP[1].xy, IMM[3].xxyz, TEMP[1].xyxx, IMM[4] 36: TEX TEMP[3], TEMP[1].xyyy, SAMP[4], 2D 37: MUL TEMP[1].x, TEMP[3].wwww, IMM[0].zzzz 38: ADD TEMP[4].x, IMM[3].yyyy, -TEMP[1].xxxx 39: MUL TEMP[5].xyz, TEMP[1].xxxx, TEMP[3].xyzz 40: MAD TEMP[1].xyz, TEMP[4].xxxx, IMM[5], TEMP[5].xyzz 41: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[0].xyzz 42: TEX TEMP[4], TEMP[3].xxxx, SAMP[3], 1D 43: MOV TEMP[3].w, IMM[3].yyyy 44: MOV TEMP[3].xyz, TEMP[1].xyzx 45: MUL TEMP[5].x, TEMP[4].wwww, IMM[0].wwww 46: MOV_SAT TEMP[6].x, TEMP[5].xxxx 47: ADD TEMP[5], TEMP[3], TEMP[4] 48: ADD TEMP[4].x, IMM[3].yyyy, -TEMP[6].xxxx 49: MUL TEMP[7], TEMP[3], TEMP[4].xxxx 50: MAD TEMP[4], TEMP[5], TEMP[6].xxxx, TEMP[7] 51: MOV TEMP[4].w, IMM[3].yyyy 52: ADD TEMP[3].xyz, CONST[23].xyzz, TEMP[2].xyzz 53: MOV TEMP[5].w, IMM[3].yyyy 54: DP3 TEMP[6].x, TEMP[3].xyzz, TEMP[3].xyzz 55: RSQ TEMP[7].x, TEMP[6].xxxx 56: MUL TEMP[6].xyz, TEMP[3].xyzz, TEMP[7].xxxx 57: DP3 TEMP[3].x, TEMP[0].xyzz, TEMP[6].xyzz 58: MAD TEMP[6].x, IMM[2].yyyy, TEMP[3].xxxx, IMM[2].yyyy 59: POW TEMP[3].x, TEMP[6].xxxx, IMM[2].zzzz 60: MUL TEMP[6].x, IMM[1].zzzz, TEMP[3].xxxx 61: MUL TEMP[5].xyz, TEMP[6].xxxx, CONST[20].xyzx 62: DP3 TEMP[3].x, TEMP[2].xyzz, TEMP[0].xyzz 63: TEX TEMP[6], TEMP[3].xxxx, SAMP[2], 1D 64: MOV TEMP[3].w, IMM[3].yyyy 65: MOV TEMP[3].xyz, TEMP[1].xyzx 66: MUL TEMP[7].x, TEMP[6].wwww, IMM[0].wwww 67: MOV_SAT TEMP[8].x, TEMP[7].xxxx 68: ADD TEMP[7], TEMP[3], TEMP[6] 69: ADD TEMP[6].x, IMM[3].yyyy, -TEMP[8].xxxx 70: MUL TEMP[9], TEMP[3], TEMP[6].xxxx 71: MAD TEMP[6], TEMP[7], TEMP[8].xxxx, TEMP[9] 72: MOV TEMP[6].w, IMM[3].yyyy 73: DP3 TEMP[3].x, TEMP[0].xyzz, CONST[19].xyzz 74: MUL TEMP[7].x, TEMP[3].xxxx, IMM[3].zzzz 75: MAX TEMP[3].x, TEMP[7].xxxx, IMM[0].xxxx 76: MUL TEMP[7], CONST[18], TEMP[3].xxxx 77: DP3 TEMP[3].x, TEMP[0].xyzz, CONST[23].xyzz 78: MAD TEMP[8].x, IMM[2].yyyy, TEMP[3].xxxx, IMM[2].yyyy 79: MUL TEMP[3].x, TEMP[8].xxxx, IMM[3].zzzz 80: MAX TEMP[8].x, TEMP[3].xxxx, IMM[0].xxxx 81: MUL TEMP[3], CONST[22], TEMP[8].xxxx 82: MAD TEMP[8], TEMP[3], TEMP[4], IMM[1].xxxw 83: MAD TEMP[3], TEMP[7], TEMP[6], TEMP[8] 84: ADD TEMP[4].xyz, CONST[19].xyzz, TEMP[2].xyzz 85: MOV TEMP[2].w, IMM[3].yyyy 86: DP3 TEMP[6].x, TEMP[4].xyzz, TEMP[4].xyzz 87: RSQ TEMP[7].x, TEMP[6].xxxx 88: MUL TEMP[6].xyz, TEMP[4].xyzz, TEMP[7].xxxx 89: DP3 TEMP[4].x, TEMP[6].xyzz, TEMP[0].xyzz 90: MAX TEMP[6].x, TEMP[4].xxxx, IMM[0].xxxx 91: POW TEMP[4].x, TEMP[6].xxxx, IMM[2].zzzz 92: MUL TEMP[6].x, IMM[1].zzzz, TEMP[4].xxxx 93: MUL TEMP[2].xyz, TEMP[6].xxxx, CONST[16].xyzx 94: ADD TEMP[4], IMM[1].xxxw, TEMP[5] 95: ADD TEMP[5], TEMP[4], TEMP[2] 96: ADD TEMP[2].xyz, IN[1].xyzz, -CONST[15].xyzz 97: DP3 TEMP[4].x, TEMP[2].xyzz, TEMP[2].xyzz 98: RSQ TEMP[6].x, TEMP[4].xxxx 99: MUL TEMP[4].xyz, TEMP[2].xyzz, TEMP[6].xxxx 100: DP3 TEMP[6].x, TEMP[2].xyzz, TEMP[2].xyzz 101: RSQ TEMP[2].x, TEMP[6].xxxx 102: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[6].xxxx 103: CMP TEMP[2].x, -TEMP[6].xxxx, TEMP[2].xxxx, IMM[0].xxxx 104: ADD TEMP[6].x, IMM[4].wwww, TEMP[2].xxxx 105: RCP TEMP[2].x, TEMP[6].xxxx 106: MUL TEMP[6].x, IMM[4].wwww, TEMP[2].xxxx 107: DP3 TEMP[2].x, TEMP[4].xyzz, CONST[14].xyzz 108: SLE TEMP[7].x, TEMP[2].xxxx, IMM[5].wwww 109: IF TEMP[7].xxxx :111 110: MOV TEMP[7].x, IMM[0].xxxx 111: ELSE :122 112: ADD TEMP[8].x, TEMP[2].xxxx, IMM[6].xxxx 113: MUL TEMP[9].x, TEMP[8].xxxx, IMM[6].yyyy 114: MOV_SAT TEMP[8].x, TEMP[9].xxxx 115: MUL TEMP[9].x, IMM[0].yyyy, TEMP[8].xxxx 116: ADD TEMP[10].x, IMM[6].zzzz, -TEMP[9].xxxx 117: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 118: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 119: MUL TEMP[8].x, TEMP[2].xxxx, TEMP[10].xxxx 120: MUL TEMP[2].x, TEMP[6].xxxx, TEMP[8].xxxx 121: MOV TEMP[7].x, TEMP[2].xxxx 122: ENDIF 123: SLT TEMP[2].x, TEMP[7].xxxx, IMM[6].wwww 124: IF TEMP[2].xxxx :126 125: MOV TEMP[2].x, IMM[0].xxxx 126: ELSE :128 127: MOV TEMP[2].x, TEMP[7].xxxx 128: ENDIF 129: DP3 TEMP[6].x, TEMP[0].xyzz, TEMP[4].xyzz 130: MUL TEMP[4].x, TEMP[6].xxxx, TEMP[2].xxxx 131: MUL TEMP[2].x, TEMP[4].xxxx, IMM[3].zzzz 132: MAX TEMP[4].x, TEMP[2].xxxx, IMM[0].xxxx 133: SLE TEMP[2].x, TEMP[6].xxxx, IMM[0].xxxx 134: IF TEMP[2].xxxx :136 135: MOV TEMP[2].x, IMM[0].xxxx 136: ELSE :148 137: MUL TEMP[6], CONST[9], IN[1].xxxx 138: MAD TEMP[7], CONST[10], IN[1].yyyy, TEMP[6] 139: MAD TEMP[6], CONST[11], IN[1].zzzz, TEMP[7] 140: ADD TEMP[7], TEMP[6], CONST[12] 141: MUL TEMP[6].x, IMM[7].xxxx, TEMP[7].wwww 142: ADD TEMP[8].x, TEMP[7].zzzz, -TEMP[6].xxxx 143: MOV TEMP[6], TEMP[7].xyyy 144: MOV TEMP[6].w, TEMP[7].wwww 145: MOV TEMP[6].z, TEMP[8].xxxx 146: TXP TEMP[7].x, TEMP[6], SAMP[1], SHADOW2D 147: MOV TEMP[2].x, TEMP[7].xxxx 148: ENDIF 149: MOV TEMP[6].w, IMM[0].xxxx 150: MUL TEMP[7].x, TEMP[4].xxxx, CONST[8].xxxx 151: ADD TEMP[4].x, IMM[3].yyyy, -TEMP[2].xxxx 152: MUL TEMP[2].x, TEMP[7].xxxx, TEMP[4].xxxx 153: MUL TEMP[6].xyz, TEMP[1].xyzx, TEMP[2].xxxx 154: ADD TEMP[2], TEMP[3], -TEMP[6] 155: ADD TEMP[3].xyz, IN[1].xyzz, -CONST[7].xyzz 156: DP3 TEMP[4].x, TEMP[3].xyzz, TEMP[3].xyzz 157: RSQ TEMP[6].x, TEMP[4].xxxx 158: MUL TEMP[4].xyz, TEMP[3].xyzz, TEMP[6].xxxx 159: DP3 TEMP[6].x, TEMP[3].xyzz, TEMP[3].xyzz 160: RSQ TEMP[3].x, TEMP[6].xxxx 161: MUL TEMP[3].x, TEMP[3].xxxx, TEMP[6].xxxx 162: CMP TEMP[3].x, -TEMP[6].xxxx, TEMP[3].xxxx, IMM[0].xxxx 163: ADD TEMP[6].x, IMM[4].wwww, TEMP[3].xxxx 164: RCP TEMP[3].x, TEMP[6].xxxx 165: MUL TEMP[6].x, IMM[4].wwww, TEMP[3].xxxx 166: DP3 TEMP[3].x, TEMP[4].xyzz, CONST[6].xyzz 167: SLE TEMP[7].x, TEMP[3].xxxx, IMM[5].wwww 168: IF TEMP[7].xxxx :170 169: MOV TEMP[7].x, IMM[0].xxxx 170: ELSE :181 171: ADD TEMP[8].x, TEMP[3].xxxx, IMM[6].xxxx 172: MUL TEMP[9].x, TEMP[8].xxxx, IMM[6].yyyy 173: MOV_SAT TEMP[8].x, TEMP[9].xxxx 174: MUL TEMP[9].x, IMM[0].yyyy, TEMP[8].xxxx 175: ADD TEMP[10].x, IMM[6].zzzz, -TEMP[9].xxxx 176: MUL TEMP[9].x, TEMP[8].xxxx, TEMP[10].xxxx 177: MUL TEMP[10].x, TEMP[8].xxxx, TEMP[9].xxxx 178: MUL TEMP[8].x, TEMP[3].xxxx, TEMP[10].xxxx 179: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[8].xxxx 180: MOV TEMP[7].x, TEMP[3].xxxx 181: ENDIF 182: SLT TEMP[3].x, TEMP[7].xxxx, IMM[6].wwww 183: IF TEMP[3].xxxx :185 184: MOV TEMP[3].x, IMM[0].xxxx 185: ELSE :187 186: MOV TEMP[3].x, TEMP[7].xxxx 187: ENDIF 188: DP3 TEMP[6].x, TEMP[0].xyzz, TEMP[4].xyzz 189: MUL TEMP[0].x, TEMP[6].xxxx, TEMP[3].xxxx 190: MUL TEMP[3].x, TEMP[0].xxxx, IMM[3].zzzz 191: MAX TEMP[0].x, TEMP[3].xxxx, IMM[0].xxxx 192: SLE TEMP[3].x, TEMP[6].xxxx, IMM[0].xxxx 193: IF TEMP[3].xxxx :195 194: MOV TEMP[3].x, IMM[0].xxxx 195: ELSE :207 196: MUL TEMP[4], CONST[1], IN[1].xxxx 197: MAD TEMP[6], CONST[2], IN[1].yyyy, TEMP[4] 198: MAD TEMP[4], CONST[3], IN[1].zzzz, TEMP[6] 199: ADD TEMP[6], TEMP[4], CONST[4] 200: MUL TEMP[4].x, IMM[7].xxxx, TEMP[6].wwww 201: ADD TEMP[7].x, TEMP[6].zzzz, -TEMP[4].xxxx 202: MOV TEMP[4], TEMP[6].xyyy 203: MOV TEMP[4].w, TEMP[6].wwww 204: MOV TEMP[4].z, TEMP[7].xxxx 205: TXP TEMP[6].x, TEMP[4], SAMP[0], SHADOW2D 206: MOV TEMP[3].x, TEMP[6].xxxx 207: ENDIF 208: MOV TEMP[4].w, IMM[0].xxxx 209: MUL TEMP[6].x, TEMP[0].xxxx, CONST[0].xxxx 210: ADD TEMP[0].x, IMM[3].yyyy, -TEMP[3].xxxx 211: MUL TEMP[3].x, TEMP[6].xxxx, TEMP[0].xxxx 212: MUL TEMP[4].xyz, TEMP[1].xyzx, TEMP[3].xxxx 213: ADD TEMP[0], TEMP[2], -TEMP[4] 214: ADD TEMP[1].xyz, TEMP[0], TEMP[5] 215: MOV TEMP[0].xyz, TEMP[1].xyzx 216: MOV TEMP[0].w, IMM[7].yyyy 217: SEQ TEMP[1].x, CONST[29].wwww, IMM[0].xxxx 218: IF TEMP[1].xxxx :224 219: DP3 TEMP[1].x, IN[1].xyzz, IN[1].xyzz 220: RSQ TEMP[2].x, TEMP[1].xxxx 221: MUL TEMP[2].x, TEMP[2].xxxx, TEMP[1].xxxx 222: CMP TEMP[2].x, -TEMP[1].xxxx, TEMP[2].xxxx, IMM[0].xxxx 223: MOV TEMP[1].x, TEMP[2].xxxx 224: ELSE :226 225: MOV TEMP[1].x, -IN[1].zzzz 226: ENDIF 227: ADD TEMP[2].x, TEMP[1].xxxx, IMM[7].zzzz 228: MUL TEMP[1].x, TEMP[2].xxxx, IMM[7].wwww 229: MOV_SAT TEMP[2].x, TEMP[1].xxxx 230: MUL TEMP[1].x, TEMP[2].xxxx, TEMP[2].xxxx 231: ADD TEMP[2].x, IMM[3].yyyy, -TEMP[1].xxxx 232: ADD TEMP[1].x, IMM[3].yyyy, -TEMP[2].xxxx 233: MOV_SAT TEMP[2].x, TEMP[1].xxxx 234: ADD TEMP[1].x, IMM[3].yyyy, -TEMP[2].xxxx 235: MUL TEMP[3], TEMP[0], TEMP[1].xxxx 236: MAD TEMP[0], IMM[8], TEMP[2].xxxx, TEMP[3] 237: MOV TEMP[0].w, IMM[7].yyyy 238: MOV OUT[0], TEMP[0] 239: END # Vertex Program/Shader 24 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MOV OUTPUT[17].xyz, TEMP[1].xyzx; 5: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[2].xxxx; 6: MAD TEMP[2].xyz, STATE[9].xyzz, INPUT[2].yyyy, TEMP[0].xyzz; 7: MAD OUTPUT[16].xyz, STATE[10].xyzx, INPUT[2].zzzx, TEMP[2].xyzx; 8: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 9: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 10: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 11: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 12: MOV OUTPUT[19].xy, INPUT[18].xyxx; 13: MUL TEMP[0].xyz, STATE[8].xyzz, INPUT[17].xxxx; 14: MAD TEMP[1].xyz, STATE[9].xyzz, INPUT[17].yyyy, TEMP[0].xyzz; 15: MAD OUTPUT[18].xyz, STATE[10].xyzx, INPUT[17].zzzx, TEMP[1].xyzx; 16: END InputsRead: 0x60005 (0b110,00000000,00000101) OutputsWritten: 0xf0001 (0b1111,00000000,00000001) NumInstructions=17 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {0.7, 1.55e-16, 1.55e-16, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {1.55e-16, 5.28e-08, -0.7, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-1.55e-16, 0.7, 5.28e-08, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {-1.25, -9.62, 0.192, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {1.12, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 1.5, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -0.2, 0} param[8] sz=4 STATE state.matrix.modelview.inverse.row[0] = {1.43, 3.17e-16, 3.17e-16, 1.78} param[9] sz=4 STATE state.matrix.modelview.inverse.row[1] = {3.17e-16, 1.08e-07, -1.43, 0.274} param[10] sz=4 STATE state.matrix.modelview.inverse.row[2] = {-3.17e-16, 1.43, 1.08e-07, 13.7} VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL OUT[2], GENERIC[11] DCL OUT[3], GENERIC[12] DCL OUT[4], GENERIC[13] DCL CONST[0..10] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MOV OUT[2].xyz, TEMP[1].xyzx 5: MUL TEMP[0].xyz, CONST[8].xyzz, IN[1].xxxx 6: MAD TEMP[2].xyz, CONST[9].xyzz, IN[1].yyyy, TEMP[0].xyzz 7: MAD OUT[1].xyz, CONST[10].xyzx, IN[1].zzzx, TEMP[2].xyzx 8: MUL TEMP[0], CONST[4], TEMP[1].xxxx 9: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 10: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 11: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 12: MOV OUT[4].xy, IN[3].xyxx 13: MUL TEMP[0].xyz, CONST[8].xyzz, IN[2].xxxx 14: MAD TEMP[1].xyz, CONST[9].xyzz, IN[2].yyyy, TEMP[0].xyzz 15: MAD OUT[3].xyz, CONST[10].xyzx, IN[2].zzzx, TEMP[1].xyzx 16: END # Fragment Program/Shader 0 0: MOV TEMP[0], INPUT[1]; 1: MAD_SAT TEMP[1].x, INPUT[3].xxxx, STATE[0].xxxx, STATE[0].yyyy; 2: LRP OUTPUT[2].xyz, TEMP[1].xxxx, TEMP[0], STATE[1]; 3: MOV OUTPUT[2].w, TEMP[0]; 4: END InputsRead: 0xa (0b1010) OutputsWritten: 0x4 (0b100) NumInstructions=5 NumTemporaries=2 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x20400040 param[0] sz=4 STATE state..internal.fogParamsOptimized = {-0.0385, 1.23, 0.144, 0.12} param[1] sz=4 STATE state.fog.color = {0.906, 0.883, 0.992, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], COLOR, LINEAR DCL IN[1], FOG, PERSPECTIVE DCL OUT[0], COLOR DCL CONST[0..1] DCL TEMP[0..1] 0: MOV TEMP[0], IN[0] 1: MAD_SAT TEMP[1].x, IN[1].xxxx, CONST[0].xxxx, CONST[0].yyyy 2: LRP OUT[0].xyz, TEMP[1].xxxx, TEMP[0], CONST[1] 3: MOV OUT[0].w, TEMP[0] 4: END # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: MOV OUTPUT[1], INPUT[3]; 5: DP4 TEMP[0], INPUT[0], STATE[6]; 6: ABS OUTPUT[3].x, TEMP[0]; 7: MOV OUTPUT[3].yzw, CONST[8]; 8: END InputsRead: 0x9 (0b1001) OutputsWritten: 0xb (0b1011) NumInstructions=9 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {1.12, 3.32e-16, -2.22e-16, -2.22e-16} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {2.5e-16, 1.13e-07, 1, 1} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {-2.5e-16, 1.5, -7.56e-08, -7.55e-08} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {-1.4, -14.4, -0.392, -0.192} param[4] sz=4 STATE state.matrix.modelview.row[0] = {1, 2.22e-16, -2.22e-16, -1.25} param[5] sz=4 STATE state.matrix.modelview.row[1] = {2.22e-16, 7.55e-08, 1, -9.62} param[6] sz=4 STATE state.matrix.modelview.row[2] = {2.22e-16, -1, 7.55e-08, 0.192} param[7] sz=4 STATE state.matrix.modelview.row[3] = {0, 0, 0, 1} param[8] sz=4 CONST (null) = {0, 0, 0, 1} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], COLOR DCL OUT[2], FOG DCL CONST[0..7] DCL TEMP[0] IMM FLT32 { 0.0000, 1.0000, 0.0000, 0.0000} 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: MOV OUT[1], IN[1] 5: DP4 TEMP[0], IN[0], CONST[6] 6: ABS OUT[2].x, TEMP[0] 7: MOV OUT[2].yzw, IMM[0].xxxy 8: END # Fragment Program/Shader 129 0: TEX TEMP[2], INPUT[14].xyyy, texture[0], 2D; 1: MOV_SAT TEMP[6].x, TEMP[2].wwww; 2: MUL TEMP[9].xyz, TEMP[2].xyzx, UNIFORM[0].xyzx; 3: MUL TEMP[9].w, TEMP[6].xxxx, UNIFORM[0].xxxw; 4: MOV OUTPUT[2], TEMP[9]; 5: END InputsRead: 0x4000 (0b1000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=6 NumTemporaries=11 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1 (0b1) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x0 param[0] sz=4 UNIFORM unfobcolor = {1, 1, 1, 0} param[1] sz=4 SAMPLER samp0 = {0, 0, 0, 0} param[2] sz=1 CONST (null) = {1, 0, 0, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL CONST[0] DCL TEMP[0..2] IMM FLT32 { 1.0000, 0.0000, 0.0000, 0.0000} 0: TEX TEMP[0], IN[0].xyyy, SAMP[0], 2D 1: MOV_SAT TEMP[1].x, TEMP[0].wwww 2: MUL TEMP[2].xyz, TEMP[0].xyzx, CONST[0].xyzx 3: MUL TEMP[2].w, TEMP[1].xxxx, CONST[0].xxxw 4: MOV OUT[0], TEMP[2] 5: END # Vertex Program/Shader 129 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 5: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 6: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 7: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 8: MOV OUTPUT[16].xy, INPUT[17].xyxx; 9: END InputsRead: 0x20001 (0b10,00000000,00000001) OutputsWritten: 0x10001 (0b1,00000000,00000001) NumInstructions=10 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {1, 3.3e-08, -3.95e-10, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {-3.95e-10, 7.55e-08, -1, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-3.3e-08, 1, 7.55e-08, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {-0.799, -0.296, -1.92, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {2.19, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 2.92, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1.22, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -2.22, 0} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL CONST[0..7] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MUL TEMP[0], CONST[4], TEMP[1].xxxx 5: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 6: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 7: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 8: MOV OUT[1].xy, IN[1].xyxx 9: END # Fragment Program/Shader 120 0: TEX TEMP[2], INPUT[14].xyyy, texture[0], 2D; 1: MOV_SAT TEMP[6].x, TEMP[2].wwww; 2: MUL TEMP[9].xyz, TEMP[2].xyzx, UNIFORM[0].xyzx; 3: MUL TEMP[9].w, TEMP[6].xxxx, UNIFORM[0].xxxw; 4: MOV OUTPUT[2], TEMP[9]; 5: END InputsRead: 0x4000 (0b1000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=6 NumTemporaries=11 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1 (0b1) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x0 param[0] sz=4 UNIFORM unfobcolor = {1, 1, 1, 1} param[1] sz=4 SAMPLER samp0 = {0, 0, 0, 0} param[2] sz=1 CONST (null) = {1, 0, 0, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL CONST[0] DCL TEMP[0..2] IMM FLT32 { 1.0000, 0.0000, 0.0000, 0.0000} 0: TEX TEMP[0], IN[0].xyyy, SAMP[0], 2D 1: MOV_SAT TEMP[1].x, TEMP[0].wwww 2: MUL TEMP[2].xyz, TEMP[0].xyzx, CONST[0].xyzx 3: MUL TEMP[2].w, TEMP[1].xxxx, CONST[0].xxxw 4: MOV OUT[0], TEMP[2] 5: END # Vertex Program/Shader 120 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 5: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 6: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 7: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 8: MOV OUTPUT[16].xy, INPUT[17].xyxx; 9: END InputsRead: 0x20001 (0b10,00000000,00000001) OutputsWritten: 0x10001 (0b1,00000000,00000001) NumInstructions=10 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {0.028, 6.23e-18, 6.23e-18, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {-5.03e-18, 0.0226, 2.7e-09, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-7.71e-18, -4.14e-09, 0.0347, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {-0.673, 0.336, -1.92, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {2.19, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 2.92, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1.22, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -2.22, 0} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL CONST[0..7] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MUL TEMP[0], CONST[4], TEMP[1].xxxx 5: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 6: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 7: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 8: MOV OUT[1].xy, IN[1].xyxx 9: END # Fragment Program/Shader 126 0: TEX TEMP[2], INPUT[14].xyyy, texture[0], 2D; 1: MOV TEMP[5].xyz, TEMP[2].xyzx; 2: MOV_SAT TEMP[5].w, TEMP[2].xxxw; 3: MOV OUTPUT[2], TEMP[5]; 4: END InputsRead: 0x4000 (0b1000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=5 NumTemporaries=7 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1 (0b1) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x0 param[0] sz=4 SAMPLER samp0 = {0, 0, 0, 0} param[1] sz=1 CONST (null) = {1, 0, 0, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL TEMP[0..1] IMM FLT32 { 1.0000, 0.0000, 0.0000, 0.0000} 0: TEX TEMP[0], IN[0].xyyy, SAMP[0], 2D 1: MOV TEMP[1].xyz, TEMP[0].xyzx 2: MOV_SAT TEMP[1].w, TEMP[0].xxxw 3: MOV OUT[0], TEMP[1] 4: END # Vertex Program/Shader 126 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 5: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 6: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 7: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 8: MOV OUTPUT[16].xy, INPUT[17].xyxx; 9: END InputsRead: 0x20001 (0b10,00000000,00000001) OutputsWritten: 0x10001 (0b1,00000000,00000001) NumInstructions=10 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {1, 2.22e-16, 2.22e-16, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {2.22e-16, 7.55e-08, -1, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-2.22e-16, 1, 7.55e-08, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {0.72, 0.504, -1.92, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {2.19, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 2.92, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1.22, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -2.22, 0} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL CONST[0..7] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MUL TEMP[0], CONST[4], TEMP[1].xxxx 5: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 6: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 7: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 8: MOV OUT[1].xy, IN[1].xyxx 9: END # Fragment Program/Shader 123 0: TEX TEMP[2], INPUT[14].xyyy, texture[0], 2D; 1: MOV TEMP[5].xyz, TEMP[2].xyzx; 2: MOV_SAT TEMP[5].w, TEMP[2].xxxw; 3: MOV OUTPUT[2], TEMP[5]; 4: END InputsRead: 0x4000 (0b1000000,00000000) OutputsWritten: 0x4 (0b100) NumInstructions=5 NumTemporaries=7 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x1 (0b1) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x0 param[0] sz=4 SAMPLER samp0 = {0, 0, 0, 0} param[1] sz=1 CONST (null) = {1, 0, 0, 0} FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], GENERIC[10], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL TEMP[0..1] IMM FLT32 { 1.0000, 0.0000, 0.0000, 0.0000} 0: TEX TEMP[0], IN[0].xyyy, SAMP[0], 2D 1: MOV TEMP[1].xyz, TEMP[0].xyzx 2: MOV_SAT TEMP[1].w, TEMP[0].xxxw 3: MOV OUT[0], TEMP[1] 4: END # Vertex Program/Shader 123 0: MUL TEMP[0], STATE[0], INPUT[0].xxxx; 1: MAD TEMP[1], STATE[1], INPUT[0].yyyy, TEMP[0]; 2: MAD TEMP[0], STATE[2], INPUT[0].zzzz, TEMP[1]; 3: MAD TEMP[1], STATE[3], INPUT[0].wwww, TEMP[0]; 4: MUL TEMP[0], STATE[4], TEMP[1].xxxx; 5: MAD TEMP[2], STATE[5], TEMP[1].yyyy, TEMP[0]; 6: MAD TEMP[0], STATE[6], TEMP[1].zzzz, TEMP[2]; 7: MAD OUTPUT[0], STATE[7], TEMP[1].wwww, TEMP[0]; 8: MOV OUTPUT[16].xy, INPUT[17].xyxx; 9: END InputsRead: 0x20001 (0b10,00000000,00000001) OutputsWritten: 0x10001 (0b1,00000000,00000001) NumInstructions=10 NumTemporaries=3 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.modelview.transpose.row[0] = {1, 2.22e-16, 2.22e-16, 0} param[1] sz=4 STATE state.matrix.modelview.transpose.row[1] = {2.22e-16, 7.55e-08, -1, 0} param[2] sz=4 STATE state.matrix.modelview.transpose.row[2] = {-2.22e-16, 1, 7.55e-08, 0} param[3] sz=4 STATE state.matrix.modelview.transpose.row[3] = {-0.72, 0.504, -1.92, 1} param[4] sz=4 STATE state.matrix.projection.transpose.row[0] = {2.19, 0, 0, 0} param[5] sz=4 STATE state.matrix.projection.transpose.row[1] = {0, 2.92, 0, 0} param[6] sz=4 STATE state.matrix.projection.transpose.row[2] = {0, 0, -1.22, -1} param[7] sz=4 STATE state.matrix.projection.transpose.row[3] = {0, 0, -2.22, 0} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], GENERIC[10] DCL CONST[0..7] DCL TEMP[0..2] 0: MUL TEMP[0], CONST[0], IN[0].xxxx 1: MAD TEMP[1], CONST[1], IN[0].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[2], IN[0].zzzz, TEMP[1] 3: MAD TEMP[1], CONST[3], IN[0].wwww, TEMP[0] 4: MUL TEMP[0], CONST[4], TEMP[1].xxxx 5: MAD TEMP[2], CONST[5], TEMP[1].yyyy, TEMP[0] 6: MAD TEMP[0], CONST[6], TEMP[1].zzzz, TEMP[2] 7: MAD OUT[0], CONST[7], TEMP[1].wwww, TEMP[0] 8: MOV OUT[1].xy, IN[1].xyxx 9: END Could not read directoty (/home/sa/levels) failed, code 2 (No such file or directory) # Vertex Program/Shader 0 0: MUL TEMP[0], INPUT[0].xxxx, STATE[0]; 1: MAD TEMP[0], INPUT[0].yyyy, STATE[1], TEMP[0]; 2: MAD TEMP[0], INPUT[0].zzzz, STATE[2], TEMP[0]; 3: MAD OUTPUT[0], INPUT[0].wwww, STATE[3], TEMP[0]; 4: MOV OUTPUT[1], INPUT[3]; 5: DP4 TEMP[0], INPUT[0], STATE[6]; 6: ABS OUTPUT[3].x, TEMP[0]; 7: MOV OUTPUT[3].yzw, CONST[8]; 8: END InputsRead: 0x9 (0b1001) OutputsWritten: 0xb (0b1011) NumInstructions=9 NumTemporaries=1 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x3 param[0] sz=4 STATE state.matrix.mvp.transpose.row[0] = {2.19, 6.48e-16, -2.71e-16, -2.22e-16} param[1] sz=4 STATE state.matrix.mvp.transpose.row[1] = {4.86e-16, 2.2e-07, 1.22, 1} param[2] sz=4 STATE state.matrix.mvp.transpose.row[2] = {-4.86e-16, 2.92, -9.23e-08, -7.55e-08} param[3] sz=4 STATE state.matrix.mvp.transpose.row[3] = {9.35e-16, -0.021, 0.122, 1.92} param[4] sz=4 STATE state.matrix.modelview.row[0] = {1, 2.22e-16, -2.22e-16, 4.28e-16} param[5] sz=4 STATE state.matrix.modelview.row[1] = {2.22e-16, 7.55e-08, 1, -0.00721} param[6] sz=4 STATE state.matrix.modelview.row[2] = {2.22e-16, -1, 7.55e-08, -1.92} param[7] sz=4 STATE state.matrix.modelview.row[3] = {0, 0, 0, 1} param[8] sz=4 CONST (null) = {0, 0, 0, 1} VERT DCL IN[0] DCL IN[1] DCL OUT[0], POSITION DCL OUT[1], COLOR DCL OUT[2], FOG DCL CONST[0..7] DCL TEMP[0] IMM FLT32 { 0.0000, 1.0000, 0.0000, 0.0000} 0: MUL TEMP[0], IN[0].xxxx, CONST[0] 1: MAD TEMP[0], IN[0].yyyy, CONST[1], TEMP[0] 2: MAD TEMP[0], IN[0].zzzz, CONST[2], TEMP[0] 3: MAD OUT[0], IN[0].wwww, CONST[3], TEMP[0] 4: MOV OUT[1], IN[1] 5: DP4 TEMP[0], IN[0], CONST[6] 6: ABS OUT[2].x, TEMP[0] 7: MOV OUT[2].yzw, IMM[0].xxxy 8: END # Fragment Program/Shader 0 0: MAD_SAT TEMP[1].x, INPUT[3].xxxx, STATE[0].xxxx, STATE[0].yyyy; 1: LRP OUTPUT[2].xyz, TEMP[1].xxxx, TEMP[0], STATE[1]; 2: MOV OUTPUT[2].w, TEMP[0]; 3: END InputsRead: 0xa (0b1010) OutputsWritten: 0x0 (0b0) NumInstructions=4 NumTemporaries=2 NumParameters=0 NumAttributes=0 NumAddressRegs=0 IndirectRegisterFiles: 0x0 (0b0) SamplersUsed: 0x0 (0b0) Samplers=[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] dirty state flags: 0x20400040 param[0] sz=4 STATE state..internal.fogParamsOptimized = {-0.0385, 1.23, 0.144, 0.12} param[1] sz=4 STATE state.fog.color = {0.906, 0.883, 0.992, 0} state_tracker/st_mesa_to_tgsi.c:199:dst_register: Assertion `t->outputMapping[index] < (sizeof(t->outputs)/sizeof((t->outputs)[0]))' failed.