| uniform short s; |
| uniform short2 s2; |
| uniform short3 s3; |
| uniform short4 s4; |
| |
| uniform bool b; |
| uniform bool2 b2; |
| uniform bool3 b3; |
| uniform bool4 b4; |
| |
| // Structs and interface blocks are valid SkSL uniforms but their member types are restricted. |
| struct InvalidStruct1 { |
| float f; // valid |
| bool b; // invalid |
| }; |
| |
| struct InvalidStruct2 { |
| InvalidStruct1 s; |
| }; |
| |
| uniform InvalidStruct1 st1; |
| uniform InvalidStruct2 st2; |
| |
| uniform invalidBlock { |
| float f; // valid |
| bool b; // invalid |
| } ib; |
| |
| half4 main(float2 coords) { |
| return half4(0); |
| } |
| |
| /*%%* |
| variables of type 'bool' may not be uniform |
| variables of type 'bool2' may not be uniform |
| variables of type 'bool3' may not be uniform |
| variables of type 'bool4' may not be uniform |
| variables of type 'bool' may not be uniform |
| variables of type 'bool' may not be uniform |
| variables of type 'bool' may not be uniform |
| *%%*/ |