Setting up screens part 2

These days I was thinking about how to set up the 2 screens (one for manipulate preferences and configuration that would be on the computer screen, and the other one for rendering the final image that would be projected with the video projector). After testing some things with the previous code that I put on the blog, and after doing some research I finally found a good way for dealing with two or more screens.

That was possible thanks to Zach_cage and his class ofFBOTexture, based on FBO, and also thanks to Theo Watson that posted and example that explains how to use it, here is the link to the post that refers to that class:

I”ve done a small example today that helped me to understand how this class works and that finally put me on the good track for preparing my dual screens that will let start working on the actual application.

What this code basically does is drawing shapes into a texture and transform it. So it is possible to draw circles, rectangles or any thing so we are using pixels here, and then transform them all together, like translate it and scale it.
This will allow us to put the draws into a texture, and translate this texture into a second or third screen.

This class also allows to warp and distort the final texture, but It is not implement here. However, if you see the code you will notice that there are some 2d-arrays called outputPositions and inputPositions that are the ones that would be used for cropping, warping, etc… (As you can see in the Theo”s example)

Here is the code and a small video that runs this little code as a simple example.

(video has some performance problems because of the software that I used when I took the screenshots)


The code runs under OF 00573 release, if you need it you can grab it from the forum”s post