Пятница, 19 Апреля 2024, 06:18

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Привязать к вершине GameObject?
Привязать к вершине GameObject?
alexsilentДата: Понедельник, 03 Октября 2016, 20:39 | Сообщение # 1
почти ветеран
Сейчас нет на сайте
Привязать к вершине GameObject?
Хочу сделать анимацию с помощью Морфинга, и я не смогу предугадать все положения определённой вершины,
хотелось бы к этой вершине привязать объект, чтобы он стал чайлдом и всегда изменял позицию и угол в соответствии вершины!
Реально ли?
Или хотя бы всегда передавать в скрипт сообщения о позиции вершины.

Почему я нехочу использовать скелетную анимацию? Я разрабатываю идею, 2Д персонажа в 3Д перспективе,
там нужно создать псевдообъем, скелетная анимация не способна на это, только морфинг.



Сообщение отредактировал alexsilent - Понедельник, 03 Октября 2016, 20:48
URGINSANДата: Понедельник, 03 Октября 2016, 21:28 | Сообщение # 2
почти ветеран
Сейчас нет на сайте
alexsilent, по идее можно получить массив вершин модели. Оттуда уже привязывать. Код не знаю, но по-любому это обсуждалось на офф сайте английском.

Я на драйве
LertmindДата: Понедельник, 03 Октября 2016, 21:44 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
Тебе точно необходимо использовать морфинг (вроде это реализуется только через Skinned Mesh Renderer)? Анимацией спрайтов не обойтись?
Я нашёл только один способ - использовать SkinnedMeshRenderer.BakeMesh(), чтобы получить меш, обратиться к Mesh.vertices и не забыть применить Transform.TransformPoint() для получения мировых координат (или использовать матрицу). Realtime vertex position of a SkinnedMesh - здесь есть пример на JS, но он похоже только для костей.

Есть ещё одна бредовая идея: сделать анимацию/морфинг для одной вершины, которая будет сопоставлена с вершиной, или реализовать самому интерполяцию (с кривыми как вариант) по ключевым положениям вершин (кажется это можно провернуть в редакторе, заранее вызывая SkinnedMeshRenderer.BakeMesh для разных значений морфинга, тогда будет меньше вычислений в рантайм).

Добавлено (03 октября 2016, 21:44)
---------------------------------------------
Пока искал инфу URGINSAN ответил, в первом абзаце как раз об этом, но подробнее.


Сообщение отредактировал Lertmind - Понедельник, 03 Октября 2016, 21:47
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Привязать к вершине GameObject?
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг