Можете ли вы определить, включен ли атрибут вершины из вершинного шейдера?

мне было интересно, есть ли способ узнать, включен ли атрибут вершины из вершинного шейдера? Я знаю, что если атрибут вершины отключен, все значения будут обрабатываться как 0,0, поэтому я мог бы провести тест, подобный следующему:

if (attribute == 0)
{
    // Do something different to normal.
}
else
{
    // Use the attribute.
}

Но это имеет очевидную проблему для случая, когда атрибут включен, а значение просто установлен в 0 (он будет считаться отключенным)!

Другим решением было бы просто использовать универсальную переменную, которая указывает, использовать ли атрибут или нет, но мне было интересно, есть ли что-нибудь, встроенное в GLSL, которое могло бы это сделать?

7
задан THelper 3 May 2012 в 13:17
поделиться