Как заставить персонажа двигаться в Unity 2d + видео

2dlogoTransform Уроки Unity 5

В прошлой статье мы рассказывали вам как создать анимацию в 2d проекте Unity5. В этой статье мы продолжим и реализуем движение нашей «птицы» — персонажа при помощи компонента rigidbody 2d «физики».

На нашей сцене уже имеется заготовка персонажа с анимацией, добавим к ней компоненты Box Collider 2d и Rigidbody 2d и настроим компонент так как на скриншоте

rogibody2d

Далее создадим скрипт к примеру TransformPlayer с таким кодом:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TransformPlayer : MonoBehaviour {

    private Transform _transform;
    private Rigidbody2D _rigibody;
    
    // Use this for initialization
	void Start () {
        _transform = GetComponent();
        _rigibody = GetComponent();

    }
	
	// Update is called once per frame
	void Update () {
       
        if (Input.GetKey(KeyCode.W) && this._transform.localPosition.y <= 5f)
        {
          
            _rigibody.gravityScale = -0.5f;
        }
        else {
            _rigibody.gravityScale = 0.5f;
        }

Видео: Движение персонажа Unity 2D с нуляСкачать

Движение персонажа Unity 2D с нуля

Видео: #2 - Как научить персонажа двигаться в Unity 2DСкачать

#2 - Как научить персонажа двигаться в Unity 2D
} }

В этом скрипте указано, что при нажатии на кнопку w значение гравитации у персонажа меняется, а при отпускании, клавиши значение восстанавливается, таким образом, персонажа всегда падать, если не нажимать кнопку w.

Далее, как токового движения вперед у нас не реализовано,  но симуляцию движения можно реализовать при помощи фоновых объектов.

Добавим на сцену спрайты земли и продублируем 4 раза, на каждый компонент вешаем те же компоненты  Box Collider 2d и Rigidbody 2d, создадим еще один скрипт TransformGround

ground

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TransformGround : MonoBehaviour {


    public Transform GameObjectCamera;



    // Update is called once per frame
    void Update()
    {

Видео: 2D ДВИЖЕНИЕ ПЕРСОНАЖА В UNITY 🎮 | Движение И Прыжки | | Учебное Пособие По Unity | ПереводСкачать

2D ДВИЖЕНИЕ ПЕРСОНАЖА В UNITY 🎮 | Движение И Прыжки | | Учебное Пособие По Unity | Перевод

Видео: 2D контроллер движения персонажа в Unity - простой урокСкачать

2D контроллер движения персонажа в Unity - простой урок
this.gameObject.transform.localPosition = new Vector3(this.gameObject.transform.localPosition.x - 0.1f, this.gameObject.transform.localPosition.y, this.gameObject.transform.localPosition.z); } public void OnCollisionEnter2D(Collision2D collision) { if (collision.gameObject.tag == "barer") { this.transform.position = new Vector3(GameObjectCamera.transform.position.x, GameObjectCamera.transform.position.y, GameObjectCamera.transform.position.z); } } }

В этом скрипте, в методе Update реализована функция постоянного движения объекта по оси х , но при столкновении этого объекта с другим, у которого тэг barer, нашему объекту присвоится другая позиция на сцене, таким образом наши 4 объекта земли будут зациклены в движении .

Теперь подробнее… Создадим на камере два пустых объекта, один разместим слева и добавим Box Collider 2d и Rigidbody 2d, так же присвоим ему тэг, который указали в скрипте barer, а другой справа. Примерно так…

gameobject 2d

На объектах «земли» укажем этот объект который справа.

Теперь можно поверить запустив игру

transformrigibodi

Птица управляется, движение  земли создает эффект движения птицы. В следующих уроках можно реализовать рандомное появление объектов на сцене и столкновение персонажа с ними. На это все удачных проектов.

Видео

Управление 2D персонажем в Unity 2D | Для новичков | Gamedev - Разработка игрСкачать

Управление 2D персонажем в Unity 2D | Для новичков | Gamedev - Разработка игр

Движение персонажа в Unity 2D (для чайников)Скачать

Движение персонажа в Unity 2D (для чайников)

Как создать движение персонажа в Unity 2D .Движение по горизонтале.Скачать

Как создать движение персонажа в Unity 2D .Движение по горизонтале.

Top down передвижение в UnityСкачать

Top down передвижение в Unity

[UNITY3D] 4 способа задать движение объектуСкачать

[UNITY3D] 4 способа задать движение объекту

Как научить персонажа двигаться в 2D и 3D играх | Уроки по Unity 3DСкачать

Как научить персонажа двигаться в 2D и 3D играх | Уроки по Unity 3D

АНИМАЦИЯ ПЕРСОНАЖА В UNITY #2 || Unity C# Уроки Создание Игр На Андроид 2DСкачать

АНИМАЦИЯ ПЕРСОНАЖА В UNITY #2 || Unity C# Уроки Создание Игр На Андроид 2D

Делаем 2д игру на Unity №1 Передвижение персонажа и анимацияСкачать

Делаем 2д игру на Unity №1 Передвижение персонажа и анимация

Передвижение персонажа в Юнити 2D(Туториал)Скачать

Передвижение персонажа в Юнити 2D(Туториал)

Переход анимации ( движение персонажа - ближний бой ) - Unity легкоСкачать

Переход анимации ( движение персонажа - ближний бой ) - Unity легко

Как сделать движение персонажем на телефоне | Движение персонажа в юнитиСкачать

Как сделать движение персонажем на телефоне | Движение персонажа в юнити

Создание 2D (PixelArt) RPG в Unity #2 - Передвижение персонажаСкачать

Создание 2D (PixelArt) RPG в Unity #2  - Передвижение персонажа

Управление персонажем в Unity 2021Скачать

Управление персонажем в Unity 2021

Анимации в Unity 2D | Для новичков | Gamedev - Разработка игрСкачать

Анимации в Unity 2D | Для новичков | Gamedev - Разработка игр

Переход анимации персонажа - Unity легкоСкачать

Переход анимации персонажа - Unity легко

УПРАВЛЕНИЕ НА АНДРОИД В UNITY - 2D Кнопки, Джойстик на Android / Unity Уроки C#Скачать

УПРАВЛЕНИЕ НА АНДРОИД В UNITY - 2D Кнопки, Джойстик на Android / Unity Уроки C#
Поделиться или сохранить к себе:
3dgame-creator
Добавить комментарий

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