У меня есть простая анимированная модель, анимированная с помощью скининга, и я даю ей ShaderMaterial
, которая отображает ее нормали:
gl_FragColor = vec4(vNormal, 1.0);
https://codepen.io/marco_fugaro/pen/ZEEBjKz?editors=0010
Проблема в том, что нормали не обновляются при скиннинге модели, и они всегда остаются неизменными из неанимированного положения объекта (см. VertexNormalsHelper
).
Как мне обновить нормали или как получить нормали анимированных вершин?
model.geometry.computeVertexNormals()
не работает
ShaderMaterial
не похоже на то, что оно покажет вам нормали. Возможно, используйтеMeshNormalMaterial
. В противном случае, если вы хотите изменить стандартные материалы, вам нужно использоватьMaterial.onBeforeCompile
, чтобы получить все скины и другие функции. Пример использованияonBeforeCompile
здесь - person gman   schedule 20.10.2019onBeforeCompile
? - person Pontiacks   schedule 20.10.2019