本文整理汇总了C++中Texture::GetRtv方法的典型用法代码示例。如果您正苦于以下问题:C++ Texture::GetRtv方法的具体用法?C++ Texture::GetRtv怎么用?C++ Texture::GetRtv使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Texture
的用法示例。
在下文中一共展示了Texture::GetRtv方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: TransitionResource
//---------------------------------------------------------------------------//
void RenderContextDX12::ApplyRenderTargets()
{
if (!myRenderTargetsDirty)
return;
myRenderTargetsDirty = false;
D3D12_CPU_DESCRIPTOR_HANDLE rtDescriptors[Rendering::Constants::kMaxNumRenderTargets];
GpuResource* rtResources[Rendering::Constants::kMaxNumRenderTargets];
uint32 numRtsToSet = 0u;
for (uint32 i = 0u; i < Rendering::Constants::kMaxNumRenderTargets; ++i)
{
Texture* rt = myRenderTargets[i];
if (rt != nullptr)
{
rtResources[numRtsToSet] = rt;
rtDescriptors[numRtsToSet] = rt->GetRtv().myCpuHandle;
++numRtsToSet;
}
}
for (uint32 i = 0u; i < numRtsToSet; ++i)
{
TransitionResource(rtResources[i], D3D12_RESOURCE_STATE_RENDER_TARGET);
}
if (myDepthStencilTarget)
TransitionResource(myDepthStencilTarget, D3D12_RESOURCE_STATE_DEPTH_WRITE);
KickoffResourceBarriers();
if (myDepthStencilTarget)
myCommandList->OMSetRenderTargets(numRtsToSet, rtDescriptors, false, &myDepthStencilTarget->GetDsv().myCpuHandle);
else
myCommandList->OMSetRenderTargets(numRtsToSet, rtDescriptors, false, nullptr);
}