Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Про анимацию в Roblox Studio

Nya~ Мастер (1530), открыт 4 недели назад
Создавая игру пришлось столкнуться с этой новой для меня темой.

С анимацией Humanoid-а я примерно разобрался, но как добавить в анимацию посторонние блоки и другие объекты?
Я хотел бы анимацию как Риг берет какой нибудь блок, но как соединить этот блок с рукой Рига во время анимации? Или это делается по другому?
2 ответа
Агент fristalix Профи (549) 4 недели назад
Создание анимации в Roblox Studio, особенно с участием посторонних объектов, требует немного больше усилий, чем простая анимация персонажей. Давайте разберемся шаг за шагом, как добавить в анимацию внешние объекты и как привязать их к руке рига.

### Шаги для добавления объекта в анимацию:

1. **Добавьте объект в сцену:**
- Сначала добавьте нужный объект (блок или другой элемент) в рабочую область Roblox Studio. Вы можете сделать это через вкладку "Explorer" или перетащив модель из каталога.

2. **Привяжите объект к руке рига:**
- Теперь нам нужно привязать объект к определенной части рига, обычно это рука. Для этого используется функция "WeldConstraint" или "Motor6D".

3. **Использование WeldConstraint:**
- Создайте скрипт, который будет управлять привязыванием объекта к руке рига. Пример кода:
```lua
local rig = game.Workspace.HumanoidRootPart -- Предположим, что это часть руки рига
local object = game.Workspace.Block -- Объект, который мы хотим прикрепить

local weld = Instance.new("WeldConstraint")
weld.Parent = object
weld.Part0 = rig
weld.Part1 = object
```
- Этот код создаст ограничение сварки между объектом и частью руки рига.

4. **Использование Motor6D:**
- Альтернативным способом является использование Motor6D, который дает больше контроля над позицией и вращением объекта относительно руки рига. Пример кода:
```lua
local rig = game.Workspace.HumanoidRootPart
local object = game.Workspace.Block

local motor = Instance.new("Motor6D")
motor.Parent = object
motor.Part0 = rig
motor.Part1 = object
motor.C0 = CFrame.new(0, 0, 0) -- Позиция относительно руки рига
motor.C1 = CFrame.Angles(math.rad(90), math.rad(45), 0) -- Углы вращения
```
- Motor6D позволит вам точнее контролировать положение и ориентацию объекта относительно руки рига.

5. **Анимация с использованием привязанного объекта:**
- После того как объект привязан к руке рига, вы можете создавать анимацию, используя стандартный инструмент Animate в Roblox Studio. Просто создайте ключевые кадры для перемещения руки рига, и объект будет следовать за ней.

### Итоги:
- Добавляйте объект в сцену.
- Привяжите объект к руке рига с помощью WeldConstraint или Motor6D.
- Создавайте анимацию с учетом привязанного объекта.

Этот подход позволит вам интегрировать посторонние объекты в анимацию ваших ригов, делая сцены более динамичными и интересными.
PS Просветленный (23501) 4 недели назад
Мотор6Д или ВелдКонстрейнт в нужный момент через скрипт прицепить к руке – такое видимо не приходило в голову.
Похожие вопросы