intをそのままin/outで渡そうとするとコンパイルエラーになる.
// vertex shader
out int id;
void main() {
// snip.
}
// fragment shader
in int id;
void main() {
// snip.
}
回避するにはoutとinの手前に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等に詰めたほういい気がしている.