| 262 | } |
| 263 | |
| 264 | void HnTaskManager::CreateRenderShadowsTask() |
| 265 | { |
| 266 | const USD_Renderer& Renderer = *static_cast<const HnRenderDelegate*>(GetRenderIndex().GetRenderDelegate())->GetUSDRenderer(); |
| 267 | |
| 268 | HnRenderShadowsTaskParams TaskParams; |
| 269 | TaskParams.State.DepthBiasEnabled = true; |
| 270 | TaskParams.State.SlopeScaledDepthBias = Renderer.GetSettings().PCFKernelSize * 0.5f + 0.5f; |
| 271 | CreateTask<HnRenderShadowsTask>(HnTaskManagerTokens->renderShadowsTask, TaskUID_RenderShadows, TaskParams); |
| 272 | |
| 273 | // Only render shadows from default material tfor now |
| 274 | pxr::HdRprimCollection Collection{ |
| 275 | pxr::HdTokens->geometry, |
| 276 | pxr::HdReprSelector{pxr::HdReprTokens->hull}, |
| 277 | false, // forcedRepr |
| 278 | HnMaterialTagTokens->defaultTag, |
| 279 | }; |
| 280 | Collection.SetRootPath(pxr::SdfPath::AbsoluteRootPath()); |
| 281 | |
| 282 | pxr::TfTokenVector RenderTags = {pxr::HdRenderTagTokens->geometry}; |
| 283 | |
| 284 | HnRenderPassParams RPParams{ |
| 285 | HnRenderResourceTokens->renderPass_Shadow, |
| 286 | HnRenderPassParams::SelectionType::All, |
| 287 | USD_Renderer::USD_PSO_FLAG_NONE, |
| 288 | }; |
| 289 | |
| 290 | SetParameter(HnTaskManagerTokens->renderShadowsTask, pxr::HdTokens->collection, Collection); |
| 291 | SetParameter(HnTaskManagerTokens->renderShadowsTask, pxr::HdTokens->renderTags, RenderTags); |
| 292 | SetParameter(HnTaskManagerTokens->renderShadowsTask, HnTokens->renderPassParams, RPParams); |
| 293 | } |
| 294 | |
| 295 | void HnTaskManager::CreateBeginMainPassTask() |
| 296 | { |
nothing calls this directly
no test coverage detected