Главная страница

Создание 3D игрового приложения для мобильной операционной системы Android. Образовательная программа по специальности Прикладная информатика (по отраслям) Роор О. П., студентка группы 473


Скачать 104.89 Kb.
НазваниеОбразовательная программа по специальности Прикладная информатика (по отраслям) Роор О. П., студентка группы 473
АнкорСоздание 3D игрового приложения для мобильной операционной системы Android
Дата15.09.2022
Размер104.89 Kb.
Формат файлаdocx
Имя файлаRoor-Diplom_1.docx
ТипОбразовательная программа
#678784
страница7 из 9
1   2   3   4   5   6   7   8   9

Глава 3. Создание 3D игры для операционной системы Android

3.1 Выбор среды разработки игры



Игровой движок — базовое программное обеспечение компьютерной игры. Разделение игры и игрового движка часто расплывчато, и не всегда студии проводят чёткую границу между ними. Но в общем случае термин «игровой движок» применяется для того программного обеспечения, которое пригодно для повторного использования и расширения, и тем самым может быть рассмотрено как основание для разработки множества различных игр без существенных изменений [4].

Unity

Unity — это не просто лучшая в мире платформа для разработки в реальном времени, но и надежная экосистема, созданная для того, чтобы помочь вам добиться успеха. Присоединяйтесь к нашему динамичному сообществу творцов, чтобы и вы могли использовать то, что вам нужно для претворения в жизнь вашего видения. [29].

Поработав в unity вы сразу поймете насколько это удобная среда для разработки игр, ведь она имеет низкий порог вхождения т.к имеется подробная документация и видеоролики о том как в ней работать, как от разработчиков так и от других пользователей. Unity имеет большой спектр возможностей как от создания 2D игр так и до игр виртуальной реальности. Но не стоит забывать unity будет для вас бесплатной только в том случае если заработок с 1 вашей игры, сделанной на этом движке не будет превышать 100000 долларов.

Unreal Engine 4

Самый открытый и продвинутый в мире инструмент для создания 3D-изображений в реальном времени. С Unreal Engine вы можете воплотить в жизнь удивительные впечатления в реальном времени, используя самый продвинутый в мире инструмент создания 3D-изображений в реальном времени. От первых проектов до самых сложных задач [30].

Один из тех сред разработки игр который очень схож с unity. Но имеет и минусы по сравнению с ней, а именно не такую большую аудиторию по сравнению с unity и более низкий процент заработка, ведь если вы заработаете 3000 долларов с вас возьмут 5 процентов.

HeroEngine

HeroEngine-это единственная универсальная платформа разработки для создания и эксплуатации онлайн-игр [13]. Мы экономим ваше драгоценное время, чтобы вы могли сосредоточиться на разработке игр, а не на разработке и обслуживании серверов. Мы обрабатываем все ваши потребности. Весь набор инструментов HeroEngine доступен вам в облаке. Создайте любой тип онлайн – игры-включая MMO, RPG, FPS или любой другой вид онлайн-игры, о котором вы можете мечтать [14].

Это довольно хорошая среда для разработок игр, но из-за своей цены он мало может кому подойти, т.к разработчик не может изначально сравнить его с другими программами.

Проанализировав среды разработки игр на настоящее время, изучив частично их документацию и возможности был сделан выбор в какой среде будет производится игра, и выбор упал на Unity т.к за счет своей популярности она имеет большое количество пользователей которые работают с ней, и за счет этого у нее очень маленький порог вхождения. Но эта среда разработки легка в обучении не только за счёт своей аудитории, но и из-за подробной документации и видео роликов про работу в Unity и взаимодействия с ее элементами от самих разработчиков. Также эта среда разработки предоставляется бесплатно если ваш проект разработанный на ней не превысил заработок выше чем указан на официальном сайте.

3.2 Выбор языка программирования



Язык программирования

Язык программирования — это набор формальных правил, по которым пишут программы. Обычный язык нужен для общения людей, а язык программирования — для общения с компьютером. Как и в любом естественном языке, тут есть лексика — слова, функции и операторы, из которых по правилам синтаксиса составляются выражения. Они имеют чёткий, вполне определённый смысл, понятный компьютеру, — семантику.

Языки программирования и алгоритмы

Программы нужны для того, чтобы машина сделала что-то полезное. Это невозможно, если нет чёткого порядка действий и правил их выполнения — алгоритма.

Алгоритм работает как маршрут в навигаторе: «Из пункта А едем в пункт Б, поворот через 150 метров». Англичанин понимает его по-английски, китаец —
по-китайски, а мы с вами — по-русски. Языки разные, а порядок действий один и все должны добраться до нужного места. Любая программа начинается с алгоритма, но на разных языках это может выглядеть по-разному. 

Компьютеры и языки программирования

Язык программирования — это не язык компьютера. Машина понимает последовательности нулей и единичек: есть напряжение в цепи — единица, нет — ноль. Поэтому любую программу сначала надо перевести в набор таких машинных команд.

Для этого есть два инструмента — компилятор и интерпретатор. Компилятор работает как бюро переводов: вы отдаёте ему весь текст программы, а он превращает его в исполняемый код, набор команд для процессора. Интерпретатор больше похож на переводчика-синхрониста: сказали фразу — синхронист тут же её перевёл, а компьютер выполнил.

Внутри компиляторов и интерпретаторов — сложные наборы правил по превращению языка программирования в машинный код, понятный компьютеру. Это тоже программы. Их пишут создатели нового языка — на каком-то другом, уже существующем. Например, интерпретатор Python написан на C, а сам C — на ассемблере, практически машинном коде [27].

Python - это простой в освоении и мощный язык программирования. Он обладает эффективными высокоуровневыми структурами данных и простым, но эффективным подходом к объектно-ориентированному программированию. Элегантный синтаксис Python и динамическая типизация вместе с его интерпретируемой природой делают его идеальным языком для написания сценариев и быстрой разработки приложений во многих областях на большинстве платформ. Интерпретатор Python легко расширяется новыми функциями и типами данных, реализованными на C или C++ (или других языках, вызываемых из C). Python также подходит в качестве языка расширения для настраиваемых приложений [24].

Java-это язык программирования № 1 и платформа разработки. Это снижает затраты, сокращает сроки разработки, стимулирует инновации и улучшает прикладные сервисы. С миллионами разработчиков, работающих более чем на 51 миллиарде виртуальных машин Java по всему миру, Java продолжает оставаться платформой разработки для предприятий и разработчиков [21].

C# (произносится как "See Sharp")-это современный, объектно-ориентированный и типобезопасный язык программирования. C# позволяет разработчикам создавать множество типов безопасных и надежных приложений, работающих в среде C# .NET. C# имеет свои корни в семействе языков C и будет сразу знаком программистам C, C++, Java и JavaScript. Этот тур содержит обзор основных компонентов языка в C# 8 и более ранних версиях.

C#-это объектно-ориентированный язык., компонентно-ориентированный язык программирования. C# предоставляет языковые конструкции для непосредственной поддержки этих концепций, что делает C# естественным языком для создания и использования программных компонентов. С момента своего появления C# добавлял новые функции для поддержки новых рабочих нагрузок и новых методов проектирования программного обеспечения.

Несколько функций C# помогают создавать надежные и долговечные приложения. Вывоз мусора автоматически восстанавливает память, занятую недоступными неиспользуемыми объектами. Обнуляемые типы защищайтесь от переменных, которые не ссылаются на выделенные объекты. Обработка исключений обеспечивает структурированный и расширяемый подход к обнаружению и восстановлению ошибок. Лямбда-выражения поддержка методов функционального программирования. Языковой интегрированный запрос (LINQ) синтаксис создает общий шаблон для работы с данными из любого источника. Языковая поддержка асинхронные операции предоставляет синтаксис для построения распределенных систем. В C# есть система унифицированного типа. Все типы C#, включая примитивные типы, такие как int и double, наследуется от одного корня object Тип. Все типы имеют общий набор общих операций. Ценности любого типа могут храниться, транспортироваться и эксплуатироваться согласованным образом. Кроме того, C# поддерживает как пользовательские, так и ссылочные типы, и типы значений. C# позволяет динамическое выделение объектов и встроенное хранение облегченных структур. C# поддерживает универсальные методы и типы, которые обеспечивают повышенную безопасность типов и производительность. C# предоставляет итераторы, которые позволяют разработчикам классов коллекций определять пользовательское поведение для клиентского кода.

C# делает упор на управление версиями, чтобы гарантировать, что программы и библиотеки могут развиваться с течением времени совместимым образом. Аспекты дизайна C#, на которые непосредственно повлияли соображения управления версиями, включают отдельные virtual override модификаторы и, правила разрешения перегрузки методов и поддержку явных объявлений членов интерфейса. [18].

Для создания игры рассматривались три популярных языка программирования, которые вошли в пятерку лучших языков программирования, о чем можно почитать на Habr [12]. Финальным решением в выборе языка программирования стала среда разработки игр Unity, ведь она поддерживает только язык программирования C#

1   2   3   4   5   6   7   8   9


написать администратору сайта