Commit Graph

105 Commits

Author SHA1 Message Date
Robert Osfield
1dc06b4553 From Mihair Radu, "Most of the additions are small utility methods:
- set the resolution of the shadow map; it calls dirty() to
re-initialize at next update
- keep a list of Shader objects to use instead of the default ones, if
the list is empty, the default shaders are used
- explicitly create the Uniform variables, so that subsequent additions
that require more Uniforms can put them in a central place
- set a Light or LightSource to use explicitly for shadow casting,
allows multiple lights in the scene, with one casting shadows

There are two additions that do not ( yet ) function correctly, but in
the present usage they do not interfere with the regular usage of the
techique:
- support for using spotlights, it's using Light.spotCutoff to determine
if it's a spot-light and not point-light,
   there is an error in the setup of either the shadow camera or the
texgen, most likely due to the direction of the spotlight, since the
position is being used just like in point or directional lights.
- creation of a debugHUD
   the hud is created properly, ( the example included shows it ), but
it displays only white, there has been some discussion of displaying the
shadow map, but I could not find it, the addition of a simple fragment
shader with the appropriate color transform should get this going."
2007-10-02 21:45:09 +00:00
Robert Osfield
5b263f583f Added record path manipulator 2007-09-28 08:52:00 +00:00
Robert Osfield
6df0110d0c From Adrian Egli, "update the PSSM, i did some bug fixes and added new features to move the camera virtual against the view direction by applaying a simple distance factor (a), which is calculated camera eye - camera center distance. and we can move the "light camera" against the light direction (b).
(a) some objects behind the camera can cast shadow
(b) object aboive the camera can cast shadow

then i fixed the shadow map orientation, now screen x coordinate alinged which improve the quality"
2007-09-27 12:47:34 +00:00
Robert Osfield
d11d5b819a From Adrian Egli, further work on PSSM implementation. 2007-09-24 15:24:23 +00:00
Robert Osfield
82b0f004e9 From Adrian Egli, update to ParallelSplitShadowMap. 2007-09-22 16:46:38 +00:00
Robert Osfield
cf69352873 From Adrian Egli, ParallelSplitShadowMap implmentation.
Changes by Robert Osfield - CMakeLists.txt and name change to ParallelSplitShadowMap.
2007-09-19 11:56:44 +00:00
Robert Osfield
2861ca6d1a Added support for SoftShadowMap into osgshadow example 2007-08-12 12:15:21 +00:00
Robert Osfield
7016db5f26 Removed ParallelSplitShadowMap as its currently a non op. 2007-06-13 09:56:12 +00:00
Robert Osfield
cc0f1cb0fe From Martin Lavery and Robert Osfield, Updated examples to use a variation of the MIT License 2007-06-12 14:20:16 +00:00
Robert Osfield
8500995ffd Added #include<osg/Geometry> 2007-06-06 16:27:00 +00:00
Robert Osfield
00df23b781 Fixed includes 2007-06-06 16:23:20 +00:00
Robert Osfield
a9d9d387df Fixed spelling of Receives 2007-06-04 08:38:11 +00:00
Robert Osfield
5be86601bb Removed old GNUmakefile.inst files 2007-04-10 13:58:18 +00:00
Robert Osfield
2e6ee4bb39 Removed old gmake and VisualStudio build files 2007-04-10 13:10:25 +00:00
Robert Osfield
d9a94f7890 Moved the TARGET_NAME setting into the SETUP_APPLICATION/EXAMPLE macro 2007-03-19 17:18:59 +00:00
Robert Osfield
da64127539 Ran dos2unix on CMakeLists.txt files. 2007-03-19 13:26:34 +00:00
Robert Osfield
be3f61c49f From Luigi Calori, move to using local CMakeLists.txt files and explicit file lists.
From Robert Osfield, small ammendments of the above to seperate example and application installs, and fix the osgPlugins install directory.
2007-03-19 12:30:26 +00:00
Robert Osfield
0414332390 Fixed command line parameter reporting 2007-03-04 13:04:12 +00:00
Robert Osfield
fa9456f0b9 Added command line arguments descriptions 2007-02-19 16:59:52 +00:00
Robert Osfield
b348f4a815 Added -1, -2 and -3 model creation options to osgshadow example. 2007-02-19 16:45:42 +00:00
Robert Osfield
65ad3094a9 Added support for ShadowTexture and ShadowMap to osgshadow example 2007-02-19 15:26:14 +00:00
Robert Osfield
dbb7c3c74c Added support for using the new osgShadow plugin as a psuedo loader such that:
osgviewer cow.osg.shadow

Or to ShadowVolume rechnique specifically:

  osgviewer cow.osg.sv.shadow
2007-02-15 22:28:32 +00:00
Robert Osfield
760cfeaadb Cleaned up osgshadow example so that it now relies upon osgShadow for its
shadow implementation
2007-02-09 21:31:29 +00:00
Robert Osfield
9aae37e357 Moved the basic ShadowVolume code into osgShadow 2007-02-09 16:03:29 +00:00
Robert Osfield
95befaf1ed Flesh out more of basic ShadowTechnique and ShadowedScene API. 2007-02-08 17:23:40 +00:00
Robert Osfield
55661041d7 Added display listing of ShadowVolume 2007-01-30 17:12:33 +00:00
Robert Osfield
b8994d4707 Updated wrappers 2007-01-27 17:52:11 +00:00
Robert Osfield
f2c782dda4 Added light source. 2007-01-27 14:27:29 +00:00
Robert Osfield
137d9c1a6a Further work on shadow CullCallback 2007-01-27 12:54:58 +00:00
Robert Osfield
8625598e00 Further work on building the rendering back end from the intial traversal of the
scene graph
2007-01-26 21:22:35 +00:00
Robert Osfield
df7ab22414 Added custom callback to capture RenderBins 2007-01-26 09:44:49 +00:00
Robert Osfield
7232a831da Added osg::FrameStamp::set/getSimulationTime().
Added setting of osg_SimulationTime and osg_DeltaSimulationTime to the uniforms set by SceneView

Added frame(double simulationTime) and advance(double simulationTime) parameters to
osgViewer::SimpleViewer, Vewer and CompositeViewer.

Updated various examples and Nodes to use SimulationTime where appropriate.
2007-01-25 12:02:51 +00:00
Robert Osfield
3c96113970 Added ability to generate various cube faces for testing and switch handler to toggle between different models. 2007-01-24 11:18:27 +00:00
Robert Osfield
2fc6dd1942 Added cube test model. 2007-01-23 17:42:43 +00:00
Robert Osfield
bd7af070af Commented out the default saving of models 2007-01-23 16:27:07 +00:00
Robert Osfield
6b7652b1cb Added single screen option 2007-01-23 15:51:43 +00:00
Robert Osfield
fd9c8c5258 Added command line help 2007-01-23 14:43:07 +00:00
Robert Osfield
4dea029608 Made two sided stencil the default 2007-01-23 13:16:47 +00:00
Robert Osfield
d614262ab7 Added stats and range of keyboard mouse handling to osgshadow example 2007-01-23 12:10:44 +00:00
Robert Osfield
ccc8a922a6 Added osg::StencilTwoSided state attribute to wrap up the stencil_two_sided extension.
Added path in osgShadow work for using StencilTwoSided to accelerate shadow volume rendering.
2007-01-18 22:32:18 +00:00
Robert Osfield
9e34e56c70 Added stencil buffer setting 2007-01-11 16:59:50 +00:00
Robert Osfield
374f8e30a4 Added DisplaySettings support into osgViewer::Viewer 2007-01-11 12:06:24 +00:00
Robert Osfield
877a32c3eb Ported following examples to osgViewer:
osgshaders
osgshaderterrain
osgshadow
osgshadowtexture
2007-01-10 21:05:26 +00:00
Robert Osfield
6778bfca44 Added support for placing a base in the scene to shadow against 2006-12-01 15:19:21 +00:00
Robert Osfield
8d85636b50 Fixed typo and updated wrappers 2006-11-30 18:42:38 +00:00
Robert Osfield
a9d18d01db Basic shadow volume alogirthm implemented in example. 2006-11-30 16:30:24 +00:00
Robert Osfield
808047ee1b Added dynamic updating of light position and multi-pass addition of ambient and diffuse lighting 2006-11-30 12:05:51 +00:00
Robert Osfield
cdcbf3f9af Added movement of the light source to test performance of update the shadow volumes 2006-11-30 10:29:03 +00:00
Robert Osfield
5044a85c9e Improved handling of bounding polytope 2006-11-24 17:20:01 +00:00
Robert Osfield
006435e679 Added support for positional lights into computeShadowVolumeGeometry code and cleaned up OccluderGeometry interface. 2006-11-24 11:37:57 +00:00
Robert Osfield
ef9595e73a Add compute of tight bounding box to enable better placement of the base plane. 2006-11-23 17:29:43 +00:00
Robert Osfield
e7ef0ca846 First cut at generating the ShadowVolumeGeometry 2006-11-23 16:55:46 +00:00
Robert Osfield
5f59741b42 Added support for handling osg::ShapeDrawable style drawables in OccluderGeoemtry. 2006-11-14 12:16:39 +00:00
Robert Osfield
8983544a86 Further work on osgShadow::GeometryOccluder 2006-11-10 15:07:13 +00:00
Robert Osfield
5163c4a762 First cut at class interfaces and stubs for implementations for the new osgShadow NodeKit 2006-10-06 14:16:11 +00:00