Передача массива с плавающей точкой и получение предупреждения: «Значения очистки не соответствуют значениям, переданным для создания ресурса».
1 Работает без предупреждения
2 Нет, и я попытался использоватьGetFloatArray () и по-прежнему получает предупреждение
Целевой формат визуализации:
clearValue.Format = DXGI_FORMAT::DXGI_FORMAT_R8G8B8A8_UNORM;
Мой объект CColor:
float RGBA[4];
float* GetFloatArray()
{
return RGBA;
}
ClearRenderTargetView (s):
// #1
globalObjects->videoDevice->commandList->ClearRenderTargetView(
globalObjects->videoDevice->swapChainRenderTargets[globalObjects->videoDevice->frameIndex]->handle,
CColorCornflowerBlue.GetFloatArray(), 0, nullptr);
// #2
const float c[4] =
{
CColorLovelyPurple.RGBA[0],
CColorLovelyPurple.RGBA[1],
CColorLovelyPurple.RGBA[2],
CColorLovelyPurple.RGBA[3]
};
commandList->ClearRenderTargetView(renderTargets[globalObjects->videoDevice->frameIndex]->handle,
c, 0, nullptr);
Буду признателен за любые идеи или проблемы у других.