Хрень

  • 07 мая 2014 г.
  • 5811 Слова
Что такое GLScene
GLScene – это графический бесплатный и очень функциональный трехмерный движок для Delphi. В качестве API GLScene использует библиотеку OpenGL. Скачать новую версию glscene всегда можно по ссылке http://sourceforge.net/projects/glscene/files/. GLScene является бесплатным для некоммерческого, а также и для коммерческого использования и распространяется в интернете с открытымисходным программным кодом. С помощью GLScene программирование трёхмерной графики в Delphi становится более простым.
Разработка движка началась еще в 1999 году Майком Лишке, а с версии 0.5 движок был выложен в интернете с открытым исходным кодом. В настоящий момент версия движка - 1.1 (август 2010), он избавился от большого количества ошибок, пополнился новым функционалом и стал гораздо быстрее благодаряразличным оптимизациям.
Для создания простой сцены достаточно потратить совсем немного времени, разместив необходимые компоненты. К таким компонентам относятся камеры, примитивы, источники света, а также другие полезные объекты. То есть можно добавить на сцену шар, указать его параметры, расположение. Конечно же, кроме примитивов, в GLScene существует возможность загружать объекты произвольнойформы, заранее спроектированные в специальных трехмерных графических редакторах, таких как 3DS Studio Max, Maya и других.
GLScene поддерживает для загрузки и обработки следующие форматы файлов: 3ds, obj, vrml, smd, lwo, md3, md2, nmf, oct, b3d, gls, gl2, ms3d, lod, Nurbs и некоторые другие. GLScene позволяет работать со скелетной анимацией, что существенно упрощает создание анимированных игровыхперсонажей.
Естественно есть возможность накладывания и изменения материала объекта. Материал в GLScene представляет собой совокупность текстур и параметров, которые могут быть применены к любым объектам на сцене. В GLScene уже встроены готовые огонь, вода и деревья.
GLScene поддерживает физику ODE и Newton Game Dynamics. Кроме этого есть небольшой собственный движок расчёта столкновений с учётом законовсохранения импульса (DCE).
На сайте http://sourceforge.net/projects/glscene/files/ доступно огромное количество готовых примеров, демонстрирующих различные возможности движка.
Установка GLScene
В Delphi поддержка GLScene начинается с версии Delphi5, но полноценная поддержка осуществляется только на 6,7,2006,2007,2009,2010 и XE. Версии 2009 и выше являются современными, более комфортными, с поддержкойUnicode и оптимизацией под новые платформы Windows. DelphiXE создает приложения только для Windows XP и выше. 
Скачав архив с GLScene, распакуйте его в папку (например в С:\ Delphi).

Преднастройка GLScene

Перед установкой (как и после) GLScene, можно настроить библиотеку включив или отключив некоторые опции в файле-настройке "GLScene/Source/glscene.inc" в разделе "Additionnal support &dependencies".

{$DEFINE GLS_Graphics32_SUPPORT} - включение поддержки библиотеки Graphics32 (Alex Denisov) для работы с 32х битными RGBA изображениями: качественные копирование, смешивание, матричные трансформации и изменение размеров с применением различных фильтров. 
{$DEFINE GLS_PngImage_SUPPORT} - включение поддержки PNG для старых версий Delphi. С Delphi2009 поддержка по умолчанию. {$DEFINE GLS_PngImage_RESIZENEAREST} - автоматически придает ширине PNG изображения кратность 4 в большую сторону, что важно для сохранения прозрачности текстуры.
{$DEFINE GLS_OPTIMIZATIONS} - отключение некоторых свойств объектов для оптимизации.
{$DEFINE GLS_ENABLE_UNSAFE_WARNINGS} - разрешение сообщений компилятора типа "Unsafe Type" и "Unsafe Code".
{$DEFINE GEOMETRY_NO_ASM} - отключениеассемблерных вставок в модуле VectorGeometry.pas.
{$DEFINE GLS_NO_ASM} - отключение ассемблерных вставок в модулях сцены.
{$DEFINE GLS_NO_INLINE} - отключение директивы inline в модулях сцены.
{$DEFINE GLS_NO_REGIONS} - отключение директив {$REGION} в модулях сцен.
{$DEFINE GLS_LOGGING} - активация ведения журнала (*.log).
{$DEFINE GLS_OPENGL_DEBUG} - активация режима отладки...
tracking img