1
0
Fork 0
Commit graph

19 commits

Author SHA1 Message Date
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