forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Проекты C++ (http://forum.boolean.name/forumdisplay.php?f=56)
-   -   [TrueHorror] - разработка (http://forum.boolean.name/showthread.php?t=17293)

Mr_F_ 16.05.2014 15:16

Ответ: [TrueHorror] - разработка
 
выше всё описано.

tirarex 16.05.2014 15:46

Ответ: [TrueHorror] - разработка
 
Эх , често не знаю как нарисовать энтити в стенсл буфере .

Mr_F_ 16.05.2014 16:52

Ответ: [TrueHorror] - разработка
 
а у тебя там ксорс, не свой двиг?
ты можешь все стейты стенсиловские и другие указывать в FX шейдерах, внутри техники.

mr.DIMAS 17.05.2014 13:42

Ответ: [TrueHorror] - разработка
 
Решил немного оптимизировать рисование шариков света - рисовать своими шейдерами:

Вершинный
Код:

      "float4x4 g_worldViewProjection;\n"

      "float4 main( in float4 position : POSITION0 ) : POSITION0\n"
      "{\n"
      "  return mul( position, g_worldViewProjection );\n"
      "};\n";

Код:

      "float4 main( ) : COLOR0\n"     
      "{\n"
      "  return float4( 1.0, 1.0, 1.0, 1.0 );"
      "};\n";

Так вот если отрисовывать сцену дефолтными шейдерами( то бишь шедерами пайплайна ) - то все норм - освещение выполняется отлично. если же моими простешими - начинается шайтанамана - все пляшет скачет рвется.

Код рендеринга тот же самый - только заменил дефолтные шейдеры на свои и передал матрицу.
В тоже время если включить запись в буфер цвета - там все норм - шарики отрисовываются.
Я что-то упустил в шейдерах? Сижу уже полдня баг ищу.

Mr_F_ 17.05.2014 14:11

Ответ: [TrueHorror] - разработка
 
шейдеры как шейдеры, видимо где-то ещё косяк.

pax 17.05.2014 16:01

Ответ: [TrueHorror] - разработка
 
В буфер глубины пишут?

mr.DIMAS 17.05.2014 16:02

Ответ: [TrueHorror] - разработка
 
Цитата:

В буфер глубины пишут?
Нет, запись в буфер выключена. В буфере сидят данные с первого прохода

-----
ладно вернул как было - задобало разбираться - ибо есть чем заняться.

я так понял, на этот подход с использование буфера трафарета плохо ложаться тени - у нас рисуется область только ограниченная шариком света?

как быть с тенями вообще? если у меня мало поликов на сцене и много точечных источников света, имеет ли смысл использовать stencil shadow volumes?

Mr_F_ 17.05.2014 16:39

Ответ: [TrueHorror] - разработка
 
Цитата:

я так понял, на этот подход с использование буфера трафарета плохо ложаться тени
нет, они никак не связаны

Цитата:

если у меня мало поликов на сцене и много точечных источников света, имеет ли смысл использовать stencil shadow volumes?
имеет, только сглаживать запаришься
в играх очень редко больше ~8 тенеотбрасывающих реалтайм источников бывает.
насчёт стенсила, имей в виду, что он по филлрейту очень жруч, хотя может показаться что это не так.

тебе на самом деле надо кучу точечных источников с реалтайм тенями? что за игру ты делаешь?

mr.DIMAS 17.05.2014 16:49

Ответ: [TrueHorror] - разработка
 
Реально много источников с тенями не нужно. Просто хочется пощупать технологии чтоли. Вот деферед раньше считал что не смогу сделать, а оказалось все просто( не без твоей помощи конечно ).

А для игры, свет с тенями нужен будет только для spot-light'ов ( например фонарик ). Точечные источники прожорливые по теням( это если шадоумапы использовать ) - поэтому их буду использовать для освещения уровня, где тени особо не нужны.

Samodelkin 17.05.2014 17:23

Ответ: [TrueHorror] - разработка
 
Вот здесь есть еще несколько полезных примеров где можно deferred shading применять.

Mr_F_ 17.05.2014 19:59

Ответ: [TrueHorror] - разработка
 
Цитата:

А для игры, свет с тенями нужен будет только для spot-light'ов ( например фонарик ). Точечные источники прожорливые по теням( это если шадоумапы использовать ) - поэтому их буду использовать для освещения уровня, где тени особо не нужны.
ага, ну ты забей на стенсильные лучше - они реально почти нигде не нужны.
недавно я их использовал в проекте с требованиями, похожими на твои - очень простая сцена (мир из кубиков), но десятки лайтов - поинты, споты, и полная динамичность, при этом на сглаживание было пофиг (не реализм ни разу). вот выяснилось, что не так уж и мало даже стенсильные жрут (хоть на экране тени занимают немного, сами волумы реально довольно огромные, и они все дрочат стенсил), пришлось их для говнокомпов со встроенным гпу рендерить в 2 раза меньший РТ и потом через жопу апсемплить, чтобы не палилось.

А лайтмапы ты не любишь? =)
Делай лмапы + пяток спотов с шадоумапами - будет норм скорость и качво.

mr.DIMAS 17.05.2014 20:56

Ответ: [TrueHorror] - разработка
 
Лайтмапы хороши - но блин уже 2014 год на дворе - хочется разнообразия.

Еще один затык пришел - как быть с системами частиц? У меня есть и туман - который подвержен освещению и огонь, на который свет не влияет. Как совместить деферед и системы частиц? ( с г-буфером дефереда можно сделать мягкие частицы, поэтому совместить нужно )

ARA 17.05.2014 21:45

Ответ: [TrueHorror] - разработка
 
Цитата:

Сообщение от mr.DIMAS (Сообщение 280993)
Лайтмапы хороши - но блин уже 2014 год на дворе - хочется разнообразия.

Интересно какую альтернативу лайтмапам ты предложишь.:)

pax 17.05.2014 22:23

Ответ: [TrueHorror] - разработка
 
Прозрачность и частицы вроде отдельно всегда рисуют, после основного прохода.

Mr_F_ 17.05.2014 22:43

Ответ: [TrueHorror] - разработка
 
Цитата:

Еще один затык пришел - как быть с системами частиц? У меня есть и туман - который подвержен освещению и огонь, на который свет не влияет. Как совместить деферед и системы частиц? ( с г-буфером дефереда можно сделать мягкие частицы, поэтому совместить нужно )
дефер не совместим с ничем полупрозрачным =P

Цитата:

Лайтмапы хороши - но блин уже 2014 год на дворе
на дворе 2014 - а в плане качества для статики ничего лучше всё ещё не придумали =P


Часовой пояс GMT +4, время: 15:07.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot