1
0
Fork 0
Commit graph

39 commits

Author SHA1 Message Date
Frederic Bouvier
1194f1f991 Implement Cascade Shadow Mapping in the Rembrandt renderer.
Shadow map size is set by the /sim/rendering/shadows/map-size property before starting fgfs. Its default value is 4096. Maximum value is 16384 in most card
2012-03-30 07:28:04 +02:00
Frederic Bouvier
79396655a3 Remove tabs 2012-03-25 16:07:56 +02:00
Frederic Bouvier
416e6df9e3 First, preliminary, code of the Rembrandt renderer.
The new renderer is activated by the --enable-rembrandt option, or in the preferences.xml file.
The renderer at this stage doesn't have shadows yet, and shows a lighting bug. The slash screen doesn't work too.
2012-03-25 16:06:54 +02:00
Frederic Bouvier
400129ae15 Allow any number of cameras as render stages for a single viewport 2012-03-25 15:28:17 +02:00
Frederic Bouvier
1a3f69723b Move camera setup to the renderer 2012-03-25 14:39:19 +02:00
Frederic Bouvier
bca4683d52 Small refactoring in CameraInfo 2012-03-25 14:37:43 +02:00
James Turner
8c187164fe Work on making 2D panels act like standard scene-graph elements for picking and drawing.
(This includes 2.5D panels in the 3D scene)
2012-03-16 17:22:18 +00:00
ThorstenB
dac00efbc7 Fix some compiler warnings.
Comment out unused code.
2012-01-02 23:16:17 +01:00
ThorstenB
dcaf3d9aea Avoid spamming the log output
Stop printing "State == Running" debug messages in every update loop
(makes "--log-level=debug" a lot more usable)
2011-12-17 15:22:50 +01:00
Mathias Froehlich
fea00cc9f8 Add seamless view muliscreen configuration.
Add a new way to configure multi screen systems.
The new version allows easier configuration of displays
that need to fit at the edges as well as configurations
where the screens match at reference points.
This kind of screen configuration will again zoom.
2011-10-23 16:40:13 +02:00
Mathias Froehlich
ad660380c2 Add fixed-near-far camera config parameter.
If set to true, the decision about the near and far
planes in the viewer are still adapted to not clip away
everything before the configured near plane.
2011-10-23 16:40:13 +02:00
James Turner
5a17ccf9eb Push aspect-ratio handling into CameraGroup, so renderer doesn't need to resize viewports each update. 2011-09-21 17:13:53 +01:00
Mathias Froehlich
b3ad524cec Try to fix using an own cull visitor with osg 3. 2011-07-28 18:23:54 +02:00
Frederic Bouvier
523f7f4cb7 Trying to fix compilation failure on Linux and Mac 2011-06-25 10:05:38 +02:00
Frederic Bouvier
243acb61c8 Fix issue #354: updateCameras reset viewport size to its initial value on OSG 3.0 2011-06-25 09:22:51 +02:00
James Turner
0b3829810f Don't crash if WindowBuild fails. 2010-12-11 14:29:05 +00:00
James Turner
55c0d3f4d6 Build without OSG implicit ref-ptr conversion 2010-12-01 23:57:18 +00:00
Tim Moore
27a7b98284 compilation fixes for older versions of OSG 2010-11-29 22:43:52 +01:00
Tim Moore
d38fcc9979 panoramic spherical distortion
This supports the panoramic distortion option, as found in osgViewer, in
the camera file syntax of flightgear.
2010-11-28 23:29:20 +01:00
ThorstenB
85185b56c5 Fixed hot-spot display for 3d modes
Also set left/right culling masks (standard mask no effect when 3d rendering is enabled).
2010-11-08 00:24:41 +01:00
V Meazza
00a9151b1a Add Stencil Lighting
Signed-off-by: V Meazza <vivina.meazza@lineone.net>
2010-02-10 15:54:48 +01:00
Tim Moore
78ebe9424b Add HAVE_CULLSETTINGS_CLEAR_MASK to configure.ac and check it in camera code
This works around a behavior / interface change in OSG post 2.9.6.
2009-11-30 09:29:07 +01:00
Csaba Halasz
4fc7105675 Update camera inheritance masks because of OSG changeset 10838 2009-11-30 07:00:43 +01:00
Tim Moore
0a64405cad fix warnings in Main 2009-08-24 18:03:49 +02:00
timoore
890b584b8f Enable EffectCullVisitor 2009-07-16 12:10:48 +02:00
Tim Moore
da8dd13138 Change the near plane value back to .1
By popular demand...
2009-01-10 00:11:41 +01:00
timoore
2b0ffae339 Protect against divide-by-zero in setCameraParameters
Found by Csaba Halász
2009-01-04 00:24:49 +01:00
timoore
61a496c2ea Set far camera reference frame to ABSOLUTE_RF
This was lost when I stopped cloning the near camera to make the far
camera. The result was a lot of breakage, including explicit camera
configurations not working and various ordering issues too.
2009-01-03 23:56:58 +01:00
timoore
ada7f622d7 Change the order of the main cameras from NESTED_RENDER to POST_RENDER
This seems to be accepted OSG usage for slave cameras. It's possible
that this order is important for rendering instruments that use RTT
textures on systems without frame buffer object support. I'm thinking
that the resulting bugs may be implicated in the "black rectangle" problem.
2009-01-03 23:56:03 +01:00
timoore
60e8f14d5b Don't clone far camera; create a new one and initialize it from the near camera
The clone operation may be sharing things that shouldn't be shared.
2009-01-03 23:55:44 +01:00
timoore
d43e0b83f7 Expose the CameraGroup near, far, and near/far boundry as properties
The near/far boundary, called "near-field", can be set to 0 which
disables the far camera and renders the whole scene using only one
camera. I'm hoping that this may be useful in resolving some
system-specific rendering bugs.

Various fixes were made to correctly render the scene using only the
near camera.
2009-01-03 23:53:04 +01:00
timoore
68c06775c8 Make computeIntersections work with the near and far cameras 2008-11-26 09:02:48 +00:00
timoore
723a1e4397 Fix some viewport problems on startup
From Csaba Halász
2008-11-21 23:11:27 +00:00
timoore
52c46e65a1 Use simgear clone function instead of OSG's.
This should remove a dependency on an unreleased version of OSG (2.7.3).
2008-11-21 14:53:37 +00:00
timoore
8afab2045b Update osg::Camera's viewport when it is created.
This fixes a problem where /sim/startup/[xy]size were not set properly
because the GUI camera's viewport was not correct at startup.
2008-11-19 22:55:42 +00:00
timoore
4e047d456f Update the camera properties after a resize event. 2008-11-18 22:46:19 +00:00
timoore
4f4434787f Cleanup of camera code in preperation for shadows
Partition depth in CameraGroup:
Remove the ViewPartionNode scenegraph node. The split rendering of the
scene, done to avoid Z buffer precision problems, is now done by two
slave cameras of the viewer.

Rename FGManipulator to FGEventHandler.

Remove virtual member functions that aren't required for event handlers.

Begin using camera group properties to update cameras at runtime;
Initially only the viewport properties are used.

When no camera group is found in the property tree (the default),
create the properties for one. Expose the default window by name.

Add a test for Boost headers to configure.ac. Boost is now a
dependency.

Remove GLUT and SDL versions of the OSG graphics.
2008-11-18 22:45:57 +00:00
timoore
fe83ba7110 Disable on-screen statistics for the GUI camera 2008-10-28 12:10:01 +00:00
timoore
6f802959ce CameraGroup class for managing multiple cameras.
CameraGroup supports cameras opened in different windows or in the
same window, with flexible view and perspective specification.

Clean up mouse click handling via osgViewer. Don't let any camera
"have focus;" this forces events to be reported in window coordinates
and simplifies life. Don't use the osgViewer::View::requestWarpPointer
method; instead use our own code which only deals with window
coordinates.

Make glut and sdl versions work with CameraGroup too.
2008-08-01 15:57:29 +00:00