Войти
ПрограммированиеФорумГрафика

Два рендер-таргета по выбору. (2 стр)

Страницы: 1 2 3 4 Следующая »
#15
8:08, 20 фев. 2021

Kripto289
Помоему это что-то про сепульки и сепулькарий...
Специально для MrShoor: это из Станислава Лема  - "Звездные дневники Йона Тихого".


#16
8:18, 20 фев. 2021

MrShoor
> В вершинном шейдере объявляешь SV_ViewportArrayIndex семантику в которую пишешь индекс вьюпорта.
Погоди, мне нужно выбрать таргет (не вьюпорт) в процессе выполнения вертексного шейдера, т.е это шейдер решает куда писать в зависимости от состояния принмаемых данных. Я не могу менять что-то на CPU, используется DrawIndexedInstanced (рендер таргет зависит от инстанса). Как это будет выглядеть в коде? Ты сам то это пробовал?

#17
(Правка: 8:38) 8:38, 20 фев. 2021

san
> Погоди, мне нужно выбрать таргет (не вьюпорт) в процессе выполнения вертексного
> шейдера
Ох, черт. Только сейчас заметил, что не ту семантику скопипастил. Гугли SV_RenderTargetArrayIndex

#18
8:49, 20 фев. 2021

MrShoor
> SV_RenderTargetArrayIndex
Покопал, но что-то не нашел ни одного примера как ее применять. Поскольку дело движется к часу ночи а Бушмиллс к нулю (что прискорбно), то думаю на сегодня я уже все. Завтра просплюсь и попробую все осмыслить. Если будет чем.

#19
(Правка: 18:23) 18:17, 20 фев. 2021

MrShoor
Читаем:
"SV_RenderTargetArrayIndex - Render-target array index. Applied to geometry shader output, and indicates the render target array slice that the primitive will be drawn to by the pixel shader. SV_RenderTargetArrayIndex is valid only if the render target is an array resource. This semantic applies only to primitives; if a primitive has more than one vertex, then the value from the leading vertex is used. This value also indicates which array slice of a depth/stencil view is used for read/write purposes.
Can be written from the geometry shader, and read by the pixel shader."

Т.е. это все относится к геометрическому шейдеру и требует включения этого шейдера во все имеющиеся связки VS/PS. Собственно я это уже сказал во втором посте.

#20
18:23, 20 фев. 2021

san
> Читаем
До конца если прочитать то там так:

If D3D11_FEATURE_DATA_D3D11_OPTIONS3::VPAndRTArrayIndexFromAnyShaderFeedingRasterizer is true, then SV_RenderTargetArrayIndex is applied to any shader feeding the rasterizer.
#21
18:29, 20 фев. 2021

MrShoor
Насколько я понимаю это относится ко всем шейдерам пейплайна, но инициируется из геометрического шейдера как сказано в первой фразе. Ты сам то это использовал или это теоретические познания на основе копания в инете?

#22
18:36, 20 фев. 2021

тоже подумал что с названием троллинг
гореть им в аду за то что RT сократили

#23
(Правка: 18:48) 18:46, 20 фев. 2021

MrShoor
Нашел вот такое упоминание данного метода:
if your GPU supports VPAndRTArrayIndexFromAnyShaderFeedingRasterizer you can use uint RT : SV_RenderTargetArrayIndex; in your vertex shader to select different Rendertargets\viewports. Setup two render targets and draw with instancing one is for standard meshes other is for reflection meshes Give each mesh an ID vertex element that maps to the correct RT for that mesh. It works like a GS just with vertex and pixel shaders.

Осталось понять как это применить. Пока ничего не нашел.

#24
21:39, 20 фев. 2021

san
> Ты сам то это использовал
Да, использовал

#25
0:08, 21 фев. 2021

MrShoor
Т.е. ты получал в вертексном шейдере условие по которому переключал таргеты? Можно посмотреть на код вертексного шейдера?

#26
5:47, 21 фев. 2021

san
> Т.е. ты получал в вертексном шейдере условие по которому переключал таргеты?
Да.

> Можно посмотреть на код вертексного шейдера?
Сейчас нет, нельзя, код смогу только после 25го показать. Что конкретно у тебя не получается? Ты скомпилировал вертексный шейдер с SV_RenderTargetArrayIndex ?

#27
6:57, 21 фев. 2021

MrShoor
Я не сказал что у меня что-то не получается, я пока собираю информацию. ОК, я подожду до 25-го, пока не горит.

#28
7:24, 21 фев. 2021

san
> Я не сказал что у меня что-то не получается, я пока собираю информацию. ОК, я
> подожду до 25-го, пока не горит.
Там дел то две строчки. Ты уже без готового примера сам и проверить не можешь?
Ну ок, жди. Апни тогда тему числа 26-27, иначе я скорее всего забуду сюда отписать.

#29
16:01, 21 фев. 2021

MrShoor
>Там дел то две строчки.
Ну так и напиши эти две строчки. Почему же "код смогу только после 25го показать"?

Страницы: 1 2 3 4 Следующая »
ПрограммированиеФорумГрафика