RESOLVED: Touchdesigner.2020.44350 GLSL inputs (second and third) broken with texture 3d

Hi guys i’ve discovered that in the glsl top (pixel shader) texture 3d inputs doesn’t works on each inputs channel. (the 3d texture works well only on the first channel)

vec4 color = texture(sTD3DInputs[0], vUV.stp) (ok…i’ve the the visualization of the shader as tex3d top)

vec4 color = texture(sTD3DInputs[1], vUV.stp)
-----------------------------ERROR ---------------------------------
Vertex Shader Compile Results:

Compiled Successfully

=============

Pixel Shader Compile Results:
0(9) : error C1068: array index out of bounds

=============

Program Link Results:
Fragment info

0(9) : error C1068: array index out of bounds
(0) : error C2003: incompatible options for link

What do you have connected to the first input?

i’m using a 3d texture using 3d output in glsl top (the problem is the same on glsl top, multi, and compute shader)

i’ve just tried to download the new experimental to check if the problem is fixed for some reasons.

bug glsl compute.toe (127.7 KB)

am i wrong something?

(just recreated the error with the new experimental)

The issue is that all arrays start counting at index 0, so for your second input, since it’s a different type it’s put into a different array, and thus needs to be access starting at index 0, not 1.
If both inputs were the same type (3d texture), then you’d access them using 0 and 1

1 Like