1
0
Fork 0
Commit graph

63 commits

Author SHA1 Message Date
Thomas Geymayer
d9881aecf8 Allow Canvas placed on 3D objects receiving mouse events.
- Add option 'capture-events' to canvas aircraft and scenery
   placements to allow events being forwarded to the respective
   canvas.
 - Clean up and restructure parts of the mouse event/picking
   handling to support forwarding events to canvasses.
2013-05-09 21:38:40 +02:00
James Turner
f2c267f5d7 MouseInput changes to support hover.
This adds the framework for platform cursor implementations; Windows and X11 to be done.
It also extend the mouse-input code to generate hover events suitable for driving tooltips.

Note there should be no visible functionality change from this commit, since everything
is inactive until fgdata changes are made.
2013-03-04 23:35:30 +00:00
James Turner
1898449949 Map OSG notification system to Simgear logging.
With this, OSG notifications can be captured / buffered in-line with our other log messages, which should help debugging and feedback.
2013-02-07 16:01:36 +00:00
James Turner
0729b0806e Fix numeric keypad support on Mac.
Comments in the code imply osgViewer always sends 'num-lock'-off codes, but that is not the observed behaviour with Cocoa. So adding mappings for the num-locked codes on Mac, which is what people actually want at the moment.
2013-01-31 18:42:34 +00:00
James Turner
ac696a9601 Set preview mode when using --fgviewer 2013-01-31 16:51:06 +00:00
James Turner
487638be7f Restructure positional finalisation for sim-reset.
Make position finalisation happen in the same phase as scenery load, i.e as a task during the main loop, instead of during the init loop. This is compatible with the existing reset logic. Unfortunately more work is needed; the environment code doesn't update the local station quickly enough on reset. (Fixing that is next!)
2012-12-15 15:25:45 +00:00
Thomas Geymayer
4bf4754f7b Allow Canvas Windows to be resized by dragging
- Setting 'resize' property to true on canvas::Window shows
   resize icons and exposes requested size to the property
   tree. This can be used eg. from Nasal to actually resize
   the window and/or show a preview of the resized window
   while resizing.
 - Event handling now ignores events which have already
   been handled. Before eg. clicking inside a window
   also caused picking to be performed inside the
   scene which is for sure not the expected behaviour.
 - Also forwards scroll wheel events from canvas::Window.
2012-12-13 14:12:29 +01:00
ThorstenB
57410852b9 Base fullscreen detection on window decoration
rather than window size, since the size of full screen windows can change:
e.g. Xinerama mode automatically resizes fullscreen windows to cover the
area belonging to a single display only - so the
"(Xinerama) screen area == window size" check always failed - even in
fullscreen mode.
2012-11-27 00:02:28 +01:00
James Turner
9632bfcfd6 View-manager: update globals automatically.
Make the global view-manager pointer be controlled by the instance.
2012-11-20 13:33:20 +00:00
ThorstenB
a784443a24 Remove static property dependencies
preventing us from wiping properties on reset/reinit/subsystem recreate.
(more work required for "native_gui" and "ATC-Outputs" protocols)
2012-11-18 16:35:54 +01:00
ThorstenB
1f1dd1fa16 viewmgr: fix mixed up white-spaces/indentation
(content otherwise unchanged)
2012-11-18 13:23:10 +01:00
ThorstenB
d761da248f viewmgr: stash properties for better performance 2012-11-18 13:17:07 +01:00
ThorstenB
01617861ce toggle fullscreen: also adapt GUI plane when resizing 2012-11-18 00:00:15 +01:00
ThorstenB
b577ec70fc Add command to toggle fullscreen mode. 2012-11-17 23:07:00 +01:00
Mathias Froehlich
74f07982bd Provide reader writer options to the effects. 2012-10-03 22:03:25 +02:00
James Turner
872e84d827 Make HUD items private to the subsystem.
Make the HUD independent of the instrument manager, and push most of the declarations from the header into a private header.
2012-09-26 17:02:11 +01:00
James Turner
4456f42e67 Make the view-manager and sound-manager independent.
Use properties to pass current-view information to the sound-manager, so there is no hard-coded dependency between the subsystems.
2012-09-25 09:17:00 +01:00
ThorstenB
88592bfe71 splash screen: use language resource for translation
Also pimp the progress spinner.
2012-09-21 19:36:25 +02:00
James Turner
029012b8b9 Kill off some globals.
Break some subsystem dependencies, by explicitly using properties to read the primary position, orientation and velocities. (Instead of directly accessing the primary model placement). This means a couple more globals can die.
2012-09-19 18:17:44 +01:00
ThorstenB
06170ddaae Handle scenery-override in a single place only. 2012-09-17 13:45:31 +02:00
Frederic Bouvier
e6cb846ad3 Don't let the cloud alpha value change the lighting buffer 2012-08-12 19:06:41 +02:00
Frederic Bouvier
b7b4553db6 Add forgotten uniforms to the display stage (Rembrandt) 2012-08-11 12:19:44 +02:00
Tim Moore
6110139197 Merge branch 'timoore/optimization' into next 2012-08-03 20:20:01 +02:00
Tim Moore
f2762d0be7 use DeletionManager 2012-08-03 20:18:11 +02:00
Frederic Bouvier
c3de8851f8 Fix incorrectly hardcoded effect in last Rembrandt stage 2012-08-02 23:00:20 +02:00
Frederic Bouvier
64a8924035 Add some predefined uniforms to Rembrandt stages 2012-08-01 22:42:00 +02:00
Frederic Bouvier
b44b8005b8 Don't stop displaying the sky dome in Rembrandt at any visibility 2012-07-22 18:09:47 +02:00
Frederic Bouvier
359b67cf43 Remove a redundant line 2012-07-22 17:43:27 +02:00
Frederic Bouvier
9db625af79 Add a node mask bit for permanent lights (needed by Rembrandt) and select it in the lighting stage 2012-07-16 20:07:59 +02:00
Frederic Bouvier
735b6d43ec OSG 3.0.1 has no osg::Node::asCamera method 2012-07-15 10:03:19 +02:00
Frederic Bouvier
7e90968c4e Make the point light non permanent in Rembrandt 2012-07-15 08:13:05 +02:00
Frederic Bouvier
7b4287e151 Restore 2D panels in Rembrandt 2012-07-15 00:09:05 +02:00
Frederic Bouvier
a72caad8bc Restore point light in Rembrandt 2012-07-14 21:30:18 +02:00
Frederic Bouvier
c1137f371d Rembrandt: Add debugging properties and fix transparency issues. Side effect: light are not fogged (may be added in the light shader later) and depth buffer precision issues on light are more visible due to near plane really near (0.1m) 2012-07-14 13:07:41 +02:00
Frederic Bouvier
398936d08c Working 'noshadow' animation 2012-06-30 16:26:42 +02:00
Frederic Bouvier
6d0cacc0a3 Get rid of TexGen magic and do the projective texturing for shadow mapping ourself 2012-06-27 19:38:04 +02:00
Frederic Bouvier
a360653eb6 Fix indentation 2012-06-16 17:29:03 +02:00
Frederic Bouvier
608520d932 Don't invalidate Rembrandt buffers when the window is iconified 2012-06-16 17:20:56 +02:00
ThorstenB
b79e9ca1c8 Fixed compiler warning
about incorrect init order.
2012-06-08 13:32:12 +02:00
Frederic Bouvier
115324af4f Fix multi screen in a single window issue in Rembrandt 2012-05-23 09:09:14 +02:00
Frederic Bouvier
fad7181a2d Remove hard-coded lighting stage 2012-05-20 00:36:42 +02:00
Frederic Bouvier
3e7b8e57b6 Add world viewer position in cartesian and geodesic coordinate as shader uniforms 2012-05-19 23:50:35 +02:00
Frederic Bouvier
a5dff11f13 Make Rembrandt compatible with multi screen 2012-05-19 15:43:49 +02:00
James Turner
8f10fff8dc Lazy-loading of the 2D panel node.
Sink the 2D panel logic into FGPanelNode, simplifying
renderer.cxx and a few other places. Also allows potential
for unloading / paging of 2.5D panels in the future.
2012-05-16 11:43:09 +01:00
James Turner
77cd7b39f7 Since we require OSG 3.0 now, this check is obsolete. 2012-05-15 23:10:53 +01:00
Frederic Bouvier
73a3434421 Rely entirely on the configurable renderer and add more configuration options in the lighting stage to prepare the implementation of the lightfield effect in Rembrandt 2012-05-13 18:57:00 +02:00
Frederic Bouvier
8bb03adc1f Fix compilation of FGRenderer 2012-05-12 15:19:11 +02:00
Frederic Bouvier
bb16463d63 Add simple conditions (no opengl related tests) to buffers, stages and attachments 2012-05-12 13:45:40 +02:00
Frederic Bouvier
b1f098d959 Fix camera render orders
Set default uniforms to fullscreen cameras
Add du/dv to predefined uniforms
2012-05-12 13:45:38 +02:00
Frederic Bouvier
6b2ba60772 rename /sim/rendering/rembrandt -> /sim/rendering/rembrandt/enabled
and put rembrandt-related properties in /sim/rendering/rembrandt/
2012-05-12 13:45:36 +02:00