1uniform half4 colorGreen; 2 3inline half4 inner() { 4 return half4(distance(colorGreen.ra, colorGreen.ra), 5 distance(colorGreen.ra, colorGreen.ga), 6 distance(colorGreen.ra, colorGreen.ba), 7 distance(colorGreen.ra, colorGreen.aa)); 8} 9 10noinline half4 outer() { 11 // The `distance` variable should not interfere with the `distance` intrinsic. 12 half distance = colorGreen.a; 13 half4 color = inner(); 14 return color * distance; 15} 16 17half4 main(float2 coords) { 18 return outer(); 19} 20