頂点シェーダ内で頂点属性が有効になっているかどうかを知る方法があるのだろうかと思っていましたか?私は頂点属性が無効になっている場合、すべての値が0.0として扱われることを知っているので、私は次のようなテストを行うことができます:頂点シェーダ内から頂点属性が有効になっているかどうか確認できますか?
if (attribute == 0)
{
// Do something different to normal.
}
else
{
// Use the attribute.
}
しかし、これは属性が有効になっている場合のための明白な問題があり、値は0に設定されます(無効の場合と同様に扱われます)。
もう1つの解決策は、属性を使用するかどうかを明記する統一変数を使用することですが、GLSLに組み込まれているものがあれば疑問に思っていましたか?
ありがとうございました!それは私が行ったことです。これが将来GLSL機能になることができればうれしいでしょう! –