Unity3D – разработка игр на лучшей из платформ
Юнити (редактор игр) – платформа Для разработки игр. В Юнити можно создавать 2д и 3д игры. В юнити есть среда для разработчиков Монодевелоп (альтернатива Визуал Студио). Платформа немного глюченая – для русского языка нужно дополнительно настараивать переключение клавиатур с русского на английский, причем повторять настройку при каждом включении. На основе Юнити пишут в основном игры. Это идеальный движок для этого. Получившуюся игру можно перевести практически в любой формат, на любую платформу.
Официальный сайт – unity3d.com. Сайт содержит уроки (мануалы – unity3d.com/manual), определения, все руководство написано на английском языке.
Популярность. Сотни тысяч игрушек уже написаны на юнити3д. Миллиарды устройств установили себе игры, созданные на базе этого движка. Юнити постоянно совершенствуется. В последней на данный момент версии 5.3 были введены заметные новшества и улучшения.
Возможности юнити
Юнити – это инструмент для разработчиков и дизайнеров. Здесь можно создавать 3д-модели пространств и персонажей. Разработчики пишут персонажам действия, а аниматоры реализуют отображение любых переходов в графике.
Как заработать на Юнити? Прежде всего, нужна фантазия и навыки программирования и дизайна. С самой платформой освоиться не так уж сложно. Прежде всего, нужно пройти туториал для разработчика, размещенный на их сайте.
Другой путь – нанять фрилансера, который уже обучен и сможет сделать игру по заявленному ТЗ.
Монетизация игры
Монетизация может происходить двумя путями – от размещения рекламы до создания про-версии приложения. В последнем случае, как и в первом, есть свои нюансы. К примеру, можно использовать всплывающее окно рекламы, либо ее статичный блок на одном из краев экрана.
Программа Unity3D
Программа Unity3D для создания игр состоит из нескольких блоков. Верхнее меню – классическое.
По центру находится сцена, используя горячие клавиши или мышь эту сцену можно “вертеть как хочется”.
Снизу поле для отладки, для кода (можно развернуть на весь экран).
Справа и слева атрибуты. Справа – перечень обьектов на сцене, слева перечень свойств у одного выбраннного обьекта.
Unity3D дает возмоздность создавать трехмерные игры и двумерные игрушки, такие как стрелялки, аркады, головоломки и многое другое. Удачи вам в созданиии многомерных игрушек!
Upd: как позже оказалось, все не так уж сложно, если разобраться. Координаты мыши достать легко (легче, чем я думала раньше), вот только как их использовать?
Существует целый ряд причин, по которым я решила написать данную статью.. Во-первых, гордо именуемый Mouse position в трехмерном пространстве Unity не то, чтобы сложно считать (определить координаты xyz), но и использовать не так то просто. Ведь существует пространство обычных (screen space), и пространство мировых координат (world space). Вот о них то и пойдет речь в данном топикe.
Мировые координаты
- Input.mouse.position.x
Отображение мировых (то, как мы их видим)
- Camera.ScreenToWorldPoint (метод)
- Данный метод в качестве аргумента берет вектор.
- Вектор должен быть 3D – xy это понятно (коорд.мыши, см.первый пункт)
- В качестве третьей координаты для метода идет расстояние до экрана (простите, камеры) от мыши.
К слову,
nearClipPlane - одно из свойств Camera, обозначает место, где камера начинает обзор. Это ближайшее место, которое может быть обработано. В отличие от Far plane - "дальнейшее место".
Вот в такой достаточно простенькой форме мы разобрали, что это (MousePosition) и зачем (где применяется).
Unity графика – Terrain
Для начала нужно:
1. Создать игру в формате 3D.
2. В разделе Game object выбрать 3d object “Terrain”
В Unity связка своство-обьект (negative)
1. Не забываем прикрепить скрипт к обьекту.
В Unity скрипт может не сработать, если его не прикрепить к объекту на сцене Unity3D. Как только NewBehaviourScript, например, окажется привязанным к объекту player, то и заиграет он по-новому.
2. Некоторые методы не работают без соответствующих свойств (компонентов).
В Unity может не сработать, без предупреждений, метод наподобие On mouse down, если он лежит в том самом on behaviour script. На момент написаниния этой статьи система не включает подсказок по этому поводу.
Данный метод работает, как выяснилось, лишь тогда, когда к объекту привязывают допсвойства.. rectangle, в моем случае. Вот. Нет свойства – метод просто промолчит и не заработает, когда вы в надежде запустите сцену.
Как остановить бесконечный цикл в коде?
Лучший из вариантов, как справиться с этой проблемой – заглянуть в код и найти место, где этот цикл действует. Это может быть сложным, если у вас большая программа, а также много несохраненной работы. Все мы представляем, что может быть с человеком, который потеряет работу. Поэтому изменения лучше сохранять, в крайнем случае делайте 20 копий программы на дню, это защитит от проблемы, когда неизвестно с какого момента программа начала “глючить”.
Желаем вам успехов в лечении программ и храни Господи Вас и вашу работу.
Что такое скрипт в Unity? Скрипт – это программа.
Random – функция в Unity
Random.Range используется в Unity для генерации случайных чисел.
Пример: Random.Range (-10F,10F) возвращает дробное число (в заданном диапазоне).
Пример 2: Random.Range (-10,10) также возвращает число, только целое. Обратите внимание: аргументы были простыми целыми числами.
Замечание: второе число данная функция никогда не вернет. Это своего рода недостижимый максимум – для функции Random.Range вернуть 10 при аргументах -10 и +10.
Роль данной функции сложно переоценить. Особенно когда речь идет об игровой разработке.
Unity3D UDN
UDN – unity developer network. Это сообщество разработчиков (форум, чаво), где даются ответы на самые распространенные вопросы, разрешаются проблемы и т.д., связанные с созданием игр и приложений на базе unity3d. На нем очень просто зарегистрироваться, но если у вас нет юнити-аккуанта, он будет создан автоматически.
Это все доступно каждому разработчику игр, вне зависимости от типа лицензии или игры.
С каждым выходом новой версии программы разработчики улучшают графику, производительность и многое другое данного конструктора игр!