Unity 5 . Physics Car

logo Уроки

Движение автомобиля и настройка физики в Unity.

В этом уроке я хочу рассказать вам как создать физику и движение автомобиля. Для этого нам потребуется модель самого авто/машина (без колес) и сами колеса, так же нам нужно скачать бесплатный ассет для unity, Car System, из которого мы возьмем несколько скриптов для нашего авто.

И так, начнем! Я использовал модель ЗИЛа, сделав в blender его колеса отдельными объектами.

zilmodel

Если вам потребуется модель можете скачать здесь.

Создадим плоскость или terrain, для того, чтобы наш автомобиль смог двигаться и перенесем модель зила на сцену.

Перейдем в Asset Store и импортируем в наш проект CarSystem.

До того как начать настраивать физику автомобиля, необходимо подготовить нашу модель. Добавим компонент Rigibody к нашей модели.

Создадим пустой объект на сцене и сделаем его дочерним нашей модели зила.

emptyzil

К этому объекту создадим еще 4 пустышки и переименуем их.

whellempty

К каждому из этих объектов добавим компонент WheelCollider и настроим их таким образом:

whelkolesso2

Расположим их так, чтобы они находились примерно в каждом колесе (важно назначить каждому компоненту имя, чтобы не перепутать их в дальнейшем местами).

wheelvkoleso

Вернемся на нашу модель и добавим скрипт Car из ассета CarSystem.

В скрипте Car откроем вкладку Wheel и добавим 4 колеса, в каждом колесе в строках whell collider укажем наши пустышки с компонентами wheel collider, в строке wheel transform укажем наши колеса. (Будьте внимательны, каждый коллайдер должен совпадать с расположением колеса, т.е. если вы указали коллайдер переднего правого колеса, то и модель колеса должна быть указана передняя правая, иначе ничего не получится). Советую для начала указать первые два колеса передние, для них поставить галочки ismotor и isfront.  В строке  Engine torque  указать значение 0.22. Для задних колес, тот же параметр будет равен 0.28 и так же стоять галочки только на ismotor.

Передние колеса

frontwheel

Задние колеса

backwhell

Укажем массу зила в компоненте rigibody и в скрипте car равную 4300. Вкладку Engine настроем вот так:

massengine

Во вкладке Transmission в строке defferintial rotation укажите 2.67, в строке front bake torque 4500 и в строке Back Brake Torque 4000

transsm

далее в строках max speed укажите 90 и hp 100

maxspeed

Нажмите на график Gear Ration_Curve и создайте примерно такой график (чтоб создать точку нажмите правой кнопкой мыши на график  и выберете Add Key)

graph

В этом скрипте больше ничего настраивать не нужно, следующие скрипты которые нужно добавить на авто это: car control, wings, steering, tcs system, anti roll bar 2 шт и user input.

В одном скрипте anti roll bar укажите компоненты с wheel collider передние, а в другом задние

antirollbar

Теперь создадим еще одну пустышку к нашему авто и  добавим к ней box collider, настроем его примерно так:

collider

Теперь можно проверить игру, ЗИЛ двигается, но средние колеса не крутятся, для этого создадим скрипт Transformwhel, который будет повторять за задними колесами.

using UnityEngine;

using System.Collections;

public class Transformwhell : MonoBehaviour {

Видео:Unity 5: Car Physics (Multipurpose) || Version 0.6 (Beta) || Drift Mod || Graphics settingsСкачать

Unity 5: Car Physics (Multipurpose)  || Version 0.6 (Beta) || Drift Mod || Graphics settings
public Transform whell2; void Update () { this.transform.rotation = whell2.transform.rotation; } }

Этот скрипт поместим на средние колеса и укажем в строке whell2 одно из задних колес.

sredniewheel

Снова проверяем, если все компоненты настроено правильно, то все получится и наш авто поедет.

physicscar1

Скачать проект можно здесь.

💡 Видео

Unity 5 Vehicle PhysicsСкачать

Unity 5 Vehicle Physics

Unity 5: Car Physics (Multipurpose) for Asset Store || Version 0.5 (Beta)Скачать

Unity 5: Car Physics (Multipurpose) for Asset Store || Version 0.5 (Beta)

Unity3d Car Racing PhysicsСкачать

Unity3d Car Racing Physics

Sim-Cade Vehicle Physics:The Ultimate Solution for Creating Fast-Paced Vehicle Games in Unity ashdevСкачать

Sim-Cade Vehicle Physics:The Ultimate Solution for Creating Fast-Paced Vehicle Games in Unity ashdev

Unity Wheel Collider vs Wheel Controller 3DСкачать

Unity Wheel Collider vs Wheel Controller 3D

Simple Car Controller in Unity TutorialСкачать

Simple Car Controller in Unity Tutorial

Car physics like a gta 5 (almost) - Unity prototypeСкачать

Car physics like a gta 5 (almost) - Unity prototype

Vehicle Physics Pro (alpha) in Unity 5 previewСкачать

Vehicle Physics Pro (alpha) in Unity 5 preview

Unity 5 Buggy Fun - Vehicle PhysicsСкачать

Unity 5 Buggy Fun - Vehicle Physics

Unity 5: Car Physics (Multipurpose) || Version 0.6 (Beta) || Instructions InstallationСкачать

Unity 5: Car Physics (Multipurpose) || Version 0.6 (Beta) || Instructions Installation

Car physics like a GTA4 - Unity prototypeСкачать

Car physics like a GTA4 - Unity prototype

[Unity] Street Racing Car Controller (Sim-cade Vehicle Physics) - Update 5Скачать

[Unity] Street Racing Car Controller (Sim-cade Vehicle Physics) - Update 5

Creating GTA-Style Car Physics in Unity Using ChatGPTСкачать

Creating GTA-Style Car Physics in Unity Using ChatGPT

I can't believe these Car Crash Physics work in Unity | Dev Progress #6Скачать

I can't believe these Car Crash Physics work in Unity | Dev Progress #6

Making a Drift Game... But I Have No Experience in Game DevelopmentСкачать

Making a Drift Game... But I Have No Experience in Game Development
Поделиться или сохранить к себе:
Технологичная помощь
Добавить комментарий

Нажимая на кнопку "Отправить комментарий", я даю согласие на обработку персональных данных, принимаю Политику конфиденциальности и условия Пользовательского соглашения.

  1. Shram

    Добрый день ! Поделитесь пожалуйста «CarSystem»
    За ранее спасибо большое.

    Ответить
  2. Ванька

    Че за CarSystem, такого нету в asset store

    Ответить