In a GLSL shader, I want to create a function that looks a bit like this :
void MyFunction(out float results[9])
{
float value0 = 3.1546;
float value1 = 42; // whatever value
/* ... long, complicated code ... */
results[0] = value0;
results[1] = value1;
results[2] = value2;
...
}
Can such a function signature be used and compiled in GLSL ?
If no, are there any alternatives ?
Yes, this is legal GLSL code.
That doesn't mean it will certainly compile, but it is legal code. That being said, it's probably better to just return the array (which you can also do), rather than pass it as an output parameter.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With