Morph Targets Three.js
Я пытаюсь начать с целей морфинга и three.js. Тем не менее, по-видимому, не так много документации по этому вопросу.
Как я смотрю на исходный код:
morphTargetInfluences []
кажется магией... как это работает? Как мне это использовать? Значение 1 полная сила? Как я могу различить разные цели морфа на одной и той же модели? Я просто пытаюсь понять:
morphTargetInfluences[].
заранее спасибо
2 ответа
http://threejs.org/examples/webgl_morphtargets.html
Морфинговые цели - это наборы положений геометрических вершин для автоматической интерполяции между ними. Вы можете изменить внешний вид геометрии в режиме реального времени, используя различные положения вершин, записанные в morphTargetInfluences[0], morphTargetInfluences[1], morphTargetInfluences[nSet]
, Вы можете смешивать множество видов (morphTargetInfluences) геометрии одновременно. Лучший способ - это формат JSONLoader, который можно экспортировать из 3DSMax, например: frame0 as morphTargetInfluences[0]
, frame1 as morphTargetInfluences[1]
и т. д.
Исходные геометрические вершины остаются нетронутыми, что можно проверить с помощью geometry.computeBoundingBox();
geometry.boundingBox();
Я был бы осторожен с этим подходом. Кажется, это основано на неполном понимании технологии.
Ценность Morph Targets заключается не в том, что вы можете анимировать путем замены отдельных вершин, а в том, что вы можете использовать альтернативную фигуру (ту же сетку с теми же вершинами, но каждая может быть в новом месте) в качестве цели деформации для вашей модели. (например: нейтральное лицо и улыбающееся лицо)
MorphTargetInfluence не содержит вершин. Это массив скалярных значений, которые представляют вес, назначенный каждой цели во время морфа. В приведенном выше примере с лицом [0.3] может привести к робкой улыбке, похожей на Мона Лизу, а [0.9] - к улыбке.