в результате у них и нормали внутрь залезли.
Я в математике неоч, но правильно ли я понимаю, что надо нормали умножать не на мировую матрицу, а на отдельную? Это же вектора, и на них translate/scale никак вроде бы не влияет?
worldMat = granddad * dad * parent * current;
normalWorldMat = (granddadQuat * dadQuat * parentQuat * currentQuat).toMat4();
Все верно, нормали и касательные нужно преобразовать нормальной матрицей: transpose(inverse(modelView))
Отрицательный скейл разве не меняет ориентацию треугольников? Если так, то они будут рендериться только если отрисовка back и front включена
А какой математический смысл в отрицательном скейле? Перевернутая картинка?
Зеркальное отображение (на мешах тоже).
Обсуждают сегодня