Request Support for mutliple views in OVP

smarly

New member
Joined
Jul 27, 2008
Messages
40
Reaction score
0
Points
0
Hi guys,

I was wondering whether it would be possible to implement support for multiple views in the graphics clients? I am thinking along the lines of what is possible in MS Flightsim or X-Plane where you can open multiple windows and fly in cockpit view while watching your plane in external camera mode at the same time. This would come in very handy e.g. in public outreach events where a pilot flies a spacecraft in cockpit view while the crowd watches the spacecraft in external camera view on a projector / second monitor.

I have honestly no idea how difficult this would be to implement or if it's even possible without changes to the Orbiter core, but I would certainly love to see this feature. :thumbup:
 

asmi

Addon Developer
Addon Developer
Joined
Jan 9, 2012
Messages
350
Reaction score
0
Points
0
Location
Ontario
Yes, it is possible, and can be done. Infact I have such plans for D3D11Client.
 

sitha241

Member
Joined
Feb 22, 2010
Messages
278
Reaction score
0
Points
16
Location
Zagreb
I was wondering the same..as I plan to built realistic simpit it would be nice for windows of spacecraft..
 

Artlav

Aperiodic traveller
Addon Developer
Beta Tester
Joined
Jan 7, 2008
Messages
5,790
Reaction score
780
Points
203
Location
Earth
Website
orbides.org
Preferred Pronouns
she/her
Was implemented since the first versions in OGLAClient, never was used or asked about.

There is pretty much no problems to do it, OVP writes the rules in that regard - you can have 360* projection, you can have 3D, you can have multiple viewpoints, etc.

Only hard limit is that FPS will be reduced roughly by a factor of amount of viewpoints.
 

asmi

Addon Developer
Addon Developer
Joined
Jan 9, 2012
Messages
350
Reaction score
0
Points
0
Location
Ontario
Only hard limit is that FPS will be reduced roughly by a factor of amount of viewpoints.
That's not always the case - since additional render targets will be smaller, so the performance hit will be less than it is for the "main" render pass. And if you can use multithreaded rendering, it can somewhat speed things up.
 

yagni01

Addon Developer
Addon Developer
Donator
Joined
Feb 8, 2008
Messages
463
Reaction score
0
Points
16
Location
Atlanta, GA
Was implemented since the first versions in OGLAClient, never was used or asked about.
It is definitely a feature we flight deck builders will use. I was not aware it was available, but now that I am, re-prioritization and saving for additional monitor will begin.
 

kamaz

Unicorn hunter
Addon Developer
Joined
Mar 31, 2012
Messages
2,298
Reaction score
4
Points
0
A bit off topic, but I have implemented a hackish solution, where I run multiple Orbiter instances independently and just copy simulation state from master to slaves: http://orbiter-forum.com/showthread.php?p=379434

It has some limitations, but in general it works.

PM me if you want the code.
 

smarly

New member
Joined
Jul 27, 2008
Messages
40
Reaction score
0
Points
0
Yes, it is possible, and can be done. Infact I have such plans for D3D11Client.


Hi asmi,

that's great news. Looking forward to seeing this feature implemented in D3D11 client. :)


@ Artlav: I found the option for "camera 2" in OGLAclient, but wasn't able to change the point of view or perspective in the camera 2 window. Documentation doesn't mention anything in regard to this function ... any thoughts?
 
Last edited:

Artlav

Aperiodic traveller
Addon Developer
Beta Tester
Joined
Jan 7, 2008
Messages
5,790
Reaction score
780
Points
203
Location
Earth
Website
orbides.org
Preferred Pronouns
she/her
I found the option for "camera 2" in OGLAclient, but wasn't able to change the point of view or perspective in the camera 2 window. Documentation doesn't mention anything in regard to this function ... any thoughts?
There should be a control to switch it between landing camera and rear-looking camera, look at F7 menu closely.

Other modes or custom definitions were not implemented due to lack of anyone asking.

What should this feature look like?
Generic - switching control to the smaller window, and using the regular controls to pick up the viewpoint?
Or something more specific, like 3-axis fine control of camera position?
Add-on definable cameras?
Something else?

It would be much easier to implement a usable feature if the potential users would describe precisely what they need. :)

That's not always the case - since additional render targets will be smaller, so the performance hit will be less than it is for the "main" render pass. And if you can use multithreaded rendering, it can somewhat speed things up.
Depends, i suppose.
What do you call multithreaded rendering? Multi-core GPU's, or some way of rendering from several CPU threads?
 

smarly

New member
Joined
Jul 27, 2008
Messages
40
Reaction score
0
Points
0
What should this feature look like?
Generic - switching control to the smaller window, and using the regular controls to pick up the viewpoint?
Or something more specific, like 3-axis fine control of camera position?
Add-on definable cameras?
Something else?

Hi Artlav,

here are some of my ideas regarding the "multiple views" feature.
Thanks for taking them into consideration. :)

To control the window perspective I would prefer the " Generic - switching control to the smaller window, and using the regular controls to pick up the viewpoint?" - option, since it gives the most flexibility while still being easy to use.

Also it would be favorable if the user could control the size and layout of the windows, e.g.
- full screen mode so that 2 or more separate windows can be displayed in full screen on two or more different monitors (e.g. one showing external view on vessel or view from docking target while other monitor shows cockpit view of active vessel)
- window split mode, where one full-screen window shows cockpit view and multiple smaller windows can be docked to show different views (e.g. payload bay, docking port camera, etc.)

In order to simulate cockpit windows etc. for simpits it would probably be helpful if Orbiter (or OVPclient in that case) would remember the settings for the different windows so that they are the same every time a scenario is loaded. Or, even better, maybe window settings could be saved in scenario files?
 
Last edited:

asmi

Addon Developer
Addon Developer
Joined
Jan 9, 2012
Messages
350
Reaction score
0
Points
0
Location
Ontario
Depends, i suppose.
What do you call multithreaded rendering? Multi-core GPU's, or some way of rendering from several CPU threads?
I meant new DX11 feature that allows using multiple CPU threads to record command lists, and then submit them for execution in the main thread. This way you can eliminate overhead of calling DX methods in the main thread, so speeding up rendering. More on that here.
 

jarmonik

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 28, 2008
Messages
2,666
Reaction score
795
Points
128
I meant new DX11 feature that allows using multiple CPU threads to record command lists, and then submit them for execution in the main thread. This way you can eliminate overhead of calling DX methods in the main thread, so speeding up rendering. More on that here.

Yes, a good implementation of that can give +20% in framerate and a bad implementation can reduce the frame rate in half.
 
Top