Unity C#

Уроки C# под Unity 5 для начинающих

9 уроков 14 заданий Справочник
/ Видеокурсы / Уроки C# под Unity 5 для начинающих / #4 - Отслеживание нажатий от пользователя

#4 - Отслеживание нажатий от пользователя

#4 - Отслеживание нажатий от пользователя


C#Unity

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

Видео урок:

Исходный код

Класс Script
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Script : MonoBehaviour {

	public GameObject obj;
	public float range = 5f, moveSpeed = 3f, turnSpeed = 40f;

	void Update () {
//		float h = Input.GetAxis ("Horizontal");
//		float xPos = h * range;
//
//		obj.transform.position = new Vector3 (xPos, 0, 0);

		if(Input.GetKey(KeyCode.UpArrow))
			obj.transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime);

		if(Input.GetKey(KeyCode.DownArrow))
			obj.transform.Translate(-Vector3.forward * moveSpeed * Time.deltaTime);

		if(Input.GetKey(KeyCode.LeftArrow))
			obj.transform.Rotate(Vector3.up, -turnSpeed * Time.deltaTime);

		if(Input.GetKey(KeyCode.RightArrow))
			obj.transform.Rotate(Vector3.up, turnSpeed * Time.deltaTime);
	}

}
Класс Scale
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Scale : MonoBehaviour {

	void OnMouseDown () {
		transform.localScale = new Vector3 (transform.localScale.x / 2f, transform.localScale.y / 2f, transform.localScale.z / 2f);
	}

}

Задание к уроку

Работа с GetAxis
В уроке я показал вам как сделать чтобы кубик перемещался влево/вправо при помощи GetAxis ("Horizontal"). Ваша задача сделать чтобы кубик перемещался точно так же, но вперед/назад.
Посмотреть ответ
Вот решение данной задачи:
public GameObject obj;
public float range = 5f;

void Update () {
	float v = Input.GetAxis ("Vertical");
	float zPos = v * range;

	obj.transform.position = new Vector3 (0, 0, zPos);
}

Большое задание по курсу

Вам необходимо оформить подписку на сайте, чтобы получить большое задание. Такие задания есть к каждому курсу. В них входит задание, методика решения, а также "Готовое решение".
PS: подобные задания доступны при подписке от 1 месяца!


C#Unity

Также стоит посмотреть