   side views for a driving simulator? help
  Hello there,We are developing a low-fidelity driving simulator here in our university. One of the components of the simulator is the visual feedback using a virtual environment. I have already developed a simple environment in OpenGL but I have one question:How can we generate side views of this environment? In driving simulators they usually use three projectors and three adjacent screens to provide a sufficiently large field of view; please have a look at the following links to better understand what I’m saying (I really apologize for my poor English)http://www.stsoftware.nl/demos/ANWB_3.jpghttp://www.drfoerst.de/e_medizin.htmhttp://www.svcc.cc.il.us/voyager/apr03/simulator.htmlMy question is how can I generate these side (left & right) views? Do I need to develop separate projects? I would really appreciate if you do not use very complicated jargon because I am a newbie.Best regards,Davood   
  Perhaps you could clarify a couple of things about your project. In particular, I'm wondering if this is a 'standard' single-monitor application, and you're wondering how to present the different views in this context; or if you're asking how to present the different views 'physically', that is, using multiple monitors and so forth.Any other details you could provide would also be useful.   ;  Hmmm... that is a problem indeed. Perhaps rather than having a single Render() function, you could implement 3 renderloops, RenderLeft() RenderMiddle() RenderRight() and have each one refer to a seperate device on the machine. then when you need to render, simply call all three render loops.   ;Hi,At the moment we have two monitors (i.e. computers), one is showing the OpenGL project, and the other is used by the experimenter for controlling parameters during the experiment; the content of the first monitor is projected on a screen in front of the simulator, but it provides a small field of view angle (around 50 degrees) and I would like to increase this field of view as shown by the links in my original message. About adding new monitors, I have no problem adding more computers and actually as far as I know it cannot be done with a single monitor, because I need three views to project on the screens so I will need to buy two more computers. My question is how I can generate (on three computers) three projects that show adjacent views of the same environment so that when I will project them on screen they will give a smooth view.Can I use the same project on all of the three computers but adjust the angle of my “camera” on each one so that I get three adjacent views of the same environment?Thanks for your valuable time.Davood;  I wouldn't think you need 3 computers or 3 projects. You should be able to connect 3 monitors to one computer and simply take 3 "snapshots" of your environment to render on each monitor. Basically like you say, just rotate your camera, draw the left screen, rotate your camera, draw the center screen, etc.   ;  I think there was a device created that allows three monitors with one computer. It creates one super-wide desktop and spans 3 screens. Maybe you could create your simulator to render one huge resolution and just know the dimensions for each screen and output each part (left, middle, right) to it's appropriate space.Basically, it's one flat image that's has three components. I have no clue how this to actually implement it though. I'd imagine it's the same as any other game since your no longer rendering 3 different scenes but one large scene.   ;  this article may help:http://www.gamedev.net/reference/articles/article1179.aspjust don't let the user choose which to use, use all three.   ;  actually, you'll find that most IHV (independant hardware vendors) including Matrox, 3DLabs, NVIDIA and ATI all support multiple video cards in combination to provide uber panoramic desktops. Not necessarily in SLI but for example combining an AGP FX5900 and a PCI FX5200 will allow upto 4 monitors connected in any arrangment you like - infact AFAIK windows natively supports upto 32 monitors (or some rediculous figure like that)As for the specifics of your original problem, I strongly suggest you look into the principals behind Dynamic Environment Cube Mapping - though the direct implementation probably won't help, the principals and theory will help clearly define the issues which you need to overcome and provide some resolutions which you will need to continue. In particular you would only need to render the -X, +X and +Z faces. If you have multiple monitors you can create an OpenGL window which spans all monitors (say 3 monitors each at 1024x764, then you GL window would be 3072x768) each time moving the viewport and scissor testing across by a single monitor width, rendering left-view, forward-view, right-view. If you use 90 degree FOV's in each view, the seams should match up perfectly.Another alternative may be Dual-paraboloid rendering, but only using one hemisphere pass.Hope that helps,-Danu   ;  perhaps you should set it up for a single monitor first, so you can get three cameras working first. (have all three cameras shown side by side on the single screen)   