1

Topic: Rendering a point cloud using the existing GUI functionality

Hello everyone!
Let me start by telling you what I have so far and what my actual goal is.
I am currently working on a tilt interface for a time of flight 3D camera. The general idea is that you hold your hand above the camera and tilt the ingame floor by tilting your hand. The input works pretty well so far but I'd like to go further. To be precise, I want to add a camera-calibration state to the game where the user is supposed to move his hand to the right position above the camera so that the controls work as intended. For this I need some sort of visualization and my idea was to display a render of the point cloud the camera produces inside a GUI element.
So far I've added a functioning new state to the game which is positioned right between the level intro text and the play_ready state and displays some text and a empty GUI box where the visualization should take place.
My problem is that I have very little experience with openGL and I won't get far with glBegin(), glVertex() etc. since everything is rendered using VBOs. I've read about VBO rendering techniques all day and tried to understand the existing codebase and so far I pretty much get what is happening but now I'm asking myself if my plans are even possible using the existing functions. The existing vertex struct array which stores all the vertices for the gui seems to be way too small for my point cloud data (around 2000-3000 points per frame). Can anyone help me with this? Do I have to add an additional VBO just for the point cloud? Does adding another VBO even work? What's your idea on how I could implement this?

2 (edited by Mrko 2018-07-18 18:57:10)

Re: Rendering a point cloud using the existing GUI functionality

Welcome to the forums indeed

How ya doin?

3

Re: Rendering a point cloud using the existing GUI functionality

Can't respond in detail right now, but you should definitely use a separate VBO. Maybe render to texture as well? Might be easier, but can't investigate right now.