| 138 | |
| 139 | |
| 140 | HnTaskManager::HnTaskManager(pxr::HdRenderIndex& RenderIndex, |
| 141 | const pxr::SdfPath& ManagerId) : |
| 142 | m_RenderIndex{RenderIndex}, |
| 143 | m_ManagerId{ManagerId}, |
| 144 | m_ParamsDelegate{RenderIndex, ManagerId} |
| 145 | { |
| 146 | // Task creation order defines the default task order |
| 147 | CreateBeginFrameTask(); |
| 148 | if (static_cast<const HnRenderDelegate*>(RenderIndex.GetRenderDelegate())->GetShadowMapManager()) |
| 149 | { |
| 150 | CreateRenderShadowsTask(); |
| 151 | } |
| 152 | CreateBeginMainPassTask(); |
| 153 | |
| 154 | // Opaque selected RPrims -> {GBuffer + SelectionDepth} |
| 155 | CreateRenderRprimsTask(HnMaterialTagTokens->defaultTag, |
| 156 | TaskUID_RenderRprimsDefaultSelected, |
| 157 | { |
| 158 | HnRenderResourceTokens->renderPass_OpaqueSelected, |
| 159 | HnRenderPassParams::SelectionType::Selected, |
| 160 | USD_Renderer::USD_PSO_FLAG_ENABLE_ALL_OUTPUTS, |
| 161 | }); |
| 162 | CreateRenderRprimsTask(HnMaterialTagTokens->masked, |
| 163 | TaskUID_RenderRprimsMaskedSelected, |
| 164 | { |
| 165 | HnRenderResourceTokens->renderPass_OpaqueSelected, |
| 166 | HnRenderPassParams::SelectionType::Selected, |
| 167 | USD_Renderer::USD_PSO_FLAG_ENABLE_ALL_OUTPUTS, |
| 168 | }); |
| 169 | |
| 170 | CreateCopySelectionDepthTask(); |
| 171 | |
| 172 | // Opaque unselected RPrims and all transparent RPrims -> {GBuffer + MainDepth} |
| 173 | CreateRenderRprimsTask(HnMaterialTagTokens->defaultTag, |
| 174 | TaskUID_RenderRprimsDefaultUnselected, |
| 175 | { |
| 176 | HnRenderResourceTokens->renderPass_OpaqueUnselected_TransparentAll, |
| 177 | HnRenderPassParams::SelectionType::Unselected, |
| 178 | USD_Renderer::USD_PSO_FLAG_ENABLE_ALL_OUTPUTS, |
| 179 | }); |
| 180 | CreateRenderRprimsTask(HnMaterialTagTokens->masked, |
| 181 | TaskUID_RenderRprimsMaskedUnselected, |
| 182 | { |
| 183 | HnRenderResourceTokens->renderPass_OpaqueUnselected_TransparentAll, |
| 184 | HnRenderPassParams::SelectionType::Unselected, |
| 185 | USD_Renderer::USD_PSO_FLAG_ENABLE_ALL_OUTPUTS, |
| 186 | }); |
| 187 | CreateRenderEnvMapTask(HnRenderResourceTokens->renderPass_OpaqueUnselected_TransparentAll); |
| 188 | CreateRenderBoundBoxTask(HnRenderResourceTokens->renderPass_OpaqueUnselected_TransparentAll); |
| 189 | CreateRenderRprimsTask(HnMaterialTagTokens->additive, |
| 190 | TaskUID_RenderRprimsAdditive, |
| 191 | { |
| 192 | HnRenderResourceTokens->renderPass_OpaqueUnselected_TransparentAll, |
| 193 | HnRenderPassParams::SelectionType::All, |
| 194 | USD_Renderer::USD_PSO_FLAG_ENABLE_ALL_OUTPUTS, |
| 195 | }); |
| 196 | CreateRenderRprimsTask(HnMaterialTagTokens->translucent, |
| 197 | TaskUID_RenderRprimsTranslucent, |
nothing calls this directly
no test coverage detected