Robert Osfield
22eae68e48
From Mathias Froehlich, "This is a generic optimization that does not depend on any cpu or instruction
...
set.
The optimization is based on the observation that matrix matrix multiplication
with a dense matrix 4x4 is 4^3 Operations whereas multiplication with a
transform, or scale matrix is only 4^2 operations. Which is a gain of a
*FACTOR*4* for these special cases.
The change implements these special cases, provides a unit test for these
implementation and converts uses of the expensiver dense matrix matrix
routine with the specialized versions.
Depending on the transform nodes in the scenegraph this change gives a
noticable improovement.
For example the osgforest code using the MatrixTransform is about 20% slower
than the same codepath using the PositionAttitudeTransform instead of the
MatrixTransform with this patch applied.
If I remember right, the sse type optimizations did *not* provide a factor 4
improovement. Also these changes are totally independent of any cpu or
instruction set architecture. So I would prefer to have this current kind of
change instead of some hand coded and cpu dependent assembly stuff. If we
need that hand tuned stuff, these can go on top of this changes which must
provide than hand optimized additional variants for the specialized versions
to give a even better result in the end.
An other change included here is a change to rotation matrix from quaterion
code. There is a sqrt call which couold be optimized away. Since we divide in
effect by sqrt(length)*sqrt(length) which is just length ...
"
2008-09-17 16:14:28 +00:00
Robert Osfield
f9c70f2f76
Added --unit entry for controlling which texture unit the overlay works on.
2008-04-11 14:14:28 +00:00
Robert Osfield
7ec5673a7e
Added fire effect, enabled by --fire command line option. The new fire effect
...
has been introduced to reproduce the scaling of paricle effects
2008-03-17 10:29:23 +00:00
Robert Osfield
5213856929
Added passing of arugments into viewer constructor
2007-06-13 15:32:17 +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
607ecf17cc
Added support for specifying external overlay file.
2007-06-10 20:46:53 +00:00
Robert Osfield
85c8797bc4
Moved HelpHandler and StatsHandler classes into ViewerEventHandlers header, removed HelpHandler and StatsHandler headers
2007-06-06 11:21:13 +00:00
Robert Osfield
8dd2c34e4d
Improved the handling of the -p path option
2007-06-01 19:01:06 +00:00
Robert Osfield
e741afb5be
Added recording of camera paths
2007-06-01 11:21:57 +00:00
Robert Osfield
4a4bca88f5
Added support for specifying which screen number to place the window
2007-05-29 13:28:40 +00:00
Robert Osfield
90a24a103f
Comment out the setting of single threading.
2007-05-25 19:32:15 +00:00
Robert Osfield
a441b1cf35
Made the near far ratio lower to allow one to be near the terrain before clipping
...
comes in to effect
2007-05-19 13:38:38 +00:00
Robert Osfield
79b274b3d6
Added range of CameranManipulators to allow us to navigate the scene freely
2007-05-18 09:49:30 +00:00
Robert Osfield
7a66aaca15
Added -f/--fixed option to allow use to freeze the animation of the cessna.
2007-05-18 09:43:25 +00:00
Robert Osfield
d80cf6b5ee
Futher work on view dependent OverlayNode
2007-05-16 19:19:43 +00:00
Robert Osfield
7b644e6d82
Added -n/--no-overlay option
2007-05-15 14:53:58 +00:00
Robert Osfield
e41cd46da8
Set up new view dependent overlay technique control methods
2007-05-14 20:23:10 +00:00
Robert Osfield
74e968df76
Clean up comments and rebuilt wrappers.
...
Added extra event handlers to osgsimulator example
2007-05-14 16:14:40 +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
b00cbe5a17
Moved include/osgTerrain/DataSet/.cpp, gdal plugin and osgdem out into the VirtualPlaneBuilder project.
...
Updated examples to remove DataSet/GDAL dependency.
Updated wrappers
2007-02-27 21:12:48 +00:00
Robert Osfield
d6291a0ffc
Ported follow examples to osgViewer:
...
osgshape
osgsimplifier
osgsimulation
osgslice
osgspacewarp
osgspheresegment
osgspotlight
osgstereoimage
2007-01-11 11:47:01 +00:00
Robert Osfield
41a4aa1548
Added viewer.cleanup_frame() to all examples.
2006-08-02 19:55:03 +00:00
Robert Osfield
dcdc2d492d
Updated commandline docs
2006-07-18 13:37:42 +00:00
Robert Osfield
efeeabbef9
added SphereSegment test code segment, commented out at pressent.
2006-06-08 11:18:27 +00:00
Robert Osfield
43f0efd6d2
Reorganised the Group::removeChild and Geode::removeDrawable methods so
...
that removeChild(Node*), removeChild(uint) and equivilant Geode methods are
now inline methods, not designed to be overriden, and seperated out the
multiple remove method to be called removeChildren(uint, uint) which is
now the only virtual method. There removeChildren is now the method to
override in subclasses.
This reorganisation requires some call code to be rename removeChild usage
to removeChildren.
2006-05-02 09:45:31 +00:00
Robert Osfield
051f2a5eb9
Added beginings osgprecipitation example.
2006-04-05 15:13:17 +00:00
Robert Osfield
943be478f4
Fixed function name call.
2006-02-23 12:39:31 +00:00
Robert Osfield
91855e7c50
Replaced tabs with spaces in examples.
2005-11-17 20:22:55 +00:00
Robert Osfield
d91f2c631d
Improved handling of core OSG being compile with float Matrices.
2005-11-17 09:57:40 +00:00
Robert Osfield
2bd868cd1c
Added release and flush of OpenGL objects after build of the terrain database to prevent
...
the build graphics context state leaking into the viewers graphics context set.
2005-11-09 20:26:34 +00:00
Robert Osfield
4d42be705d
Reduced the size of the "oversized" cessna.osg
2005-11-09 13:39:08 +00:00
Robert Osfield
559219f519
Added initial interface for computing intersections between sphere segments
...
and terrain.
2005-09-08 13:10:04 +00:00
Robert Osfield
765db1998c
Added support for cullable state, that uses a polytope to define the extents
...
of objects that will be influenced by it.
2005-09-07 16:18:43 +00:00
Robert Osfield
4e6a8cfcd5
Added s/getContinousUpdate(bool) method to OverlayNode.
2005-09-06 19:54:29 +00:00
Robert Osfield
a420782199
Added osgSim::OverlayNode setup in osgsimulation, and added preliminary test
...
code to the osgSim::OverlayNode to test osgsimulation/the architecture.
2005-08-31 15:04:27 +00:00
Robert Osfield
16c55531da
Preparation for moving osgGL2 out of the core OSG into its own seperate distribution.
2005-04-14 11:28:23 +00:00
Robert Osfield
52f192f53f
Reverted back to not test version of osgsimulation
2005-04-08 09:55:52 +00:00
Robert Osfield
4de8199011
Added #include <osg/io_utils>
2005-04-08 09:45:06 +00:00
Robert Osfield
4c362f5447
Introduced a flight path that goes around the earth going into the north and sound
...
hemisphere's with heading and roll adjustment.
2005-04-07 13:49:54 +00:00
Robert Osfield
9e54b00205
From Randall Hopper, with small order tweak from Robert and addition to GNUmakefile.inst,
...
added $(GDAL_LIBS) to fix build under FreeBSD.
2005-03-23 20:48:50 +00:00
Robert Osfield
1791f7c6b9
Corrected orientation of aeroplane and direction of rotation around earth.
2005-03-22 12:04:03 +00:00
Don BURNS
a2f5c8563e
Randal Hopper fix to GNUmakefile for osgsimulation.
2005-03-18 01:51:13 +00:00
Don BURNS
61d374b726
Added pragma to shut VS 6 up.
2004-11-29 18:59:36 +00:00
Robert Osfield
18cd77873a
Changed fstream to ifstream
2004-10-15 09:53:18 +00:00
Robert Osfield
792a7fe0d5
Improvements to the NodeTrackManipulator and osgsimulation example
2004-10-14 10:38:29 +00:00
Robert Osfield
9ac2c02dc2
Increased the size of the inserted model so that it can be seen more easily,
2004-10-13 13:39:27 +00:00