Дэвелопер
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений (для 2,920 пользователей)
|
Xors3D. Версия 1.14
Итак, свершилось - официально зарелизили версию 1.14!
Список изменений:

Исправлено:
Баг с рендером в текстуру, размер которой меньше размера бекбуфера
Баг с xFreeEntity для спрайтов
Переписана система Images. Убран баг с созданием картинок и текстур, размер которых больше размера бекбуфера
Баг с xSetBuffer()
Форматирование html-log файла
Ускорена загрузка анимированных моделей
Баг с копированием пустых сюрфейсов
Исправлена загрузка текстур с флагом 2 (альфа)
Исправлены незначительные баги с анимированными моделями
Доступно наложение эффектов на поверхности (раньше можно было только на весь энтити целиком)
Баг с установкой глобальных координат
Баг с родительскими отношениями между энтити
Баг с xEntityFX(), xEntityColor() и т.д. (не действовали на новые поверхности)
Баг с масштабированием в локальных координатах
Незначительный баг по загрузке статических мешей
Баг с упорядоченными энтити (ordered entities)
Баг с установкой альфы вершин у меша с маскированной текстурой
В оконном режиме границы окна теперь неперемещаемые
Баг с перемещением энтити в локальных координатах
Баг с пониженным ФПС при вклюенной VSync на свеже-установленной системе
Обновлен xScript. Теперь у xExecuteScript 2 аргумента. Первый остался прежним, а второй - прототип точки входа. Необходим для вызова любой функции скрипта.
Добавлено:
Первая версия документации
xScript:
void xSetIntegerArg(int index, int value);
void xSetFloatArg(int index%, float value);
void xSetStringArg(int index%, const char * value);
int xGetIntegerReturn();
float xGetFloatReturn();
const char * xGetStringReturn();
Log system:
6 уровней сообщений:
none
info
message
warning
error
fatal
3 цели:
html file
std::cout
string
xCreateLog(target, level, filename) - включает логгирование. Используйте один раз в начале программы
xGetLogString - получает сообщения лога, если цель - string. Работает как буфер - собирает все сообщения лога до вызова этой функции или xClearLogString
xClearLogString - очищает строку, хранящую сообщения лога
xSetLogLevel(level) - устанавливает уровень логгирования
xGetLogLevel(level) - возвращает текущий уровень логгирования
xSetLogTarget(target) - устанавливает цель логгирования
xGetLogTarget(target) - возвращает текущую цель логгирования
Шейдерные материалы теперь получают константы автоматически. Список автоматических констант:
матрицы - WORLD, VIEW, etc
все 8 текстурных слоев
свет - позиция, направление, радиус действия, цвет, внутренний и внешний углы
цвет сюрфейса - duffuse, specular, интенсивность of specular color
ambient color
EntityFX
режимы блендинга
Deferred Shading:
xSetDeferredShader(mrtShader, finalShader) - устанавливает шейдеры для деферреда
xInitDeferred(channel1, channel2, channel3, channel4) - инициализирует деферред рендер с указанием конкретных форматов для каналов g-buffer'a
xRenderWorldDeferred(забыл) - рендерит сцену с использованием техники DS
Тени:
Старая система PSSM объявлена устаревшей
xRenderShadows(camera%, texture%) - рисует тени от всех источников
xLightShadowEpsilons(light%, eps1#, eps2#) - ставит эпсилоны для выравнивания погрешностей вычислений с плавающей точкой
xSetShadowShader(path$) - указывает пть к шейдеры рендера теней
xInitShadows(dirSize%, spotSize%, pointSize%) - инит системы теней с указанием размера теневой карты для каждого типа источника
xSetShadowParams(splitPlanes%, splitLambda#, useOrtho%, lightDist#) - натройка парамеров PSSM
xEntityCastShadows(entity%, light%, state%) - включает/выключает отбрасывание тени от заданного источника
xEntityIsCaster%(entity%, light%) - проверяет бросает тени или нет
xShadowPriority(prior%) - глобальный приоритет рендера теней. если у источника приоритет ниже - тени не рисуются
xLightEnableShadows(light%, state%) - включает тени для истоника, последний параметр - приоритет
xLightShadowsEnabled%(light%) - проверят включены тени или нет
Можно на каждый сюрфейс отдельно накладывать эффекты
Убрано:
Пиксельные и вершинные шейдеры объявлены устаревшими. Теперь следует использовать эффекты.
|
Скачать можно по следующим ссылкам: exe, zip
Так же напоминаем, что по адресу http://latest.xors3d.com расположена всегда самая свежая сборка движка.
Напоследок добавлю - завтра скорее всего будет выложен урок по использованию шейдеров в Xors3D, а также в ближайшее время начнется работа над созданием редактора для движка.
С уважением, команда разработчиков Xors3D
|