1*c8dee2aaSAndroid Build Coastguard Workerstruct InnerLUT 2*c8dee2aaSAndroid Build Coastguard Worker{ 3*c8dee2aaSAndroid Build Coastguard Worker float3 values; 4*c8dee2aaSAndroid Build Coastguard Worker}; 5*c8dee2aaSAndroid Build Coastguard Worker 6*c8dee2aaSAndroid Build Coastguard Workerstruct OuterLUT 7*c8dee2aaSAndroid Build Coastguard Worker{ 8*c8dee2aaSAndroid Build Coastguard Worker InnerLUT inner[3]; 9*c8dee2aaSAndroid Build Coastguard Worker}; 10*c8dee2aaSAndroid Build Coastguard Worker 11*c8dee2aaSAndroid Build Coastguard Workerstruct Root 12*c8dee2aaSAndroid Build Coastguard Worker{ 13*c8dee2aaSAndroid Build Coastguard Worker int valueAtRoot; 14*c8dee2aaSAndroid Build Coastguard Worker OuterLUT outer[3]; 15*c8dee2aaSAndroid Build Coastguard Worker}; 16*c8dee2aaSAndroid Build Coastguard Worker 17*c8dee2aaSAndroid Build Coastguard Workercbuffer _UniformBuffer : register(b0, space0) 18*c8dee2aaSAndroid Build Coastguard Worker{ 19*c8dee2aaSAndroid Build Coastguard Worker float4 _7_colorGreen : packoffset(c0); 20*c8dee2aaSAndroid Build Coastguard Worker float4 _7_colorRed : packoffset(c1); 21*c8dee2aaSAndroid Build Coastguard Worker}; 22*c8dee2aaSAndroid Build Coastguard Worker 23*c8dee2aaSAndroid Build Coastguard Worker 24*c8dee2aaSAndroid Build Coastguard Workerstatic float4 sk_FragColor; 25*c8dee2aaSAndroid Build Coastguard Worker 26*c8dee2aaSAndroid Build Coastguard Workerstruct SPIRV_Cross_Output 27*c8dee2aaSAndroid Build Coastguard Worker{ 28*c8dee2aaSAndroid Build Coastguard Worker float4 sk_FragColor : SV_Target0; 29*c8dee2aaSAndroid Build Coastguard Worker}; 30*c8dee2aaSAndroid Build Coastguard Worker 31*c8dee2aaSAndroid Build Coastguard Workerfloat4 main(float2 _21) 32*c8dee2aaSAndroid Build Coastguard Worker{ 33*c8dee2aaSAndroid Build Coastguard Worker Root data = { 0, { { { { 0.0f.xxx }, { 0.0f.xxx }, { 0.0f.xxx } } }, { { { 0.0f.xxx }, { 0.0f.xxx }, { 0.0f.xxx } } }, { { { 0.0f.xxx }, { 0.0f.xxx }, { 0.0f.xxx } } } } }; 34*c8dee2aaSAndroid Build Coastguard Worker data.valueAtRoot = 1234; 35*c8dee2aaSAndroid Build Coastguard Worker float3 values = 0.0f.xxx; 36*c8dee2aaSAndroid Build Coastguard Worker for (int i = 0; i < 3; i++) 37*c8dee2aaSAndroid Build Coastguard Worker { 38*c8dee2aaSAndroid Build Coastguard Worker for (int j = 0; j < 3; j++) 39*c8dee2aaSAndroid Build Coastguard Worker { 40*c8dee2aaSAndroid Build Coastguard Worker values += float3(1.0f, 10.0f, 100.0f); 41*c8dee2aaSAndroid Build Coastguard Worker for (int k = 0; k < 3; k++) 42*c8dee2aaSAndroid Build Coastguard Worker { 43*c8dee2aaSAndroid Build Coastguard Worker data.outer[i].inner[j].values[k] = values[k]; 44*c8dee2aaSAndroid Build Coastguard Worker } 45*c8dee2aaSAndroid Build Coastguard Worker } 46*c8dee2aaSAndroid Build Coastguard Worker } 47*c8dee2aaSAndroid Build Coastguard Worker bool _99 = false; 48*c8dee2aaSAndroid Build Coastguard Worker if (data.valueAtRoot == 1234) 49*c8dee2aaSAndroid Build Coastguard Worker { 50*c8dee2aaSAndroid Build Coastguard Worker _99 = all(bool3(data.outer[0].inner[0].values.x == float3(1.0f, 10.0f, 100.0f).x, data.outer[0].inner[0].values.y == float3(1.0f, 10.0f, 100.0f).y, data.outer[0].inner[0].values.z == float3(1.0f, 10.0f, 100.0f).z)); 51*c8dee2aaSAndroid Build Coastguard Worker } 52*c8dee2aaSAndroid Build Coastguard Worker else 53*c8dee2aaSAndroid Build Coastguard Worker { 54*c8dee2aaSAndroid Build Coastguard Worker _99 = false; 55*c8dee2aaSAndroid Build Coastguard Worker } 56*c8dee2aaSAndroid Build Coastguard Worker bool _110 = false; 57*c8dee2aaSAndroid Build Coastguard Worker if (_99) 58*c8dee2aaSAndroid Build Coastguard Worker { 59*c8dee2aaSAndroid Build Coastguard Worker _110 = all(bool3(data.outer[0].inner[1].values.x == float3(2.0f, 20.0f, 200.0f).x, data.outer[0].inner[1].values.y == float3(2.0f, 20.0f, 200.0f).y, data.outer[0].inner[1].values.z == float3(2.0f, 20.0f, 200.0f).z)); 60*c8dee2aaSAndroid Build Coastguard Worker } 61*c8dee2aaSAndroid Build Coastguard Worker else 62*c8dee2aaSAndroid Build Coastguard Worker { 63*c8dee2aaSAndroid Build Coastguard Worker _110 = false; 64*c8dee2aaSAndroid Build Coastguard Worker } 65*c8dee2aaSAndroid Build Coastguard Worker bool _122 = false; 66*c8dee2aaSAndroid Build Coastguard Worker if (_110) 67*c8dee2aaSAndroid Build Coastguard Worker { 68*c8dee2aaSAndroid Build Coastguard Worker _122 = all(bool3(data.outer[0].inner[2].values.x == float3(3.0f, 30.0f, 300.0f).x, data.outer[0].inner[2].values.y == float3(3.0f, 30.0f, 300.0f).y, data.outer[0].inner[2].values.z == float3(3.0f, 30.0f, 300.0f).z)); 69*c8dee2aaSAndroid Build Coastguard Worker } 70*c8dee2aaSAndroid Build Coastguard Worker else 71*c8dee2aaSAndroid Build Coastguard Worker { 72*c8dee2aaSAndroid Build Coastguard Worker _122 = false; 73*c8dee2aaSAndroid Build Coastguard Worker } 74*c8dee2aaSAndroid Build Coastguard Worker bool _133 = false; 75*c8dee2aaSAndroid Build Coastguard Worker if (_122) 76*c8dee2aaSAndroid Build Coastguard Worker { 77*c8dee2aaSAndroid Build Coastguard Worker _133 = all(bool3(data.outer[1].inner[0].values.x == float3(4.0f, 40.0f, 400.0f).x, data.outer[1].inner[0].values.y == float3(4.0f, 40.0f, 400.0f).y, data.outer[1].inner[0].values.z == float3(4.0f, 40.0f, 400.0f).z)); 78*c8dee2aaSAndroid Build Coastguard Worker } 79*c8dee2aaSAndroid Build Coastguard Worker else 80*c8dee2aaSAndroid Build Coastguard Worker { 81*c8dee2aaSAndroid Build Coastguard Worker _133 = false; 82*c8dee2aaSAndroid Build Coastguard Worker } 83*c8dee2aaSAndroid Build Coastguard Worker bool _144 = false; 84*c8dee2aaSAndroid Build Coastguard Worker if (_133) 85*c8dee2aaSAndroid Build Coastguard Worker { 86*c8dee2aaSAndroid Build Coastguard Worker _144 = all(bool3(data.outer[1].inner[1].values.x == float3(5.0f, 50.0f, 500.0f).x, data.outer[1].inner[1].values.y == float3(5.0f, 50.0f, 500.0f).y, data.outer[1].inner[1].values.z == float3(5.0f, 50.0f, 500.0f).z)); 87*c8dee2aaSAndroid Build Coastguard Worker } 88*c8dee2aaSAndroid Build Coastguard Worker else 89*c8dee2aaSAndroid Build Coastguard Worker { 90*c8dee2aaSAndroid Build Coastguard Worker _144 = false; 91*c8dee2aaSAndroid Build Coastguard Worker } 92*c8dee2aaSAndroid Build Coastguard Worker bool _155 = false; 93*c8dee2aaSAndroid Build Coastguard Worker if (_144) 94*c8dee2aaSAndroid Build Coastguard Worker { 95*c8dee2aaSAndroid Build Coastguard Worker _155 = all(bool3(data.outer[1].inner[2].values.x == float3(6.0f, 60.0f, 600.0f).x, data.outer[1].inner[2].values.y == float3(6.0f, 60.0f, 600.0f).y, data.outer[1].inner[2].values.z == float3(6.0f, 60.0f, 600.0f).z)); 96*c8dee2aaSAndroid Build Coastguard Worker } 97*c8dee2aaSAndroid Build Coastguard Worker else 98*c8dee2aaSAndroid Build Coastguard Worker { 99*c8dee2aaSAndroid Build Coastguard Worker _155 = false; 100*c8dee2aaSAndroid Build Coastguard Worker } 101*c8dee2aaSAndroid Build Coastguard Worker bool _166 = false; 102*c8dee2aaSAndroid Build Coastguard Worker if (_155) 103*c8dee2aaSAndroid Build Coastguard Worker { 104*c8dee2aaSAndroid Build Coastguard Worker _166 = all(bool3(data.outer[2].inner[0].values.x == float3(7.0f, 70.0f, 700.0f).x, data.outer[2].inner[0].values.y == float3(7.0f, 70.0f, 700.0f).y, data.outer[2].inner[0].values.z == float3(7.0f, 70.0f, 700.0f).z)); 105*c8dee2aaSAndroid Build Coastguard Worker } 106*c8dee2aaSAndroid Build Coastguard Worker else 107*c8dee2aaSAndroid Build Coastguard Worker { 108*c8dee2aaSAndroid Build Coastguard Worker _166 = false; 109*c8dee2aaSAndroid Build Coastguard Worker } 110*c8dee2aaSAndroid Build Coastguard Worker bool _177 = false; 111*c8dee2aaSAndroid Build Coastguard Worker if (_166) 112*c8dee2aaSAndroid Build Coastguard Worker { 113*c8dee2aaSAndroid Build Coastguard Worker _177 = all(bool3(data.outer[2].inner[1].values.x == float3(8.0f, 80.0f, 800.0f).x, data.outer[2].inner[1].values.y == float3(8.0f, 80.0f, 800.0f).y, data.outer[2].inner[1].values.z == float3(8.0f, 80.0f, 800.0f).z)); 114*c8dee2aaSAndroid Build Coastguard Worker } 115*c8dee2aaSAndroid Build Coastguard Worker else 116*c8dee2aaSAndroid Build Coastguard Worker { 117*c8dee2aaSAndroid Build Coastguard Worker _177 = false; 118*c8dee2aaSAndroid Build Coastguard Worker } 119*c8dee2aaSAndroid Build Coastguard Worker bool _188 = false; 120*c8dee2aaSAndroid Build Coastguard Worker if (_177) 121*c8dee2aaSAndroid Build Coastguard Worker { 122*c8dee2aaSAndroid Build Coastguard Worker _188 = all(bool3(data.outer[2].inner[2].values.x == float3(9.0f, 90.0f, 900.0f).x, data.outer[2].inner[2].values.y == float3(9.0f, 90.0f, 900.0f).y, data.outer[2].inner[2].values.z == float3(9.0f, 90.0f, 900.0f).z)); 123*c8dee2aaSAndroid Build Coastguard Worker } 124*c8dee2aaSAndroid Build Coastguard Worker else 125*c8dee2aaSAndroid Build Coastguard Worker { 126*c8dee2aaSAndroid Build Coastguard Worker _188 = false; 127*c8dee2aaSAndroid Build Coastguard Worker } 128*c8dee2aaSAndroid Build Coastguard Worker bool ok = _188; 129*c8dee2aaSAndroid Build Coastguard Worker float4 _189 = 0.0f.xxxx; 130*c8dee2aaSAndroid Build Coastguard Worker if (_188) 131*c8dee2aaSAndroid Build Coastguard Worker { 132*c8dee2aaSAndroid Build Coastguard Worker _189 = _7_colorGreen; 133*c8dee2aaSAndroid Build Coastguard Worker } 134*c8dee2aaSAndroid Build Coastguard Worker else 135*c8dee2aaSAndroid Build Coastguard Worker { 136*c8dee2aaSAndroid Build Coastguard Worker _189 = _7_colorRed; 137*c8dee2aaSAndroid Build Coastguard Worker } 138*c8dee2aaSAndroid Build Coastguard Worker return _189; 139*c8dee2aaSAndroid Build Coastguard Worker} 140*c8dee2aaSAndroid Build Coastguard Worker 141*c8dee2aaSAndroid Build Coastguard Workervoid frag_main() 142*c8dee2aaSAndroid Build Coastguard Worker{ 143*c8dee2aaSAndroid Build Coastguard Worker float2 _17 = 0.0f.xx; 144*c8dee2aaSAndroid Build Coastguard Worker sk_FragColor = main(_17); 145*c8dee2aaSAndroid Build Coastguard Worker} 146*c8dee2aaSAndroid Build Coastguard Worker 147*c8dee2aaSAndroid Build Coastguard WorkerSPIRV_Cross_Output main() 148*c8dee2aaSAndroid Build Coastguard Worker{ 149*c8dee2aaSAndroid Build Coastguard Worker frag_main(); 150*c8dee2aaSAndroid Build Coastguard Worker SPIRV_Cross_Output stage_output; 151*c8dee2aaSAndroid Build Coastguard Worker stage_output.sk_FragColor = sk_FragColor; 152*c8dee2aaSAndroid Build Coastguard Worker return stage_output; 153*c8dee2aaSAndroid Build Coastguard Worker} 154