Научная статья на тему 'КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ ДИНАМИЧЕСКИХ ОБЪЕКТОВ С ИСПОЛЬЗОВАНИЕМ СРЕДЫ РАЗРАБОТКИ КОМПЬЮТЕРНЫХ ИГР UNITY'

КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ ДИНАМИЧЕСКИХ ОБЪЕКТОВ С ИСПОЛЬЗОВАНИЕМ СРЕДЫ РАЗРАБОТКИ КОМПЬЮТЕРНЫХ ИГР UNITY Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
735
83
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МОДЕЛИРОВАНИЕ ДИНАМИЧЕСКИХ ОБЪЕКТОВ / КОМПЬЮТЕРНАЯ 3D- МОДЕЛЬ / СИСТЕМЫ РАЗРАБОТКИ КОМПЬЮТЕРНЫХ ИГР / MODELING OF DYNAMIC OBJECTS / A 3D COMPUTER MODEL OF THE SYSTEM DEVELOPMENT OF COMPUTER GAMES

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Трохова Татьяна Анатольевна

В работе представлен подход к реализации имитационных компьютерных моделей динамических технических объектов с использованием систем 3D-графики и игровых движков. Предложена модель динамического объекта, разработанного в системе Unity, с использованием скриптов на языке программирования C# для реализации базовых алгоритмов модели. Подход апробирован на примере компьютерной модели динамики подвески трактора при движении по неровной поверхности. Модель наглядно показывает характер колебательных процессов в подвеске трактора в реальном времени и позволяет улучшить понимание подобных процессов при изучении и проектировании технических объектов. Предложенный подход к преподаванию дисциплин, связанных с моделированием динамических объектов, позволил активизировать творческую и практико-ориентированную составляющую дисциплин, он может быть использован в курсовом и дипломном проектировании студентами технических специальностей вузов.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

COMPUTER MODELING OF DYNAMIC OBJECTS WITH THE USE OF COMPUTER GAMES DEVELOPMENT SOFTWARE UNITY

The paper presents an approach to the implementation of simulation computer models of dynamic technical objects using 3D-graphics systems and game engines. A model of a dynamic object developed in the Unity system, using scripts in the C # programming language to implement the basic algorithms of the model is proposed. The approach is approved on the example of a computer model of dynamics of the tractor's suspension when moving over an uneven surface. The model clearly shows the nature of oscillatory processes in the suspension of the tractor in real time and allows to improve the understanding of such processes in the study and design of technical facilities. The proposed approach to the teaching of disciplines related to the modeling of dynamic objects, has been allowed to activate the creative and practice-oriented component of the disciplines, it can be used in the course and diploma design students of technical specialties of higher educational institutions.

Текст научной работы на тему «КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ ДИНАМИЧЕСКИХ ОБЪЕКТОВ С ИСПОЛЬЗОВАНИЕМ СРЕДЫ РАЗРАБОТКИ КОМПЬЮТЕРНЫХ ИГР UNITY»

ФИЗИЧЕСКОЕ, МАТЕМАТИЧЕСКОЕ, КОМПЬЮТЕРНОЕ И ЭЛЕКТРОМОДЕЛИРОВАНИЕ

УДК 004.94:631.35

КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ ДИНАМИЧЕСКИХ ОБЪЕКТОВ С ИСПОЛЬЗОВАНИЕМ СРЕДЫ РАЗРАБОТКИ КОМПЬЮТЕРНЫХ ИГР UNITY

Т.А. Трохова

Гомельский государственный технический университет имени П.О. Сухого

Аннотация. В работе представлен подход к реализации имитационных компьютерных моделей динамических технических объектов с использованием систем ЗБ-графики и игровых движков. Предложена модель динамического объекта, разработанного в системе Unity, с использованием скриптов на языке программирования C# для реализации базовых алгоритмов модели. Подход апробирован на примере компьютерной модели динамики подвески трактора при движении по неровной поверхности. Модель наглядно показывает характер колебательных процессов в подвеске трактора в реальном времени и позволяет улучшить понимание подобных процессов при изучении и проектировании технических объектов. Предложенный подход к преподаванию дисциплин, связанных с моделированием динамических объектов, позволил активизировать творческую и практико-ориентированную составляющую дисциплин, он может быть использован в курсовом и дипломном проектировании студентами технических специальностей вузов.

Ключевые слова: моделирование динамических объектов, компьютерная 3D- модель, системы разработки компьютерных игр.

Введение. Эффективность применения средств и методов автоматизированного проектирования при выполнении инженерно-технических и конструкторских разработок во многом определяется качеством предварительной проработки будущего изделия. Наличие мощных вычислительных систем и пакетов не избавляет от необходимости подвергать сомнению результаты моделирования и проверять их с помощью различных вычислительных схем и методов. Основной инструментарий математического моделирования - системы компьютерной математики - предоставляет инженеру достаточно

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

Цели работы следующие:

- показать возможность разработки визуальных имитационных моделей технических объектов с использованием систем компьютерной графики и анимации и игровых движков;

- разработать и апробировать подход к преподаванию дисциплин компьютерного моделирования для студентов IT-специальностей, позволяющий активизировать практико-ориентированную составляющую дисциплины.

Постановка задачи. При моделировании динамических технических объектов необходимо решить следующие задачи [1,2]:

- получение адекватной математической модели;

- получение компьютерной модели на основе математической модели;

- визуализация результатов моделирования в графическом

виде;

- 3D-мoдeлиpoвaниe динамической системы в реальном времени.

Разработанная динамическая компьютерная модель позволяет решить все изложенные выше задачи и имеет следующие основные возможности:

- получение функции перемещения динамического объекта после решения ОДУ в численном и графическом виде;

- визуальное отображение движения динамического объекта;

- исследование влияния внутренних параметров динамического объекта (например, жесткости пружины или массы) на экстремальные значения выходных параметров в динамическом режиме;

- исследование влияния входных воздействий (например, высоты опорной поверхности) на экстремальные значения выходных параметров в динамическом режиме.

Инструментарием для решения поставленных задач являются следующие средства разработки: Unity3D Engine; Blender; DotNumerics.

В качестве тестового динамического объекта выбрана подвеска трактора на основании математической модели, приведенной в [3]. Модель наглядно показывает характер колебательных процессов в подвеске в реальном времени и позволяет улучшить понимание

подобных процессов при изучении и проектировании технических объектов.

Обзор и анализ графических средств моделирования. Так как

автором выбран в качестве основы компьютерной модели инструментарий компьютерной графики, необходимо сделать обзор и анализ средств 3Б-моделирования, в том числе и программ для разработки видеоигр.

Unity 3D можно рассматривать не только как инструмент для разработки видеоигр, но и как профессиональную мультиплатформенную систему для моделирования интерактивных трехмерных графических объектов и 3D-npoeKTOB на их основе [4, 5]. В качестве основных достоинств системы можно привести следующие:

- сочетание редактора сцен (в комплексе общего редактора) с редактором игровых объектов и редактором скриптов;

- в Unity доступны три языка программирования: JavaScript, C# и разновидность Python's Boo.

- кроссплатформенность - поддерживаются Windows, MacOS, Wii, iPhone, iPod, iPad, Android, PS3 и XBox 360.

Игровой движок (Game Engine) обеспечивает основную функциональность системы Unity 3D. Он включает в себя многократно используемые программные компоненты: графический движок («визуализатор»), физический движок, звуковой движок, систему скриптов, анимацию, искусственный интеллект, сетевой код, управление памятью и многопоточность [6].

Blender - свободный, профессиональный пакет для создания трёхмерной компьютерной графики, включающий в себя средства моделирования, анимации, рендеринга, постобработки и монтажа видео со звуком, компоновки с помощью «узлов», а также для создания интерактивных игр [7]. При работе над системой моделирования динамических объектов Blender применялся для разработки таких графических элементов, как корпус, пружина, демпфер и т.д.

Описание функциональной модели. Разработанная компьютерная модель строится по принципу компьютерной инженерной лаборатории (КИЛ), поэтому обладает возможностями исследования модели с изменением ее параметров.

КИЛ предназначена для исследования динамических моделей технических систем на основе их математических моделей. Система КИЛ строится таким образом, чтобы пользователь (студент или инженер-исследователь) имел возможность экспериментировать с моделью, активно воздействовать на предлагаемый алгоритм решения задачи.

Для компьютерной модели динамики подвески трактора функции КИЛ представлены в декомпозированном виде:

- функция решения системы дифференциальных уравнений, являющиеся основой математической модели колебаний подвески трактора.

- функция движения трактора по результатам решения дифференциальных уравнений;

- функция проведения исследований по модели с изменением варьируемых параметров.

При проектировании визуальной модели эти функции группируются в сценарии, по которым строятся основные алгоритмы реализации модели.

Структура программного комплекса. Комплекс состоит из трех блоков: блока «Создание ЗБмодели трактора», блока «Создание расчетной части модели» и блока «Моделирование движения» (рисунок 1).

Рисунок 1 - Функции и реализаторы компьютерной модели

Каждый блок включает несколько компонентов. Последовательность участия компонент в построении модели следующая. Разработка модели начинается с создания базовых элементов модели в пакете Blender. При создании динамической модели колебаний трактора Blender применялся для разработки следующих графических элементов: корпус; пружина; демпфер; колесо; дорожное покрытие. Эти элементы были экспортированы в файлы в формате .FBX, который по умолчанию поддерживается системой Unity3D.

Следующим шагом разработки модели является перенос графических объектов в Unity3D и построение дерева иерархии объектов (рисунок 2).

Рисунок 2 - Перенос графических объектов из Blender в Unity3D

После разработки и передачи в систему Unity 3D модели трактора подключается блок расчета координат движения подвески и скорости движения трактора по заданным исходным значениям, сразу рассчитываются координаты точек графика, который будет выводиться для демонстрации корректности движения подвески. Далее подключается блок анимации, который показывает движение трактора и подвески с полученными расчетными значениями, подтверждаемыми графиками. При изменении вида опорной поверхности или внутренних параметров модели осуществляется повторное подключение блока создания расчетной части модели и пересчет координат перемещения подвески трактора.

Поведение объектов контролируется с помощью компонентов (Components), которые присоединяются к ним. Помимо множества встроенных в Unity стандартных компонентов, Unity позволяет создавать свои компоненты, используя аппарат скриптов. Они позволяют активировать динамические события, изменять параметры компонентов, а также вести диалог с пользователем в интерактивном режиме, реагируя на ввод новых параметров модели.

С помощью скриптов, разработанных на языке программирования C#, реализованы следующие алгоритмы:

- алгоритм решения системы дифференциальных уравнений, являющихся основой математической модели колебаний подвески трактора;

- алгоритм движения трактора по результатам решения дифференциальных уравнений;

- алгоритм движения графического объекта по поверхности с заданной скоростью;

- алгоритм движения и управления камерой;

- алгоритм сканирования неровности опорной поверхности;

- алгоритм построения графика согласно полученным результатам решения дифференциального уравнения;

- алгоритм динамического изменения опорной поверхности;

- алгоритм управления временем.

В верхней части окна моделирования находится панель управления моделью, которая включает режимы управления камерой, например, свободный режим (принимается по умолчанию); режим автовращения; режим следования за камерой; режим движения камеры; режим вращения камеры; режим изменения скорости движения камеры. На рисунке 3 приведен вид панели управления окна модели пример перевода камеры в режим автовращения.

ЯП

РЕЖИМЫ КАМЕРЫ К-СВОБСЩНЫИ Т-АВТОЕРАЩЕНИЕ ¥. СЛЕДОВАТЬ УУ,А,$Л-ДеиЖ£НИЕ КАЫЁСЫ О.Ё-0РАШЁНИ£ КАМЕРЫ 2.Х - иаМ£НЕНЦЁ СКОРОСГИ КАМЕРЫ

Рисунок 3 - Пример модели в процессе сканирования опорной поверхности перед началом движения модели трактора и перевода камеры в режим автовращения

Для апробации работы модели был проведен ряд тестов:

- тест со стандартными параметрами по стандартному сценарию;

- тест с изменением внутренних параметров модели:

- тест с изменением параметров выступа опорной поверхности;

- тест с различными параметрами управления камерой.

На рисунке 4 приведен вид окна модели с изменением высоты и угла поворота выступа опорной поверхности. На рисунке 5 приведен вид графика, полученного в расчетном блоке при решении системы ОДУ математической модели подвески. На соответствующую высоту подъема указывает маркер в виде шара, координаты которого служат основой для положения подвески в модели в данный момент времени.

| X 4 99} 1 ВмСО!» Ппвед* «00030 I | ЯвО чЦ<1 )*М»1|иИ | ; | Пцм |

Рисунок 4 - Вид окна модели с изменением высоты и угла поворота выступа опорной поверхности

Рисунок 5 - Момент преодоления высшей точки препятствия и график зависимости вертикального перемещения подвески трактора с маркером текущего положения

Выводы. Исследования показали, что существует возможность разработки трехмерной модели динамического технического объекта, основанной на математической модели в виде систем ОДУ, в системах компьютерной графики и анимации таких, как Unity. Модель наглядно показывает характер колебательных процессов в подвеске трактора в реальном времени и позволяет улучшить понимание подобных процессов при изучении и проектировании технических объектов. Предложенный подход к преподаванию дисциплин, связанных с моделированием динамических объектов, позволил активизировать творческую и практико-ориентированную составляющую дисциплин, он может быть использован в курсовом и дипломном проектировании студентами технических специальностей вузов.

Список использованных источников

1. Тарасик, В.П. Математическое моделирование технических систем. - Мн.:ДизайнПро, 2004.

2. Математическое моделирование и автоматизированное проектирование технических систем: пособие по одноим.курсу для студентов специальности 1-40 01 02 «Информационные системы и технологии (по направлениям)»/ Т.А. Трохова. - Гомель: ГГТУ им. П.О. Сухого, 2011.

3. Гуськов, В.В. Тракторы. Часть VII. Лабораторный практикум. /В .В. Гуськов. - Мн.: Вышэйш. шк., 1988.

4. Хокинг, Дж. Unity в действии. Мультиплатформенная разработка на C# . — СПб.: Питер, 2016.

5. Обзор бесплатных программ для 3D моделирования [Электронный ресурс].- Режим доступа: http://itandlife.ru/technology/computer-graphics/getting-back-with-ex-after-2-weeks

6. Торн, Ал. Основы анимации в Unity. - М.: "ДМК Пресс",

2016.

7. Прахов, А. Самоучитель Blender 2.6. - СПб.: Питер, 2013.

Татьяна Анатольевна Трохова, кандидат технических наук, доцент, trohova77@rambler.ru, Республика Беларусь, Гомель, Гомельский технический университет имени П. О. Сухого

COMPUTER MODELING OF DYNAMIC OBJECTS WITH THE USE OF COMPUTER GAMES DEVELOPMENT SOFTWARE UNITY

Trohova T.A.

Abstract. The paper presents an approach to the implementation of simulation computer models of dynamic technical objects using 3D-graphics systems and game engines. A model of a dynamic object developed in the Unity system, using scripts in the C # programming language to implement the basic algorithms of the model is proposed. The approach is approved on the example of a computer model of dynamics of the tractor's suspension when moving over an uneven surface. The model clearly shows the nature of oscillatory processes in the suspension of the tractor in real time and allows to improve the understanding of such processes in the study and design of technical facilities. The proposed approach to the teaching of disciplines related to the modeling of dynamic objects, has been allowed to activate the creative and practice-oriented component of the disciplines, it can be used in the course and diploma design students of technical specialties of higher educational institutions.

Keywords: modeling of dynamic objects, a 3D computer model of the system development of computer games.

Trohova T.A., Ph.D., Associate Professor, trohova77@rambler.ru, Republic of Belarus, Gomel, Gomel Sukhoi State Technical University

i Надоели баннеры? Вы всегда можете отключить рекламу.