Remove scene viewport postprocess API from engine
This commit is contained in:
@@ -115,11 +115,6 @@ inline ViewportRenderFallbackPolicy BuildGameViewportRenderFailurePolicy(
|
||||
return policy;
|
||||
}
|
||||
|
||||
struct SceneViewportBuiltinPostProcessBuildResult {
|
||||
Rendering::BuiltinPostProcessRequest request = {};
|
||||
const char* warningStatusText = nullptr;
|
||||
};
|
||||
|
||||
inline Rendering::Passes::InfiniteGridPassData BuildSceneViewportGridPassData(
|
||||
const SceneViewportOverlayData& overlay) {
|
||||
Rendering::Passes::InfiniteGridPassData data = {};
|
||||
@@ -144,50 +139,19 @@ inline Rendering::Passes::ObjectIdOutlineStyle BuildSceneViewportSelectionOutlin
|
||||
return style;
|
||||
}
|
||||
|
||||
inline SceneViewportBuiltinPostProcessBuildResult BuildSceneViewportBuiltinPostProcess(
|
||||
const SceneViewportOverlayData& overlay,
|
||||
const std::vector<uint64_t>& selectedObjectIds,
|
||||
bool hasObjectIdShaderView,
|
||||
bool debugSelectionMask = false) {
|
||||
SceneViewportBuiltinPostProcessBuildResult result = {};
|
||||
if (!overlay.valid) {
|
||||
return result;
|
||||
}
|
||||
|
||||
result.request.gridPassData = BuildSceneViewportGridPassData(overlay);
|
||||
result.request.selectedObjectIds = selectedObjectIds;
|
||||
result.request.outlineStyle = BuildSceneViewportSelectionOutlineStyle(debugSelectionMask);
|
||||
|
||||
if (!selectedObjectIds.empty() &&
|
||||
!debugSelectionMask &&
|
||||
!hasObjectIdShaderView) {
|
||||
result.warningStatusText = "Scene object id shader view is unavailable";
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
inline void ApplySceneViewportRenderRequestSetup(
|
||||
const ViewportRenderTargets& targets,
|
||||
const Rendering::BuiltinPostProcessRequest* builtinPostProcess,
|
||||
Rendering::RenderPassSequence* postPasses,
|
||||
Rendering::CameraRenderRequest& request) {
|
||||
request.preScenePasses = nullptr;
|
||||
request.postScenePasses = nullptr;
|
||||
request.overlayPasses = nullptr;
|
||||
request.objectId = {};
|
||||
request.builtinPostProcess = {};
|
||||
|
||||
if (postPasses != nullptr && postPasses->GetPassCount() > 0) {
|
||||
request.postScenePasses = postPasses;
|
||||
}
|
||||
|
||||
if (builtinPostProcess != nullptr &&
|
||||
builtinPostProcess->IsRequested()) {
|
||||
request.builtinPostProcess = *builtinPostProcess;
|
||||
request.builtinPostProcess.objectIdTextureView = targets.objectIdShaderView;
|
||||
}
|
||||
|
||||
if (targets.objectIdView == nullptr) {
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user