From f56a0397dccefd696f24b5dc265580ca33ab6352 Mon Sep 17 00:00:00 2001 From: Nicolas Pope <nwpope@utu.fi> Date: Fri, 24 Jul 2020 13:22:41 +0300 Subject: [PATCH] Add channel blending --- components/streams/src/renderers/openvr_render.cpp | 3 +++ components/streams/src/renderers/screen_render.cpp | 6 ++++++ 2 files changed, 9 insertions(+) diff --git a/components/streams/src/renderers/openvr_render.cpp b/components/streams/src/renderers/openvr_render.cpp index 8080bf537..ef973ff08 100644 --- a/components/streams/src/renderers/openvr_render.cpp +++ b/components/streams/src/renderers/openvr_render.cpp @@ -205,6 +205,9 @@ bool OpenVRRender::retrieve(ftl::data::Frame &frame_out) { left = ftl::rgbd::Camera::from(intrinsics_); right = ftl::rgbd::Camera::from(intrinsics_); + + left.baseline = baseline_; + right.baseline = baseline_; unsigned int size_x, size_y; HMD->GetRecommendedRenderTargetSize(&size_x, &size_y); diff --git a/components/streams/src/renderers/screen_render.cpp b/components/streams/src/renderers/screen_render.cpp index a3a2e5dac..056477c6c 100644 --- a/components/streams/src/renderers/screen_render.cpp +++ b/components/streams/src/renderers/screen_render.cpp @@ -138,6 +138,12 @@ bool ScreenRender::retrieve(ftl::data::Frame &frame_out) { if (!data_only) renderer_->render(); + // Blend another channel + int blend_channel = host_->value("blend_channel",0); + if (blend_channel > 0) { + if (!data_only) renderer_->blend(static_cast<Channel>(blend_channel)); + } + // Now do CPU-based render jobs for (auto &s : sets) { if (s->frameset() == my_id_) continue; // Skip self -- GitLab