From 3b7cdd4e6792b907abae0dac566011be94083b16 Mon Sep 17 00:00:00 2001
From: Nicolas Pope <nwpope@utu.fi>
Date: Wed, 15 Jan 2020 20:07:51 +0200
Subject: [PATCH] Fix for colour interpolation in render

---
 applications/gui/src/camera.cpp             | 1 +
 components/renderers/cpp/src/tri_render.cpp | 3 +++
 2 files changed, 4 insertions(+)

diff --git a/applications/gui/src/camera.cpp b/applications/gui/src/camera.cpp
index 0a301e31c..7efcbd75b 100644
--- a/applications/gui/src/camera.cpp
+++ b/applications/gui/src/camera.cpp
@@ -240,6 +240,7 @@ void ftl::gui::Camera::update(ftl::rgbd::FrameSet &fs) {
 	auto &channel1 = frame->get<GpuMat>(Channel::Colour);
 	im1_.create(channel1.size(), channel1.type());
 	channel1.download(im1_);
+	LOG(INFO) << "IM1 type = " << im1_.type();
 
 	// OpenGL (0,0) bottom left
 	cv::flip(im1_, im1_, 0);
diff --git a/components/renderers/cpp/src/tri_render.cpp b/components/renderers/cpp/src/tri_render.cpp
index 39dbb732f..fdf0eb4f3 100644
--- a/components/renderers/cpp/src/tri_render.cpp
+++ b/components/renderers/cpp/src/tri_render.cpp
@@ -544,6 +544,9 @@ bool Triangular::render(ftl::rgbd::FrameSet &in, ftl::rgbd::Frame &out, Channel
 			}
 		}
 
+		// Force interpolated colour
+		f.createTexture<uchar4>(Channel::Colour, true);
+
 		/*// Needs to create points channel first?
 		if (!f.hasChannel(Channel::Points)) {
 			//LOG(INFO) << "Creating points... " << s->parameters().width;
-- 
GitLab