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

Знакомство с Unity3D


Мне всегда была интересна тема программной реализации (демонстрации) законов физики: как взаимодействуют тела. Какое-то бледное подобие даже пытался реализовать на флеш. Однако, если делать что-то более серьезное, то лучше использовать специальные движки. Подумав, я остановился на Unity3D – одной из самых популярных платформ разработки приложений, в том числе и в 3D формате. Вот что получилось у меня в итоге после недолгого разбирательства с основами:



Скачать Unity3D можно отсюда – получим сетевой установщик. Выбирайте галочками, что вам требуется, особо не волнуйтесь – в любой момент его можно будет запустить снова и скачать недостающие элементы. Итак, качаем, устанавливаем, регистрируемся, начинаем новый проект 3D.

Сложного ничего нет. В проекте по умолчанию у вас уже есть два объекта - Main Camera (камера) и Directional Light (источник света). Выберите Game Object –> 3D Object -> Plane и Game Object –> 3D Object -> Cube. Теперь у нас есть кубик над плоскостью и, собственно, сама плоскость. Если запустить проект, то ничего не произойдет: выведется статичная картинка. Внесем немного динамики.

Выберем наш куб и Component -> Physic -> Rigidbody. Этим мы сделал куб твердым телом. Теперь после запуска он упадет на плоскость. Далее создаем снизу в Assets - > Create – Physic Material -> назовем, к примеру, rubber1 – это будет материал. Можно играться с разными параметрами, добиться скольжения, упругости и так далее.



Далее также внизу создаем C# Script, открываем его в каком-нибудь редакторе ( по умолчанию идет MonoDevelop – признаться жутко глючная штука) удаляем созданный по умолчанию код и вставляем свой:

using UnityEngine;
using System.Collections;

public class NewBehaviourScript : MonoBehaviour {

	void Start () {
		Rigidbody rb = GetComponent();	 
	}

	void Update () {
		if (Input.GetKeyUp( KeyCode.Space )) {
			GetComponent().material.color = Color.red;
		}
	}
		
	void OnCollisionEnter() {    
		Debug.Log("Oops!");  
	}		
} 
Сложного тут особо ничего нет, даже если и вы на вы с си шарп. В коде три метода: один работает при старте, второй при смене кадра – с помощью него меняем цвет куба на красный, если жмем пробел, третий же пишет в логе очень остроумную фразу, как только куб с чем-нибудь сталкивается. На основе этого скрипта и документации по юнити уже можно создавать что-то тридешное и интерактивное.

Таким образом, если не хочется изобретать велосипед, а хочется сразу работать с 3D, то Unity3D прекрасно подойдет. Платформа не выглядит сырой и возможно в будущем, я напишу серию статей, посвященной разработке на ней. Если интересно посмотреть на результат на своем компьютере, то вот файл программы - теоретически должно запуститься на любой Windows со вторым нет фреймворком на борту.



тегистатьи IT, Unity3D, си шарп





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




Гарантия на парсинг
Демонстрация движения предмета, брошенного под углом к горизонту


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