Posted at

vertex shader -> fragment shaderで整数型を渡す

More than 3 years have passed since last update.

intをそのままin/outで渡そうとするとコンパイルエラーになる.

// vertex shader

out int id;

void main() {
// snip.
}

// fragment shader

in int id;

void main() {
// snip.
}

回避するにはoutinの手前にflatをつけてあげる必要がある.

 // vertex shader

-out int id;
+flat out int id;

void main() {
// snip.
}

 // fragment shader

-in int id;
+flat in int id;

void main() {
// snip.
}

そもそもintを渡すこと自体があまりお行儀よくない気もするので,struct等に詰めたほういい気がしている.


References