Engine
Класс: -
Функции движка (Engine), в отличие от остальных, не относятся к какому-либо типу объектов.
Служат для общего управления Phantom3D и задания базовых параметров. Функции движка можно
считать наиболее важными и первоочередными из всех.
EngineCreate
real = EngineCreate( hwnd as
real );
Инициализирует Phantom3D и создает корневой объект сцены. После вызова этой функции вы можете использовать другие функции движка.
Инициализация движка может происходить только один раз за одно время, то есть, вы не можете снова вызвать
эту функцию, пока не будет выполнена EngineDestroy.
hwnd - идентификатор окна, к которому следует привязать движок. Идентификатор окна игры в GML
возвращается функцией window_handle.
EngineDestroy
real = EngineDestroy();
Уничтожает Phantom3D, освобождая память из-под всех его ресурсов. После вызова этой функции вы не
можете использовать другие функции движка, пока не будет выполнена
EngineCreate.
EngineClearBuffers
real = EngineClearBuffers( );
Очищает буферы цвета и глубины.
EngineUpdateProjection
real = EngineUpdateProjection( camera as
real );
Трансформирует позицию наблюдателя в соответствии с локальной трансформацией заданного объекта.
camera - id объекта, который используется в качестве виртуальной камеры. Вы можете использовать объект типа Camera или
любой другой.
EngineSwapBuffers
real = EngineSwapBuffers( );
Копирует содержимое вторичного буфера в первичный.
EngineUpdateRootObject
real = EngineUpdateRootObject( );
Обновляет состояние корневого объекта сцены. Так как все объекты сцены подчиняются корневому, вызов этой функции
производит обновление состояний всех созданных объектов. Вы также можете вручную обновить любой объект при помощи функции
ObjectUpdate.
EngineViewerResize
real = EngineViewerResize( x,y,width,height as
real );
Изменяет позицию и разрешение области рисования Phantom3D. Обычно в играх это не требуется, но может пригодиться, например,
если Вы даете игроку возможность растягивать окно в оконном режиме.
x,y - координаты (левого верхнего угла) относительно окна Game Maker
width, height - разрешение в пикселях по горизонтали и вертикали.
EngineSetBackgroundColor
real = EngineSetBackgroundColor( color as
real );
Задает фоновой цвет области рисования Phantom3D.
color - id цвета.
EngineSetClippingPlanes
real = EngineSetClippingPlanes( near,far as
real );
Задает расстояния ближней и дальней плоскостей отсечения.
near - расстояние ближней плоскости отсечения
far - расстояние дальней плоскости отсечения
EngineGetDeviceContext
real = EngineGetDeviceContext( );
Возвращает контекст устройства окна (DC), в котором инициализирован движок.
EngineGetRenderContext
real = EngineGetRenderContext( );
Возвращает контекст рендеринга движка (RC).