Анимация в компьютерной графике - программирование

Программируемая анимация

В некоторых случаях, особенно при производстве или в науке, покупка 3D-редакторов не будет обоснованной, и они не покроют задач, стоящих перед предприятием.

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

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

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

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

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

Для того, что бы облегчить вхождение разработчиков в индустрию разработки игр, были созданы так называемые «игровые движки»:

Игровые движки

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

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

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

Некоторые движки:

Doom engine

Движок был разработан в 1993 году для игр Doom и Doom 2, а в 1997 году исходный код движка  был открыт для общественности. Впрочем, этот движок «псевдотрехмерный» - он только имитирует видимость 3D.

Quake engine

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

id Tech 4

Оригинальный и свободный для использования движок игры Doom 3

Unity

Этот движок стремительно набирает популярность, так как позволяет создавать игры не только для компьютеров, но и для мобильных устройств на базе iOS и Android, а так же под игровые консоли, такие как Xbox и PlayStation



Последнее изменение:


Крипто-кошельки для помощи и благодарности проекту:

Bitcoin адрес проекта: [[address]]

Перевод на сумму [[value]] BTC получен. Спасибо!.
[[error]]

Ethereum адрес проекта: [[address]]



Комментарии
Пожалуйста, авторизуйтесь, что бы оставить свой комментарий