Реклама:

GLScene имеет поддержку трехмерного звука через A3D, ЕАХ, FMOD и BASS. Недавно появилась поддержка расширенных устройств ввода, в том числе джойстиков с обратной связью и гейм-падов. В будущем можно будет запрограммировать даже такие новые для нас устройства, как мыши с обратной связью.

Что нам стоит мир построить

А теперь давайте отвлечемся от теории и поговорим о практике. Вначале не было ничего. Но великий Создатель поместил на форму GLScene и GLSceneViewer, создал камеру, и появился мир. Но вокруг была тьма. И тогда Создатель сотворил TGLLight и GLDisc (Землю). Но все было серым и блеклым, как на Луне.

И натянул Создатель на диск текстуру с цветочками (GLDiscl. Material.texture.disabled:=faise;GLDiscl.Material. texture. image. loadf romf ile ( ' zemlia. jpg • ) . ), и Земля расцвела.

Но темно было над головой. И тогда Создатель сотворил TGLSkyDome, и поплыли облачка на голубом небе. Но не было на земле ни души. И сотворил Создатель TActor, и загрузил туда МБ2-файл персонажа из "Quake", и задал анимацию Run, и побежал квакер по матушке-земле.

Вдруг на пути квакера возникла китайская ваза. (TFreeForm позволяет загрузить файл 3ds max. Если для текстуры вы установите режим tmmodulate, то она обернет вазу и, если tmdecal, — належится в соответствии с координатами, заданными в файле 3DS.) И выстрелил квакер в вазу (огонь можно создать, добавив объекту TGLFireBehavior и ассоциировав с ним FireFXManagerj, и разбилась она вдребезги (столкновение определяется событием OnCollision у TCollisionManager, возвращаются указатели на столкнувшиеся объекты; у каждого объекта, участвующего в проверке столкновения, должен быть установлен TCol lis ion-Behavior).

Но не успокоился квакер. Увидел он пальму (простые объекты можно задавать спрайтами — объект TSprite). И нацелился он на пальму. Но тут Создатель разозлился на неуемного квакера, и опустился туман на землю (свойство Fog у TGLSceneViewer), и ударил Создатель квакера молнией по темечку (TThorFX, аналогично TFireFX). Загремел реквием (TWaveOut), и запылала на мониторе надпись Game Over (THUDText вкупе с TBitmapFont).

За линией горизонта

Движок без будущего — это мертвый движок. Genesis 3D, скорее всего, уже мертв. А вот GLScene живее всех живых. Какое бы новшество ни внедрили разработчики игр в новейшие хиты, какие бы возможности ни добавили производители к своим видеокартам, команда создателей GLScene всегда готова реализовать их в программном коде и сделать общедоступными. Так случилось, например, когда компания 10 Interactive выпустила свою знаменитую игру Hitman: Codename 47. Помнится, коллега из соседнего отдела восхищался тем, что трупы убитых не проваливаются сквозь столы и стены, а падают строго по законам физики. Убит негодяй около стола — значит, и рухнуть должен на стол. Убит около стены — должен не тупо провалиться в нее, а медленно сползти, оставшись в полусидячем положении с дыркой в виске и кровью, размазанной по стенке.

Чудеса на этом не заканчивались. Вся физика в игре была выполнена на высочайшем уровне, поражая своей реалистичностью. В чем секрет? В уникальной технологии Verlet, которая позволяет рассчитать физические сцены, не загружая сверх меры центральный процессор. Ошибкой тех, кто пытался внедрить реалистичную физику в играх до Ю Interactive, было то, что они не понимали разницу между игрой и реальностью. Они применяли к игровым сценам совершенные ньютоновские законы и получали перегрузку процессора. Слишком тяжелыми и громоздкими были вычисления. Игра Ю Interactive использовала несколько другую систему, которая применяется для симуляций в молекулярной физике. Всего несколько упрощений снизили нагрузку на центральный процессор в несколько сотен раз. Результат оценили геймеры всего мира, и результат их поразил. После этого команда GLScene решила использовать эту технологию для физических симуляций. Система еще не внедрена в ядро GLScene, но уже прекрасно функционирует.


⇐ Предыдущая страница| |Следующая страница ⇒