Commit Graph

8741 Commits

Author SHA1 Message Date
Robert Osfield
85fffc2e76 From Roland Smeenk, "Attached you will find an improved Collada plugin to properly support camera's.
A Collada camera will be added to the scenegraph as osg::CameraView. This allows the user to create a set of predefined camera viewpoints. I also added a new MatrixManipulator to osgGA called CameraViewSwitchManipulator and added usage of this to the osgviewer example. This manipulator allows switching between the predefined camera viewpoints. The current design limition I ran into is that a MatrixManipulator only manipulates the ViewMatrix, but for this particular  manipulator I also want to update the projectionMatrix of the camera when switching to a new viewpoint. This is not implemented because I don't know what would be the best way to design it. Any ideas?
 
Furthermore Collada also supports orthographic camera's, where an osg::CameraView only supports a perspective camera. Would it be useful to create a CameraView with customizable optics for this?"
2009-01-05 16:53:29 +00:00
Robert Osfield
1a600c1178 Updated wrappers 2009-01-05 12:21:58 +00:00
Robert Osfield
375253ae8a From Paul Martz, Correction to Timer method comment. 2009-01-05 11:58:08 +00:00
Robert Osfield
c8752d6c18 From Cedric Pinson, added non const getText() method 2009-01-05 11:31:38 +00:00
Robert Osfield
cedffd3adb Introduced osgVolume::Layer and Locator classes mirrroring similar classes in osgTerrain. 2009-01-05 11:26:26 +00:00
Robert Osfield
788bead9fe Change the aggressive warning level under VS to /W3 2009-01-05 10:13:04 +00:00
Robert Osfield
4f91d9769e Fixed warning 2008-12-24 11:05:22 +00:00
Robert Osfield
1697eb526d Fixed warnings 2008-12-24 10:30:21 +00:00
Robert Osfield
a9602c6906 Made aggressive warnings the default. 2008-12-22 21:17:03 +00:00
Robert Osfield
c0b696ba52 Fixed warnings 2008-12-22 21:16:40 +00:00
Robert Osfield
21b633e73b Build fix 2008-12-22 18:30:52 +00:00
Robert Osfield
0d5194bfd4 From Paul Martz, "Typing "osgconv" alone displays the --help family of options, as it should, but it also displays info about --formats and --plugins, which seems out of place because no other options are mentioned here.
The code changes osgconv so that "osgconv --help" displays help info about --formats and --plugins, plus it also displays documentation for --format and --plugin, which were previously missing."
2008-12-22 08:26:16 +00:00
Robert Osfield
f4c26f9cc8 Changed VolumeTile::setImage(Image*) to setImage(uint i, Image*) to allow multiple images to be attached to single tile 2008-12-21 20:42:29 +00:00
Robert Osfield
adced97dcd From Mattias Helsing, "Replace the IF(POLICY CMP0008) with an absolute version check for
cmake > 2.6.0.
The POLICY keyword is only valid starting with cmake-2.4.7 so using it
broke cmake 2.4.5/6 support."
2008-12-21 20:24:56 +00:00
Robert Osfield
adb7a49c10 Renamed osgVolume::Brick to osgVolume::VolumeTile 2008-12-20 20:55:21 +00:00
Robert Osfield
f0270f934e Changed the scale from 0.03 to 0.0254 as the Q3 bsp files are in inches. 2008-12-20 20:30:08 +00:00
Robert Osfield
28ca8277f8 From Jason Daly, "'ve been busy working on the Source engine plugins. There are several contributions in this submission:
osgDB/FileUtils.cpp:
Needed this extra code to allow a true case-insensitive search.  This is because the HL2 map and model files are often sloppy with case.  For example, the file might look for materials/models/alyx/alyx_sheet.vtf, but the file is actually in materials/Models/Alyx/alyx_sheet.vtf.  In case-insensitive mode, the new code recursively disassembles the path and checks each path element without regard to case.  In case-sensitive mode, the code behaves exactly as it used to.  The new code is also mostly skipped on Windows because of the case-insensitive file system.  Previously, I did all of this with custom search code in the .bsp plugin, but this allows the user to tailor the search using OSGFILEPATH.  There are some instructions in the plugins' README files about this.

osgPlugins/mdl:
This is a new plug-in for Half-Life 2 models (as opposed to maps).  This allows you to load Source models individually, as well as allowing the .bsp plugin to load models (props) that are embedded into maps.  Mdl files can contain simple object (crates, barrels, bottles), as well as fully articulated characters with skeletal animations.  Currently, it can load the simple objects.  It can also load the characters, but it can't load the skeletons or animations.

osgPlugins/bsp:
This contains all of the changes needed to load props along with the basic map geometry.  There are also
several bugs fixed.

osgPlugins/vtf:
This is the loader for Valve's texture format.  Previously, we had agreed to put this in with the bsp plugin, but I didn't think of the .mdl plugin at that time.  It's conceivable that a user might want to load models individually (not as part of a map), so the vtf reader does have to be separate.  I also fixed a rather significant bug.

I tested all of this code on RHEL 5.2 (32-bit), and Fedora 9 (64-bit).  I'll be testing on Windows soon.

I also attached a simple .mdl file, along with it's associated files and textures.  Just extract the tarball into it's own directory, set your OSGFILEPATH to point at that directory, and load the model like this:

 osgviewer models/props_junk/gascan001a.mdl"
2008-12-20 13:35:49 +00:00
Robert Osfield
05cb054140 Added OPTIONAL into INCLUDE(FindPkgConfig) 2008-12-20 12:52:16 +00:00
Robert Osfield
03285f5fe1 Updated ChangeLog for 2.7.8 dev release 2008-12-19 19:04:45 +00:00
Robert Osfield
ddc221ecc7 Added osgversion into dynamic build path 2008-12-19 18:37:23 +00:00
Robert Osfield
ad01f19db8 Removed debug message 2008-12-19 18:02:18 +00:00
Robert Osfield
2cc53e2256 Moved main setSceneData methods in osgViewer::View::setSceneData() 2008-12-19 17:50:58 +00:00
Robert Osfield
de53ed75f4 Updated wrappers 2008-12-19 17:15:56 +00:00
Robert Osfield
502eced994 From Jean-Sebastein Guay, I recently had to reimplement screen capture functionality into our framework (which was broken since the switch from OSG 1.2 to 2.2 over a year and a half ago). I used the ScreenCaptureHandler which I had contributed right before OSG 2.6 shipped, bit I had to trigger the screen capture programatically instead of by a key press in some cases, so I added a convenience method to do that.
It's a minimal change, it just calls an already existing protected method. It was trivial to subclass the handler to do it in our code, but pushing the change into OSG makes sense as it's generally useful to have it in the handler itself.

I also noticed that the handle() method was overridden from osgGA::GUIEventHandler but wasn't marked virtual. It wasn't intended that subclasses not be able to override it in turn, so I've added the keyword.""
2008-12-19 17:15:10 +00:00
Robert Osfield
767096631a Fixed warning 2008-12-19 16:59:10 +00:00
Robert Osfield
df0f01c828 Fixed compile error during debug build 2008-12-19 16:35:45 +00:00
Robert Osfield
02beb8c74a Added support for user defined clipping of the precipitation effect, to test use:
osgpreciptation lz.osg --clip 20
2008-12-19 16:13:19 +00:00
Robert Osfield
aabf60c8e5 Added setting of the gl_ClipVertex to enable clip planes to affect preciptation 2008-12-19 16:12:40 +00:00
Robert Osfield
0ea6cdeb96 Added ClipNode::set/getReferenceFrame(); 2008-12-19 15:29:59 +00:00
Robert Osfield
f4fe462b28 Removed MATH_LIBRARY and FREETYPE library reference. 2008-12-19 14:30:03 +00:00
Robert Osfield
8951acabb7 Fixed warning & error 2008-12-19 12:58:50 +00:00
Robert Osfield
4324e9a915 Reverted previous check-in to osgviewer.cpp as this was an accididental check-in with the code only in testing state, not appropriate to be checked-in. 2008-12-19 12:50:33 +00:00
Robert Osfield
c862344929 Fixed warning 2008-12-19 12:46:21 +00:00
Robert Osfield
840b926ca7 Fixed warning 2008-12-19 12:29:18 +00:00
Robert Osfield
74d090845f Added StandardShadowMap to list to test cases 2008-12-19 12:28:53 +00:00
Robert Osfield
75bd8e9a1e Updated wrappers 2008-12-19 11:36:26 +00:00
Robert Osfield
ef47733ea1 From Mattias Helsing, "
* Removed processing of include/OpenThreads in the OpenSceneGraph refman
* Clears the mark_as_advanced property of the BUILD_DOCUMENTATION
cmake variable (so it gets visible in simple view).
"
2008-12-19 11:04:35 +00:00
Robert Osfield
4c6511fd50 Updated wrappers 2008-12-19 10:20:23 +00:00
Robert Osfield
a4174763f8 Fixed typo 2008-12-18 17:40:13 +00:00
Robert Osfield
3327b6a621 From Bob Kuehne, "minor tweak to the cmake root file to handle debug correctly on os x." 2008-12-18 17:09:12 +00:00
Robert Osfield
b43c467d30 Refactored the handling of particle rotation 2008-12-18 17:01:21 +00:00
Robert Osfield
1b942fed64 Fixed warnings 2008-12-18 16:10:12 +00:00
Robert Osfield
6055dee411 Fixed warnings 2008-12-18 15:49:44 +00:00
Robert Osfield
4de4375fce Added MATH_LIBRARY to link list 2008-12-18 14:18:22 +00:00
Robert Osfield
9b1445d5b9 Fixed warnings 2008-12-18 13:56:30 +00:00
Robert Osfield
9d2b1b539c Fixed warnings 2008-12-18 13:23:48 +00:00
Robert Osfield
1d4a0e767c Fixed warning 2008-12-18 12:29:17 +00:00
Robert Osfield
bc6a7b03ab Quitened down debug messages 2008-12-18 12:27:34 +00:00
Robert Osfield
215cd5f29b Fixed warnings 2008-12-18 12:26:14 +00:00
Robert Osfield
de17dad958 Quitened down debug message 2008-12-18 12:25:51 +00:00