Научная статья на тему 'Вопросы проектирования и создания тренажеров машин и механизмов'

Вопросы проектирования и создания тренажеров машин и механизмов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
1124
182
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИНЖЕНЕРНАЯ И КОМПЬЮТЕРНАЯ ГРАФИКА / ИНТЕРАКТИВНАЯ ГРАФИКА / КОМПЬЮТЕРНОЕ ОБУЧЕНИЕ / 3D ДВИЖОК / 3D STUDIO MAX / OPENGL / DIRECTX / DELPHI / V-RAY / ENGINEERING AND COMPUTER GRAPHICS / INTERACTIVE GRAPHICS / COMPUTER TRAINING / 3D CURSOR

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

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

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

Questions of design and creation of exercise machines and mechanisms

The theoretical-methodological foundation of this article is the bases of design of the software, the system analysis, modeling of systems and creation of systems of training with the use of 3D graphics. Nowadays there is a significant amount of exercise machines and simulators in aircraft and astronautics. Such designs have to be in mechanical engineering and in construction, as well as for construction mashines and mechanisms. The purpose of this work is creation of the 3D exercise machine of the truck crane to train crane operators and to control their knowledge.

Текст научной работы на тему «Вопросы проектирования и создания тренажеров машин и механизмов»

УДК 62.001.63 ББК 30.2 М 94

Мыльников В.В.

Кандидат технических наук, доцент кафедры автоматизированных систем обработки информации и управления инженерно-физического факультета Адыгейского государственного университета, Майкоп, тел. (8772) 59-39-11, e-mail: m_vv@mail.ru

Вопросы проектирования и создания тренажеров машин и механизмов

(Рецензирована)

Аннотация

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

Ключевые слова: инженерная и компьютерная графика, интерактивная графика, компьютерное обучение, 3D движок, 3D Studio Max, OpenGL, DirectX, Delphi, V-Ray.

Mylnikov V.V.

Candidate of Technical Sciences, Associate Professor of Department of Automated Systems of Processing Information and Control at Engineering-Physics Faculty, Adyghe State University, Maikop, ph. (8772) 59-39-11, e-mail: m_vv@mail.ru

Questions of design and creation of exercise machines and mechanisms

Abstract

The theoretical-methodological foundation of this article is the bases of design of the software, the system analysis, modeling of systems and creation of systems of training with the use of 3D graphics. Nowadays there is a significant amount of exercise machines and simulators in aircraft and astronautics. Such designs have to be in mechanical engineering and in construction, as well as for construction mashines and mechanisms. The purpose of this work is creation of the 3D exercise machine of the truck crane to train crane operators and to control their knowledge.

Keywords: engineering and computer graphics, interactive graphics, computer training, 3D cursor, 3D Studio Max, OpenGL, DirectX, Delphi, V-Ray.

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

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

вают почти такие же возможности, как и графические рабочие станции. В области программного обеспечения также произошли серьезные изменения.

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

• изучить методы и средства создания компьютерной 3D графики;

• провести анализ основных подходов компьютерной 3D графики, используемых в 3d тренажерах;

• создать 3d модель машины (автокрана) в программе моделирования Autodesk 3ds Max 2009.

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

Обзор существующих подходов по созданию интерактивной 3D графики

3D движок - это центральный программный компонент компьютерных и видеоигр или других интерактивных приложений с графикой, обрабатываемой в реальном времени. Он обеспечивает основные технологии, упрощает разработку и часто дает игре возможность запускаться на нескольких платформах, таких, как игровые консоли и настольные операционные системы, например, GNU/Linux, Mac OS X и Microsoft Windows.

На процессе разработки можно сэкономить за счет повторного использования одного игрового движка для создания множества различных игр.

Термин «игровой движок» появился в середине 1990-х годов, главным образом, в связи с 3D играми. Многократно используемые движки ускоряют и упрощают разработку игры, что является ценным преимуществом в конкурирующей индустрии компьютерных игр. Поэтому для нас важно иметь свой разработанный игровой движок, в частности, для создания тренажера автокрана. Этот 3D движок впоследствии может быть использован в других проектах, сэкономив очень много времени.

Главным компонентом движка является визуализатор. Он визуализирует сцену для игрока, чтобы он смог принимать определенные решения на основе отображаемой на экране информации. Визуализатор, в общем-то, первая вещь, которую нужно создать при построении игрового движка. Ведь если вы ничего не видите, то как вы узнаете, что ваш код работает? На визуализатор обычно уходит более 50% ресурсов процессора, и именно за визуализатор игровых разработчиков чаще всего и критикуют.

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

Мы в своих работах реализуем свой собственный 3D движок CraneEngine, что обеспечит максимальное быстродействие работы в связи с полным контролем кода движка и добавление в него только необходимого функционала. Среди бесплатных движков не существует такого, который удовлетворит наши потребности и будет иметь хорошую поддержку. Среди коммерческих движков существуют X-Ray и CryEngine 3, но они стоят слишком дорого.

Обзор программных средств 3D моделирования

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

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

Blender

Blender - бесплатный редактор трехмерной графики и анимации. Несмотря на относительно небольшой размер, функций этого пакета вполне достаточно для работы как обычным пользователям, так и профессионалам. В программе есть все основные инструменты, которые используются в профессиональных 3D-редакторах. Blender включает в себя средства 3D моделирования, анимации, рендеринга, обработки видео, набор опций для создания интерактивных игр, визуальные 3D эффекты и многое другое. Используя эту программу, можно создавать реалистичные 3D картины, с качеством цифровой фотографии.

В Blender, как и в любой профессиональный 3D-пакет, встроено большое количество примитивов, из которых вы можете собирать свои собственные модели, различные кольца, кубы, сферы, цилиндры, дополнительные сетки и т.д.

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

Solidworks

SolidWorks - это система автоматизированного проектирования (САПР), использующая привычный графический интерфейс пользователя Microsoft Windows. Другими словами, это легкое в освоении средство позволяет инженерам-проектировщикам быстро отображать свои идеи в эскизе, экспериментировать с элементами и размерами, а также создавать модели и подробные чертежи.

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

Autodesk Maya

Autodesk Maya - представляет собой интегрированное программное решение для 3D моделирования, анимации и рендеринга, основанное на открытой архитектуре. Его выбирают производители компьютерных игр, которым требуется высокий уровень контроля за процессами создания продукции.

Очень хороший пакет для моделирования и анимации. Но версии с пробным периодом найдено не было [1].

3D Studio Max

3D Studio Max - полнофункциональная профессиональная программная система для работы с 3D графикой, разработанная компанией Autodesc.

Программа 3DS Max располагает обширными средствами по созданию разнообразных по форме и сложности трехмерных моделей реальных или фантастических объектов окружающего мира с использованием разнообразных техник и механизмов, включающих следующие:

- моделирование с помощью полигонов, в которое входят Editable mesh (редактируемая поверхность) и Editable poly (редактируемый полигон). Этот метод самый распространенный метод моделирования, который используется для создания сложных моделей и моделей для игр;

- моделирование на основе неоднородных рациональных B-сплайнов (NURBS). В 3DS Max этот метод моделирования не очень хорошо реализован;

- моделирование на основе поверхностей Безье (Editable patch) - подходит для моделирования тел вращения;

- моделирование с использованием встроенных библиотек стандартных параметрических объектов (примитивов) и модификаторов.

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

В 3DS Max реализована возможность создания нескольких основных источников частиц. Начиная с 8 версии, имеется 6 основных источников частиц, демонстрирующих различное поведение.

Исходным методом визуализации в 3DS Max является сканирующий построчный алгоритм. Некоторые расширенные возможности были добавлены в сканирующий ви-зуализатор спустя годы, такие, как расчет всеобщего освещения, анализ излучательно-сти и трассировка лучей.

Mental ray (функция 3DS Max) является пригодной для производственного применения высококачественной системой визуализации, разработанной компанией Mental Images. Mental ray встроен в последние версии 3DS Max, это мощный инструмент визуализации, поддерживающий сегментную визуализацию (подобно механизму сопровождающей визуализации, реализованному в Maya), а также технологию распределенной визуализации, позволяющую рационально разделять вычислительную нагрузку между несколькими компьютерами. Включаемая в 3ds Max версия mental ray поставляется с набором инструментария, позволяющим относительно просто создавать множество различных эффектов.

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

Этот пакет является одним из лучших. В нем существуют абсолютно все возможности, которые нам нужны. Поэтому он будет использоваться нами очень широко. Также будет использоваться дополнительный визуализатор для 3D max - V-Ray, который позволит создавать более качественные текстуры и материалы для модели автокрана.

Выбор программного обеспечения, графического API

На данный момент существует два основных графических API. Это DirectX и OpenGL.

OpenGL (Open Graphics Library - открытая графическая библиотека) - спецификация, определяющая независимый от языка программирования кроссплатформенный программный интерфейс для написания приложений, использующих двумерную и трехмерную компьютерную графику.

Включает более 250-ти функций для рисования сложных трехмерных сцен из простых примитивов. Используется при создании компьютерных игр, САПР, виртуальной реальности, визуализации в научных исследованиях. На платформе Windows конкурирует с Direct3D.

DirectX - это набор API-функций, разработанных для решения задач, связанных с игровым видеопрограммированием под Microsoft Windows. Наиболее широко используется при написании компьютерных игр. Пакет средств разработки DirectX под Microsoft Windows бесплатно доступен на сайте Microsoft.

Практически все части DirectX API представляют собой наборы COM-совместимых объектов.

Для создания программы тренажера будем использовать OpenGL. Перечислим основные критерии, по которым был сделан выбор:

• Стабильность. Дополнения и изменения в стандарте реализуются таким образом, чтобы сохранить совместимость с разработанным ранее программным обеспечением;

• Надежность и переносимость. Приложения, использующие OpenGL, гарантируют одинаковый визуальный результат вне зависимости от типа используемой операционной системы и организации отображения информации. Кроме того, эти приложения могут выполняться как на персональных компьютерах, так и на рабочих станциях и суперкомпьютерах;

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

OpenGL способен работать на множествах платформ, что позволит при необходимости перенос тренажера автокрана на GNU/Linux и Mac OS X.

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

Для разработки программного продукта мы воспользовались средой программирования Delphi 2GG9.

Delphi 2GG9 может работать в среде операционных систем от Windows 9В до Windows 7.

Delphi - среда разработки, использует язык программирования Delphi (начиная с 7 версии, язык в среде именуется Delphi, ранее - Object Pascal), разработанный фирмой Borland и изначально реализованный в ее пакете Borland Delphi, от которого и получил в 2003 году свое нынешнее название. Object Pascal по сути является наследником языка Pascal с объектно-ориентированными расширениями.

Изначально среда разработки была предназначена исключительно для разработки приложений Microsoft Windows, затем был реализован также для платформ GNU/Linux (как Kylix), однако после выпуска в 2GG2 году Kylix З его разработка была прекращена, и вскоре после этого было объявлено о поддержке Microsoft.NET. При этом высказывались предположения, что эти два факта взаимосвязаны.

Реализация среды разработки проектом Lazarus (Free Pascal) позволяет использовать его для создания приложений на Delphi для таких платформ, как GNU/Linux, Mac OS X и Windows CE.

Delphi является средой RAD (от англ. rapid application development - быстрая разработка приложений).

Delphi - результат развития языка Турбо Паскаль, который, в свою очередь, развился из языка Паскаль. Паскаль был полностью процедурным языком, Турбо Паскаль, начиная с версии 5.5, добавил объектно-ориентированные свойства, а Delphi - объектно-ориентированный язык программирования с возможностью доступа к метаданным классов (то есть к описанию классов и их членов) в компилируемом коде, также называемом интроспекцией.

Delphi является ООП - объектно-ориентированным языком программирования, позволяющего резко снизить сроки разработки программ и существенно повысить их качество.

Современная технология динамической компиляции позволяет достигнуть уровня быстродействия, аналогичного традиционным «статическим» компиляторам (например, C++), и вопрос быстродействия зачастую зависит от качества того или иного компилятора.

- ІЗ9 -

Выбор дополнительных библиотек

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

Библиотека загрузки текстур

DevIL (Developer's Image Library - библиотека изображений разработчиков) -кроссплатформенная программная библиотека, целью которой является создание общего интерфейса программирования приложений для разных файловых форматов графических изображений. Изначально библиотека называлась «OpenIL», однако в связи с конфликтом с компанией Silicon Graphics была переименована в «DevIL».

DevIL состоит из трех частей: основная библиотека IL (IL Utility), библиотека утилит ILU и сервисный инструментарий ILUT (IL Utility Toolkit).

В настоящее время DevIL поддерживает чтение из 43 файловых форматов и запись в 17 файловых форматов. Среди тех форматов, для которых поддерживается и чтение, и запись, присутствуют: BMP, DDS, JPEG, PCX, PNG, RAW, TGA, TIFF.

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

Рассмотренные программы 3D моделирования являются лучшими аналогами в своей области. С помощью любой из них можно создавать и текстурировать модели. Тем не менее, для разработки тренажера автокрана мы будем использовать Blender и Autodesk 3D Max 2009, потому что по ним намного больше информации и примеров. Для этих программ также легко найти дополнительные плагины экспорта или написать собственные. Кроме того, Blender абсолютно бесплатен для любого использования. В случае с 3D Max мы будем использовать пробную версию. Для создания и редактирования текстур будет использоваться Adobe Photoshop CS с пробным периодом.

Наш выбор программного обеспечения позволит использовать всю мощь современных CPU и GPU (видеопроцессоров) за счет использования современных компиляторов и применения шейдеров. Следует заметить, что видеоадаптер необходим не ниже указанных в минимальных требованиях. Это обусловлено тем, что поддержка шейдеров второй версии начинается именно с них. Если видеоадаптер будет неподходящий, то программа тренажера автокрана будет работать с ошибками, либо не запустится вообще.

Таким образом, для создания эффективного тренажера необходимо:

- создать движок, в котором должны быть визуализатор, 3d ускоритель, API функции;

- выполнить 3d моделирование агрегатов крана для получения анимации, качественного рендеринга, текстур, настройку ограниченного физического поведения модели, для создания моделей агрегатов крана выбираем 3DS Max;

- выбрать программное обеспечение для написания головной программы.

Будем использовать Delphi - объектно-ориентированный язык программирования и API OpenGL функции для рисования 3D сцен из простых примитивов для ОС Windows.

Основные подходы при создании тренажера машин и механизмов

Задача компьютерной графики - визуализация, то есть создание изображения. Визуализация выполняется исходя из описания (модели) того, что нужно отображать. Существует много методов и алгоритмов визуализации, которые различаются между собою в зависимости от того, что и как отображать. Например, отображение того, что может быть только в воображении человека - график функций, диаграмма, схема, карта. Или наоборот, имитация трехмерной реальности - изображения сцен в компьютерных развлечениях, художественных фильмах, тренажерах, в системах архитектурного

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

Приложение

Код

(логика программы)

Контент (модели, текстуры, звуки)

Компоненты

Утилиты

Экспортер из 3ds ax

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

Редактор моделей

Редактор карт

Движок Рендер Менеджер Менеджер Физика Звук

ресурсов скриптов

Расширения

Graphics

Audio

Input

Math

Storage

Платформа

OpenGL

Windows API

DevIL

OpenAL+ Ogg Vorbis

ОБЕ

Рис. 1. Уровни программных средств тренажера автокрана

Рис. 2. Взаимодействие компонентов тренажера автокрана

Разработка тренажера очень похожа на разработку компьютерной игры. Так что можно считать, что мы создаем компьютерную игру.

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

- І4І -

дет выглядеть следующим образом: на нижнем уровне находятся библиотеки OpenGL, Windows API, DevIL, OpenAL+Ogg Vorbis, ODE, за ними - прослойка из библиотек и классов нашего движка CraneEngine, который будет содержать стандартные для каждого проекта классы и объекты, далее следуют вспомогательные утилиты, на верхнем уровне будет наше приложение с его уникальной рабочей логикой (рис. 1, 2).

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

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

Предпроизводственный процесс и производство

Обычно перед началом разработки любого тренажера 3D должна сформироваться идея. В более распространенном случае, если разработчик и издатель являются разными компаниями, идея должна быть предложена руководству, одобрена и выставлена на рассмотрение заказчикам. Если заинтересованный заказчик найден, можно начинать производство.

На этапе основного производства выполняется огромный объем работ. Программисты пишут исходный код, художники рисуют графику (спрайты или 3D-модели игровых элементов). Звукооператоры разрабатывают звуковые эффекты, а композиторы пишут музыку для игры. Дизайнеры уровней создают уровни, а писатели пишут диалоги для скриптовых сцен и неигровых персонажей.

Создание 3d объектов и включение их в проект Создание моделей в 3ds max

Для создания моделей используются стандартные приемы, которых множество в различных книгах или ресурсах Интернет. Детально их описывать нет необходимости. Модели можно создавать в любой программе моделирования. Однако нужно заметить, что программа моделирования должна иметь возможность экспорта моделей в нужный нам формат, либо предоставлять систему плагинов или скриптов для написания экспортера в наш формат. Программами, которые имеют все необходимые функции, являются Blender, Autodesk Maya, Autodesk 3ds max.

Следует также отметить некоторые рекомендации, к которым следует прислушаться при создании моделей для тренажера автокрана:

• модель крана состоит из отдельных сеток;

• для каждой сетки существует материал, который может содержать стандартные данные 3ds Max, а также карты (bump, diffuse, specular).

Процесс создания модели автокрана довольно сложный и трудоемкий.

Сначала мы создаем все объекты крана по отдельности, затем создаем для каждой части материал.

Кроме стандартных параметров материал может содержать карты. Для реализации приемов, изложенных выше, необходимы будут следующие карты: DiffuseMap, SpecularMap, BumpMap. Позже, возможно, понадобятся и другие. Их можно и не назначать, тогда 3D Max сгенерирует их сам. Используя инструмент Render To Texture, создаем необходимые карты для всех частей модели. Далее все части модели крана необходимо переместить в места, где они должны использоваться в тренажере. Результат этапов моделирования виден на рисунках 3 и 4.

На конечном этапе необходимо экспортировать модель в формат OBJ и скопировать готовые карты.

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

Рис. 3. Шасси автокрана Рис. 4. Модель автокрана

Экспорт моделей из 3ds max

В тренажере мы используем собственный формат хранения 3d моделей OBJ, нам необходимо иметь средство экспорта из среды 3ds max в наш формат. Для этих целей был написан скрипт на внутреннем языке 3d редактора.

MAXScript - это объектно-ориентированный скриптовый язык программирования, встроенный в 3ds max, и для связанных с ним продуктов.

Средство MAXScript позволяет пользователю в точности объяснить 3ds Max, что должно произойти в сцене в определенные промежутки времени. Для этого достаточно либо наглядно продемонстрировать операцию, либо ввести несколько инструкций, которые программа должна выполнить.

Скрипт успешно работает в 3ds max версии 6, 7, 8 и 9. Для экономии дискового пространства запись производится в бинарный тип данных. В файл идет запись информации о вершинах, нормалях, текстурных координатах объекта, наложенных материалах, степени прозрачности, цвете, физических параметрах.

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

Структура главной программы

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

Так как класс главной программы у нас наследуется от класса Engine, то мы можем перегрузить в нашу программу основные функции (Init, Update, Render). На рисунке 5 приведена общая схема работы нашей программы.

Сначала из перегруженной из Engine функции Init происходит инициализация переменных и настройка приложения. Если функция не существует, то, соответственно, выполнится функция из Engine, которая инициализирует все по умолчанию.

Далее вызываются функции загрузки контента (ресурсов, моделей и текстур). В ней мы загружаем все ресурсы, необходимые для работы программы [2].

После этого происходит вход в главный цикл, в котором выполняются функции Update и Render. В них и происходит вся работа. Функция Update обновляет всю логику программы (перемещения, ввод, столкновения), а функция Render визуализирует очередной кадр.

Запуск

Инициализация

Загрузка сцены

Обновление сцены

Рис. 5. Алгоритм работы основной программы

Руководство пользователя

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

Нажав кнопку «Старт», пользователь переходит в главное окно тренажера.

Основные действия, которые он может производить с краном:

• Поднятие и опускание стрелы. Функциональные клавиши E и D.

• Поворот платформы. Функциональные клавиши Q и A.

• Движение стрелы вперед и назад. Функциональные клавиши W и S.

• Поднятие и опускание крюка. Функциональные клавиши R и F.

• Выдвижение и возврат опорных ног. Функциональные клавиши - и +.

• Отцепка груза. Клавиша Enter.

Также существует возможность перемещаться на кране по площадке с помощью клавиш вперед, назад, вправо, влево и мыши для ориентации в пространстве (рис. 6).

Клавиши F1, F2 служат для переноса камеры вида на место водителя крана и место оператора стрелы, клавиша F3 устанавливает камеру в свободное положение.

Из более простых механизмов нами выполнен редуктор, основное назначение которого показать его работу, сборку и разборку (рис. 10).

Заслуживает внимания работа - Кассетное изготовление железобетонных изделий (ЖБИ), выполненная на основе нашего автокрана. На рисунках 7-9 представлена работа кассетного оборудования в процессе изготовления ЖБИ [1, 3].

Рис. 6. Поднятие и поворот стрелы одновременно

Рис. 7. Армирование установки Рис. 8. Подача бетона в установку

Рис. 9. Монтаж ЖБИ Рис. 10. Редуктор в работе

Заключение

Созданы необходимые модели для тренажеров автокрана, кассетного оборудования, работы редуктора, удалось текстурировать и оснастить их. Также был разработан 3ё движок СгапеБп§іпе, продемонстрированы приемы работы с ним для использования в других проектах. Ценность разработки тренажера автокрана в том, что компьютерный тренажер с помощью встроенного движка успевает среагировать на нажатие клавиш оператора (повороты, подъем груза, отцепка, выдвижение стрелы и пр.), при этом не замедляя процесс тренинга. Это и есть интерактивное программирование.

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

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

Можно отметить, что дипломники, способные справиться с такими работами, программируют со школьной скамьи.

Примечания:

1. Колесников А.А., Мыльников В.В. Вопросы проектирования и создания симулятора автокрана КС-55727-1 // Сборник научных трудов.

Тамбов, 2009. № 11. С 47-52.

2. . ., . . -

ектирования и создания 3d тренажера автокра-

// . , 2010.

№ 6. С. 23-27.

3. Зайцев Л.В. Автомобильные краны. М.: Высш. шк., 1987. 322 с.

References:

1. Kolesnikov A.A., Mylnikov V.V. Problems of design and creation of the simulator of the KC-55727-1 truck crane // Collection of scientific works. Tambov, 2009. No. 11. P. 47-52.

2. Burdenko A.I., Mylnikov V.V. Problems of design and creation of the 3D simulator of the truck crane // Collection of scientific works. Tambov, 2010. No. 6. P. 23-27.

3. Zaytsev L.V. Automobile cranes. M.: Vyssh. shk. 1987. 322 pp.

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