На нашем сайте мы используем cookie для сбора информации технического характера и обрабатываем IP-адрес вашего местоположения. Продолжая использовать этот сайт, вы даете согласие на использование файлов cookies. Здесь вы можете узнать, как мы пользуемся файлами cookies.
Я согласен
логотип upread.ru

2D платформер на Unity: управляем котом с помощью джойстика


Как только появилось немного свободного времени, я продолжил знакомство с Unity 3d. В конечном итоге я хочу создать простенький двумерный (2D) платформер – игру, в которой персонажем можно управлять с помощью джойстика. В этом уроке я расскажу вам, как буквально за несколько минут можно создать персонажа и играть в Unity 3d.

Как обычно, все начинается с нового проекта. Выбираем 2D, создаем и видим бескрайнюю плоскость. Не стоит унывать, вскоре мы её заполним. В папке с проектом находим каталог Assets, в нем директорию Textures –копируем туда три картинки. Главный герой – кот Балун:



Его надо добавить спрайтом (мы потом сделаем его анимированным, если руки дойдут) GameObject -> 2D Object -> Sprite. Плоскость, по которой он будет бегать:



И кнопка (или, точнее, табличка) выхода:



Размеры могут не совпадать, это уж поменяйте сами, как угодно – таскайте мышкой за границы объектов. Далее выбираем GameObject -> Camera. В итоге у нас должна получиться такая вот картинка:



Все прекрасно, кроме того, что все неподвижно. Давайте научим Балуна двигаться. Я сразу же решил делать свой 2D платформер под джойстик, хотя, в принципе, можно заставить джойстик работать с любой игрой – читайте эту заметку – но все же мне интересен сам принцип.

Однако, перед тем, как двигаться, надо сделать наши картинки объектами. Для спрайта с котом добавляем два компонента: Physics 2D -> Rigidbody 2D и Physics 2D -> Box Collider 2D. Тоже самое и для изображения поверхности, только у поля Body Type ставим Static – чтобы платформа не падала вниз под собственной тяжестью:



Вот теперь можно приступать к написанию скрипта для движения. Вот листинг скрипта move.cs (пишем на си шарп):

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

public class move : MonoBehaviour {
	Rigidbody2D rb;
	float v = 0.3F;

	void Start () {
		rb = GetComponent<Rigidbody2D>();
	}
	
	void Update () {	
			rb.transform.position = new Vector3 (rb.transform.position.x + Input.GetAxis("Horizontal"), rb.transform.position.y, transform.position.z);
	}      
}
Этот скрипт применяем на спрайт кота. Однако, для окончательной настройки джойстика, надо добавить еще кое-что. Открываем Project Settings -> Input и меняем и меняем имена обработчиков кнопок джойстика в соответствии с вышеприведенным листингом:



Вот теперь все: нашим котом Балуном можно управлять с помощью джойстика: он будет бегать по платформе вправо-влево. На сегодня пока хватит. Готовый проект с исходниками для Unity 5.5.1 можно скачать здесь. Продолжение следует.



тегистатьи IT, Unity3D, си шарп, джойстик, платформер





Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.




Необычные символы UTF-8
Урок 27. Что такое функции в JavaScript


© upread.ru 2013-2019
При перепечатке активная ссылка на сайт обязательна.
Задать вопрос
письмо
Здравствуйте! Вы можете задать мне любой вопрос. Если не получается отправить сообщение через эту форму, то пишите на почу up777up@yandex.ru
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.