Ну в дельтафорсе воксели были, а здесь рейтрессинг. Вот кстати, прикольный воксельный ремейк вульфенштайна - http://sourceforge.net/projects/voxelstein3d/ Абсолютно все разрушаемо!!!
Ничего конкретного сказать не могу, ибо все линки мертвые. Ну а по описанию можно сказать что это рендеринг объема. Т.е. каждый треугольник вдоль своей нормали продвигается на некое расстояние и объем получившийся между оригинальным и "выдвинутым" треугольником рендерится. По сути это все тот же параллакс только вместо того, чтобы наблюдать за рельефом через окно величиной с полигон мы выстраиваем 4 окна, через которые можно смотреть на рельеф и перпендикулярно нормали.
Метод крайне неэффективен и представляет из себя по сути рейтрейс. Но что саме страшное - рейтрейс деляется не для каждого пикселя экрана, а для каждого пикселя на волюм боксе (который вокруг каждого полигона строится ). Логично, что при большом скоплении таких поверхностей в кадре рейтрейс может даже эффективнее данного метода оказаться.
Так что это просто баловство и ничего более. Для положительного искажения поверхностей давно дисплейсмент маппинг придумали.
Ясно, спасибо) интересный способ. А на сфере это бы как выглядело? Оо Кстати про интервал маппинг нашел только то, что он типа качественнее рельеф маппинга. С кратким описанием и одной картинкой. Даже демок не видать.
Дисплейсмент? Самый обычный с разбиением геометрии и выдавливанием по карте высот? А оно разве в играх применяется? Для рендера и то тяжело бывает а тут...
" А на сфере это бы как выглядело?"
Точно так же ))
"Кстати про интервал маппинг нашел только то, что он типа качественнее рельеф маппинга"
Плохо искал. Я гдето даже пдфник от разработчиков метода находил... Сейчас не на своем компе, поэтому точнее сказать не могу
"Дисплейсмент?"
Да, самый обычный. Его можно было еще на СМ3.0 делать, ибо там доступ к текстурам из вершинного шейдера стал возможным. А на СМ4.0 это вообще обычное дело, ибо на геометрических шейдерах можно делать разбиение полигонов. Насчет игр точно сказать не могу, но если даже сейчас этого нет, то это дело обозримого будущего. Как минимум в технодемках УЕ3 это много лет назад было.
Хм, ну пожалуй что если делать его выборочно и для крупных деталей (ибо лимон поликов на какой-нибудь например проректор покрышки, как любят делать для рендеров) то может быть.
для земельных рельефов каких-нибудь. На сложных моделях с трудом представляю дополнительные сотни тысяч и миллионы моли. Наверное уж дешевле будет трассировку в боксе рассчитывать))) имхо
Ох-ох-ох... Зачем ударятся в крайности? Зачем миллион поликов? И вообще, откуда у тебя данные, которые позволяют судить что трассировка будет быстрей?
Каковы основные принципы дисплейсмент маппинга? Мы строим модель средней полигональности (7к-10к полей), создаем дисплейсмент для этой модели. И затем при рендеринге получаем модель во много раз большей полигональности. Почему же сразу не сделать хайполи в 35к? А потому, что у нас пропускная способность шины станет узким местом, и ГПУ, вместо того чтобы рисовать полики будет ждать, пока из памяти подгрузятся все данные. Каджая вершина несет в себе 4 координаты, до 32 текстурных координат, нормаль, бинормаль, тангент, весовые коэфициенты, первичный, вторичный цвет, коэф затуманивания и т.д... А с дисплейсмент мапой мы на каждую вершину передаем всего один байт, это в самом худшем случае раз в тридцать меньше!!! Поэтому намного быстрее передавать 10к поликов + дисплейсмент, и уже на ГПУ рассчитывать дополнительные 20к поликов, чем передавать 30к поликов.
К тому же рейтрессинг - процесс весьма неоднородный, т.е. количество инструкций, необходимых для нахождения точки пересечения не константно и иногда очень сильно различается. А ГПУ устроен таким образом, что для него очень важна однородность вычеслений. Он быстрее выполняет шейдер, который всегда выполняет 30 инструкций, чем шейдер, который может выполнять от 10 до 30 инструкций. Так вот расчет дисплейсмента - это однородный процесс. И это еще один плюс в пользу дисплейсмена.
2KLIMaka
чтобы получить действтельно хорошую детализацию надо разбить полик ой как много раз.
"И вообще, откуда у тебя данные, которые позволяют судить что трассировка будет быстрей?"
а зачем тогда всякие там параллаксы?)