Multiple in-game camera's over multiple out of game screens


I would like to know if it is possible to have multiple cameras inside of a scene which then are displayed on different screens.

The following image explains what I mean:

I hope that someone can help me with that.

Thanks in advance,


You can make a split screen setup with multiple cameras using the camera.setViewport() method.

However, in your case, I don’t see any need to use multiple cameras. Just increase the FoV of the camera and set the appropriate resolution to span 3 monitors.

This image was just an example because it was easier to explain.
Meaning that the FOV idea won’t work for me. However how do I even make a standalone span over 3 screens? Because if i just set the resolution to 3040 (i’ve got a 1600x900 and a 1440x900 monitor) it just ignores that and sets it only on the main monitor with a 1600x900 resolution

Sounds like Blender locks to a single screen. You could start several instances of the same game and use sockets and a loop-back network interface to send data from the game out to the computer (and so receive it from that loop-back interface as well) to communicate between the game instances.

The first instance would be the ‘actual’ game, and send out data of positioning and such, and the second and third instances of the game would receive the data and update their scenes accordingly. They wouldn’t actually control anything other than viewing the scene (thereby lowering the logic drain on the system). It’s complex, but it might work alright.

If there’s a lag between the screens, then you might be able to even run a BGE scene as a ‘server’ that controls the game data (perhaps a background scene in one of the instances that can’t be seen), with all of the visible screens being ‘dummy’ instances that receive data.

I have also wondered about this. What SolarLune said sounds like the only way to do it at the moment I think. The problem with having multiple instances of blender running the same game is keeping everything in sync, but, as stated, using a server to help this could work.

Everytime you run a new instance though, I think that you are using a unique opengl render context, which means that the textures/models are not shared between the contexts. I have no idea if you can share the textures/models between different contexts, but my suspicions think that you can’t.

I’m sure I found an article somewhere that said you can share the datalists between the contexts, let me search the googles and see if I can dig it up again.

The active window could also be an issue, priority will be given to the active window, and this could lead to unexpected consequences.

Other than my last statement it would be interesting to see something like this being implemented out of curiosity.