Часто Задаваемые Вопросы
по Xtreme3D V2.
Автор: Gecko

Если возникли проблемы...

Вместо того, чтобы лишний раз беспокоить разработчика
или народ на форумах, не поленитесь заглянуть в этот
документ. Может быть, решение Вашей проблемы уже есть!
Здесь упомянуто только несколько основных
вопросов. Да, знаю, мало, но в будущем, возможно,
количество будет увеличено. Пишите на cocktower89mail.ru,
спрашивайте (или, наоборот, присылайте ответы :).

Содержание:
1. Почему движок не запускается?
2. Почему движок работает медленно?
3. Как увеличить производительность игр на Xtreme3D?
4. Почему модели в игре неправильно повернуты?
5. Почему при загрузке моделей не загружаются текстуры?
6. Что такое Манекены (Dummycubes) и для чего они нужны?
7. Почему в Xtreme3D не работают события мыши?!!!
8. Почему мои спрайты выглядят тусклыми?
9. Как растянуть окно игры на весь экран? Опция Start in fullscreen mode
не работает!

Q: Почему движок не запускается?
Q: Почему движок работает медленно?
A: Движок работает нормально. Xtreme3D требует OpenGL 1.5-совместимую
видеокарту и установленные драйвера OpenGL. Если Ваша видеокарта не под-
держивает OpenGL 1.5, движок будет работать в программном режиме, 
который существенно медленнее, чем аппаратный. 
Если и аппаратный режим идет медленно, проблема может быть решена 
обновлением драйверов видеокарты с сайта производителя.

Q: Как увеличить производительность игр на Xtreme3D?
A: Существует несколько распространенных способов:
     1. Используйте менее детализированные модели и текстуры
     2. Разделите все игровое пространство на части и отключайте отдельные части
по мере надобности
     3. Отключайте или удаляйте ненужные в данный момент объекты
     4. Уменьшите разрешение ресурсоемких эффектов (Вода, Размытие и т.д.) и
процедур (рейтрейсинг, проверка столкновений и т.д.) или откажитесь от их 
использования.
     5. Установите рендеринг в событии Alarm вместо Step. FPS возрастет как 
минимум на 30%!
     6. Вместо загрузки одного и того же объекта несколько раз, используйте
дублирование. Это существенно сэкономит память.

Q: Почему модели в игре неправильно повернуты?
A: Причина кроется в различиях между координатными системами 
Direct3D и OpenGL. Вы легко можете исправить положение,
    а)переориентировав модель в 3D-редакторе, так, чтобы при загрузке в 
Xtreme3D она была повернута правильно;
    б)сделав модель дочерней для Манекена (Dummycube) и повернув модель
при помощи ObjectRotate (в этом случае для всех остальных действий вместо
модели используется Манекен);
    в)повернув модель при помощи MeshRotate (только для моделей типа Freeform)

Q: Почему при загрузке моделей не загружаются текстуры?
A: Библиотеки материалов Xtreme3D по умолчанию загружают все текстуры из 
рабочей директории игры. Если модель находится в какой-либо папке (например, DATA/Models/), 
то Вы должны указать ее как путь к текстурам для при помощи MaterialLibrarySetTexturePaths.
Если одновременно загружаются модели из разных папок, следует создать несколько Библиотек 
материалов и при загрузке переключаться между ними при помощи MaterialLibraryActivate.
Для каждой из них необходимо указать путь к текстурам соответствующей модели.

Q: Что такое Манекены (Dummycubes) и для чего они нужны?
A: Манекены - очень важный тип объектов. Они невидимы и используются для
создания иерархических структур. Сделав Манекен родительским для одного или
нескольких объектов, Вы можете управлять ими всеми сразу, управляя Манекеном.
Например, если отключить Манекен, то все его дочерние объекты также будут
откдючены. Это очень удобно для представления группы объектов одного типа.
Второе главное назначение Манекенов - создание так называемых шарнирных
структур (pivot), когда вторичные состояния объекта находятся в зависимости от 
первичных. Если, скажем, неободимо получить или задать поворот объекта независимо 
от вектора направления, то проще будет сделать объект дочерним для Манекена и для 
работы с направлением использовать Манекен, а для поворота - объект.
Подобная структура используется также в скелетной анимации.

Q: Почему в Xtreme3D не работают события мыши?!!!
A: События мыши проверяют только окно GM, в то время как Xtreme3D создает новую
активную форму поверх старой, и поэтому обычные события мыши в ней не работают.
Нажатия кнопок мыши можно проверять только функцией keyboard_check_direct(mb_left)
или keyboard_check_direct(mb_right) - в этом случае нажатия проверяются непосредственно
на аппаратном уровне, вне зависимости от конкретного активного окна.

Q: Почему мои спрайты выглядят тусклыми?
A: В версии 2.0.2.0 есть функция для отключения записи в z-буфер: SpriteNoZWrite.
Если активировать ее для спрайта, качество смешивания изображений будет приближено к 
оригиналу.

Q: Как растянуть окно игры на весь экран? Опция Start in full-screen mode не работает!
A: В Global Game Settings на вкладке Resolution поставьте галочку Set the resolution of the screen.
В списке Resolution выберите нужное Вам разрешение (обычно то, которое было указано
в функции ViewerCreate). На вкладке Graphics все же выберите Start in full-screen mode,
т.к. без полноэкранного режима будут видны границы окна.