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

DX11 (64 стр)

Страницы: 161 62 63 64 65 66 Следующая »
#945
0:46, 21 авг. 2016

Synthetic
> не кэш фредли.

cbuffer cbPerFrame: register(b0)
{
  float3 g_TextureWorldOffset;
  int g_CoarseSampleSpacing;
}


cbuffer MatrixBuffer: register(b0)
{
  float4x4 g_WorldViewProj;
  float3   g_TextureWorldOffset;
  float   g_tileSize;
};

Такие варианты будут кэш фредли?


#946
6:19, 21 авг. 2016

Digan

Зачем тебе несколько буферов ? Храни всё в одном и загружай за 1 вызов...

#947
9:47, 21 авг. 2016

Digan,

да

#948
10:03, 21 авг. 2016

innuendo
> Зачем тебе несколько буферов ? Храни всё в одном и загружай за 1 вызов...
Один для вершинного, другой для пиксельного шейдера. Поэтому все равно загружать надо за два вызова (VSSetShader, PSSetShader).

#949
10:38, 21 авг. 2016

Digan
> Один для вершинного, другой для пиксельного шейдера. Поэтому все равно
> загружать надо за два вызова (VSSetShader, PSSetShader).
через пиксельный передачу констант лучше минимизировать, или вообще отказаться.

#950
11:33, 21 авг. 2016

Andrey
> через пиксельный передачу констант лучше минимизировать, или вообще отказаться.

Ты свой опыт покажи, а не то, что ты где-то от кого-то слышал :)
Желательно ссылочками на доки.

И да, вот так http://www.slideshare.net/DICEStudio/directx-11-rendering-in-batt… from_search=1  делается инстансинг в DX11 на очень крутых проектах - ты же хочешь делать крутые проекты ?

> Поэтому все равно загружать надо за два вызова
Выкрутился. А если будет только VS - нужно делать 1 буфер или нет ?

#951
11:36, 21 авг. 2016

Andrey
innuendo

СНОВА ЧТОЛИ?!

#952
11:37, 21 авг. 2016

u960
> СНОВА ЧТОЛИ?!

Пусть отвечает за свои слова ссылками и цитатами

#953
12:12, 21 авг. 2016

Andrey
> через пиксельный передачу констант лучше минимизировать, или вообще отказаться.

+ Показать
#954
12:25, 21 авг. 2016

Digan
> Такие варианты будут кэш фредли?
вроде да, а там хз))

#955
15:30, 21 авг. 2016

Andrey
> через пиксельный передачу констант лучше минимизировать, или вообще отказаться.

Вот, кстати, вопрос на засыпку - если константа(ы) не меняется, нужно посылать ?

#956
15:47, 21 авг. 2016

innuendo
> Вот, кстати, вопрос на засыпку - если константа(ы) не меняется, нужно посылать ?
нет.

#957
15:48, 21 авг. 2016

Andrey
> через пиксельный передачу констант лучше минимизировать, или вообще отказаться.
Почему?

#958
16:07, 21 авг. 2016

Andrey
> > Вот, кстати, вопрос на засыпку - если константа(ы) не меняется, нужно
> > посылать ?
> нет.

Очень хорошо, и каким же способом ты сделаешь так, чтобы не пересылать то,  что не меняется ?

MrShoor
> Почему?

Отчасти он прав, изменения констант в PS могут на некоторых платформах приводить к перекомпиляции шейдера (из байткода в нативный ).

#959
16:09, 21 авг. 2016

MrShoor
> Почему?
медленно. Есть табличка
https://msdn.microsoft.com/en-us/library/windows/desktop/bb172234(v=vs.85).aspx
Возможно на современном железе и с использованием Direct3D11/Direct3D12 ситуация иная. Я лично убрал установку констант в пиксельный шейдер, в большинстве, случаев их можно передать через вершинный.

Страницы: 161 62 63 64 65 66 Следующая »
ПрограммированиеФорумГрафика

Тема в архиве.