Показать сообщение отдельно
Старый 26.06.2009, 01:54   #1
Knightmare
Дэвелопер
 
Регистрация: 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
(Offline)
 
Ответить с цитированием
Эти 24 пользователя(ей) сказали Спасибо Knightmare за это полезное сообщение:
3dr1aN (26.06.2009), ABTOMAT (26.06.2009), Amatsu (26.06.2009), CRASHER (30.06.2009), Dzirt (26.06.2009), falcon (26.06.2009), Fatalix3d (06.07.2009), G.A.D (02.07.2009), h1dd3n (26.06.2009), H@NON (26.06.2009), impersonalis (26.06.2009), Main Cry (11.07.2009), Mhyhr (26.06.2009), moka (26.06.2009), rr333 (26.06.2009), SBJoker (26.06.2009), Sleepybear (29.06.2009), Tadeus (26.06.2009), Taugeshtu (26.06.2009), tirarex (10.04.2013), tormoz (26.06.2009), Yalenz (01.07.2009), ІГРОГРАЙКО (25.07.2009), Черный крыс (27.06.2009)