Я пытаюсь создать еще один объект rendertargetview и сделать его
Раньше я просто возвращал буфер из swapchain и затем создавал из него rtv, все работает отлично. но только при создании RTV из пользовательского ресурса у меня есть проблема.
D3D11_TEXTURE2D_DESC bb_desc;
bb_desc.Width = width;
bb_desc.Height = height;
bb_desc.MipLevels = 1;
bb_desc.ArraySize = 1;
bb_desc.Format = DXGI_FORMAT_R8G8B8A8_UNORM;
bb_desc.Usage = D3D11_USAGE_DEFAULT;
bb_desc.BindFlags = D3D11_BIND_RENDER_TARGET | D3D11_BIND_SHADER_RESOURCE;
bb_desc.CPUAccessFlags = 0;
bb_desc.MiscFlags = 0;
bb_desc.SampleDesc.Count = msCount;
bb_desc.SampleDesc.Quality = msQuality;
R_CHECK(device->CreateTexture2D(
&bb_desc,
nullptr,
backBuffer.GetAddressOf()));
D3D11_RENDER_TARGET_VIEW_DESC rtv_desc;
rtv_desc.Format = bb_desc.Format;
rtv_desc.ViewDimension = D3D11_RTV_DIMENSION_TEXTURE2D;
rtv_desc.Texture2D.MipSlice = 0;
R_CHECK(device->CreateRenderTargetView(
backBuffer.Get(),
&rtv_desc,
bbRTV.GetAddressOf()));
D3D11_SHADER_RESOURCE_VIEW_DESC srv_desc;
srv_desc.Format = bb_desc.Format;
srv_desc.ViewDimension = D3D11_SRV_DIMENSION_TEXTURE2D;
srv_desc.Texture2D.MostDetailedMip = 0;
srv_desc.Texture2D.MipLevels = 1;
R_CHECK(device->CreateShaderResourceView(
backBuffer.Get(),
&srv_desc,
bbSRV.GetAddressOf()));
dContext->OMSetRenderTargets(1, bbRTV.GetAddressOf(), nullptr);
и я отрисовываю это
float bgColor[3] = { 1,0,0 };
dContext->ClearRenderTargetView(bbRTV.Get(), bgColor);
swapchain->Present(1, NULL);
ожидал красный экран, но он показывает только черный.
а также нет журналов ошибок.
Любой совет будет оценен ~