Commit Graph

764 Commits

Author SHA1 Message Date
Robert Osfield
cda2c90315 From Romano José Magacho da Silva, support for vertex attributes in vertex program. 2003-05-07 13:13:13 +00:00
Robert Osfield
ba8bf1e94c From Eric Sokolowsky, support for mouse scroll wheel in osgGA/osgProducer. 2003-05-07 11:13:49 +00:00
Robert Osfield
fa0333b6fe Aded extra constructors to BlendFunc and Depth to help set them up convieniently.
Added a background quad to osghud.
2003-05-06 18:04:27 +00:00
Robert Osfield
06054d9520 Added support for multibuffering of tex coordinates. 2003-05-06 13:13:31 +00:00
Robert Osfield
895a722842 Addd support for maximum screen text size into osgText when auto scale to
screen is active.

Added osgautotransform demo.
2003-05-01 21:06:18 +00:00
Robert Osfield
d2d9b97953 Added set/getNearFarRatio() to CullVisitor. 2003-05-01 19:56:02 +00:00
Robert Osfield
9468ab4979 Cleanup of the API. 2003-04-30 15:38:11 +00:00
Robert Osfield
0ab467483f Added support for automatic scaling of text to screen coords. Optimized
the text implementation to provide better speed, especially by using the
alignement to screen option.

Deprecated the Text::setFontSize(,) method, which is now being replaced
by setFontResolution(,)

Fixed typos in Texture*.cpp.

Removed old deprecated methods from osg headers.
2003-04-30 11:40:17 +00:00
Robert Osfield
c1b1a091fa From Tree, addition of ; after MACRO_'s to help with Java port.
From Tree + Robert, Addition of LEFT_BASE_LINE,RIGHT_BASE_LINE,CENTER_BASE_LINE
Alignment options in Text.
2003-04-27 10:58:39 +00:00
Robert Osfield
9329717aa0 Moved #include <osg/Timer> from Viewer to OsgCameraGroup. 2003-04-17 15:27:17 +00:00
Robert Osfield
fd262554ac Moved the managing of frame stamp from osgProducer::Viewer into
osgProducer::OsgCamaraGroup.

Added setting of trackball in osgcameragroup so its starts in the
correct place for different models.
2003-04-17 11:14:25 +00:00
Robert Osfield
f759f7e69e Added OSGUTIL_EXPORT to front of DelaunayTriangulator class. 2003-04-17 06:52:56 +00:00
Robert Osfield
0b0c6c4e60 Added support for set/getColor to ShapeDrawable. 2003-04-16 20:02:15 +00:00
Robert Osfield
cad160fbe6 From Marco Jez, added DelaunayTriangulator class. 2003-04-16 19:21:27 +00:00
Robert Osfield
2e659c9ebf Renamed computeNearFar to computeNearFarPoints. 2003-04-16 14:22:36 +00:00
Robert Osfield
904aceec22 Added convinence methods to osgProducer::Viewer:
/** compute, from normalized mouse coords, for sepecified Camera, the pixel coords relative to that Camera's RenderSurface.*/
        bool computePixelCoords(float x,float y,unsigned int cameraNum,float& pixel_x,float& pixel_y);

        /** compute, from normalized mouse coords, for sepecified Camera, the near and far points in worlds coords.*/
        bool computeNearFar(float x,float y,unsigned int cameraNum,osg::Vec3& near, osg::Vec3& far);

        /** compute, from normalized mouse coords, for sepecified Camera, intersections with the scene.*/
        bool computeIntersections(float x,float y,unsigned int cameraNum,osgUtil::IntersectVisitor::HitList& hits);

        /** compute, from normalized mouse coords, for all Cameras, intersections with the scene.*/
        bool computeIntersections(float x,float y,osgUtil::IntersectVisitor::HitList& hits);
2003-04-16 14:17:49 +00:00
Robert Osfield
f9eb43083a Changed OsgSceneHandler so it re-uses osgUtil::SceneView project and modelview
matrices.

Changed the osgpick demo so that it uses the OsgSceneHandler's projection and
modelview matrices where possible.
2003-04-16 09:22:33 +00:00
Robert Osfield
fc4a2ab191 Added support for multiple cameras into osgpick. 2003-04-15 20:54:10 +00:00
Robert Osfield
63628ce099 From Romano, extra methods/variables for controlling tesselation. 2003-04-15 09:33:11 +00:00
Robert Osfield
5df7118d6d Updates to the osgpick code.
Updates to osgGA::CameraManipulors.
2003-04-14 15:44:30 +00:00
Robert Osfield
f543d69881 Improved the handling of Producer's no dimensional mouse coords. 2003-04-14 13:23:12 +00:00
Robert Osfield
3df0401007 Addd new computeLocalToWorld(NodePath) etc methods. 2003-04-14 13:22:21 +00:00
Robert Osfield
026dc2cbb7 Added Geoff Michel's osgpick and osgUtil::PickVisitor code. 2003-04-13 13:26:41 +00:00
Robert Osfield
5ecc25540c From Michael Gronager, changed apply(Sequence) to cast to an Group rather than
a Switch which was a bug.
2003-04-13 12:02:29 +00:00
Robert Osfield
50d1fcfea2 From Romano, added support in osg::VertexProgram for deleting the flushed
vertex programs.
2003-04-11 09:54:27 +00:00
Robert Osfield
aaa761e333 Added tests for presense of extensions to osgcubemap, osgvertexproram and
osgmultitexture examples.

Added osg::VertexProgram::Extensions class to better handle multiple graphics
context vertex program extensions.
2003-04-10 19:32:32 +00:00
Robert Osfield
52d2d8eaff Moved the osgcameragroup example across to being just based on
osgProducer::OsgCameraGroup with no usage of osgGA manipulators.

Removed redundent files from osgProducer.
2003-04-10 15:23:49 +00:00
Robert Osfield
8b03d59be3 Added support for modifying the osg::Texture*:Extensions stuctures.
Added an example modifying osg::Texture::Extensions to osgtext.  Optionally
compiled out by default.
2003-04-10 13:41:45 +00:00
Robert Osfield
bc4fd5b051 Added usage of Producer::CameraGroup::isValidForRendering() to the Viewer::done()
implemention so apps automatically close if one of the windows is killed.
2003-04-10 12:55:48 +00:00
Robert Osfield
22546b8085 Added support for multiple graphics context to osg::VertexProgram and osg::Impostor 2003-04-10 12:11:40 +00:00
Robert Osfield
e1e54570cb Fixed Viewer and OsgCameraGroup classes so that work properly with the
Prodicer::setViewByMatrix calls.
2003-04-10 10:02:24 +00:00
Robert Osfield
2166f9b701 Fixes to the Impostor implementation. 2003-04-09 21:53:09 +00:00
Robert Osfield
b02917e7a2 Fixed type of osg::ApplicationUsage::set/getApplictionName(), updated
demos accordingly.

Made OsgCameraGroup set the _applicationUsage to the
osg::ApplicationUsage::instance() when no ArgumentParser is supplied.

Added export to osgProducer::ViewerEventAdapter.
2003-04-09 08:20:08 +00:00
Robert Osfield
c3fd384eb1 From Romano José Magacho da Silva, added 'p' toggle to animation path
manipulator to allow animations to be paused and resumed.

Added frame rate stats which are output on each repetition of the path.
2003-04-08 20:06:37 +00:00
Robert Osfield
8a3d731739 Added support for Viewer::setViewer::setView so that the internal old
style osg::Camera and camera manipulators are updated correctly.
2003-04-08 15:47:45 +00:00
Robert Osfield
e928bca4c9 Changed the Viewer::realize() calls across to not using the threading paramter
leaving it up to the Viewer to specify the mode (which by default is MultiThreaded).
Added a check for the presence of osgParticle systems so that threading is
disabled in this case.
2003-04-08 15:18:45 +00:00
Robert Osfield
5f8411ac5c Changed the KeySwichCameraManipulator::setNode() so it set all camera's
attached to it.
2003-04-08 13:10:47 +00:00
Robert Osfield
559f5f93e5 Added an osg::absolute template function into osg/Math. 2003-04-08 09:42:03 +00:00
Robert Osfield
18ab95a294 Added support for snaping screen images from osgProducer::Viewer apps. 2003-04-07 19:19:01 +00:00
Robert Osfield
7af174fadb From Ulrich Hertlien, new osg::TextureRectangle class. 2003-04-07 13:20:53 +00:00
Robert Osfield
9f0fa75484 Added support for unref image data after apply in the osg::Texture*
classes.  Only unref's after all graphics context have been applied.
2003-04-07 12:51:00 +00:00
Robert Osfield
7e58786b11 Moved the modified tag's from osg::Texture into the osg::Texture1D,2D,3D and
CubeMap classes.
2003-04-07 09:46:06 +00:00
Robert Osfield
49a28660dc Added the usage report to the examples for when no arguments are passed
to the examples.
2003-04-06 21:32:44 +00:00
Robert Osfield
c7a7bd03cb Added support for recording animation paths in the osgProducer::Viewer. 2003-04-05 22:24:48 +00:00
Robert Osfield
cac6642de5 Improvements to the handling of warp pointer call on start up. 2003-04-05 07:19:40 +00:00
Robert Osfield
169bf25f77 Implemented support for float x and y mouse positions, and normalization of
mouse coords in osgGA::GUIEventAdapter, and ported osgGA camera manaipulators
to use the new normalized values.

Moved osgProducer across to tracking the window dimensions and ensure that the
internals values in osgProducer::EventAdapter are kept consistent.  Moved
the warp pointer in Viewer across to using KeyboardMouse::positionPointer().
2003-04-04 19:10:37 +00:00
Robert Osfield
e9e0b4304d Improved support for toggle between full screen and non fullscreen in
the osgProducer::Viewer.
2003-04-04 11:06:09 +00:00
Robert Osfield
e1e22ab430 Added GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB etc to the Texture header to
allow compilation across platforms.
2003-04-02 20:43:19 +00:00
Robert Osfield
0f3eaeba46 From Rune Schmidt Jensen - new dds loader. 2003-04-02 18:26:34 +00:00
Robert Osfield
7aab621405 Added support for min pixel size, max pixel size and max visable distance to
osgSim::LightPointNode, the max pixel size from was originally in osg::LightPoint.

Added additional get/set methods to osg::LightPointNode.

Increased the compute pixel size by a ratio 1.41 (sqrtf(2)) to correlate the
computed size with the actual size seen on screen.
2003-04-02 10:50:15 +00:00
Robert Osfield
5b36049f33 Added convinience constructor. 2003-04-01 18:42:38 +00:00
Robert Osfield
3975fc9b01 Improved handling of subloading.
Removed the rescalling of images in osg::Image during texture apply, moving
the rescale so it is locally calculated.  This solves an outstanding threading
problem which occured by multiple draw threads all tried to rescale the same
image at one time.

Made osg::Image ptr in osg::Texture2D non mutable as it is no longer modified
during apply.
2003-04-01 11:49:09 +00:00
Robert Osfield
b728b1dd99 Implemented load and subload methods in osg::Texture/Texture2D. 2003-03-31 21:41:17 +00:00
Robert Osfield
3fe1313ad9 Adding reseting of the array pointers to the dirty methods. 2003-03-31 11:25:04 +00:00
Robert Osfield
11053aaa5c Change the className() functions from non const to const to be consistent with the
osg::Object definition.
2003-03-29 22:07:03 +00:00
Robert Osfield
60e16ea044 Added Escape to the help list.
Changed the help key from '?' to 'h'
2003-03-28 10:04:58 +00:00
Robert Osfield
d8c82e17af Changed private to protected. 2003-03-27 17:20:21 +00:00
Robert Osfield
82139fae78 Fixed typo. 2003-03-27 17:18:59 +00:00
Robert Osfield
fc4fe9c625 Updates to utilise the new Producer keyboard bindings. 2003-03-27 10:54:01 +00:00
Robert Osfield
e93c812021 Improved the stats reporting. 2003-03-26 16:48:29 +00:00
Robert Osfield
8779fe20a7 Added help support for display help on screen to osgProducer::Viewer. 2003-03-26 12:50:30 +00:00
Robert Osfield
0c60d14c00 Added a ViewerEventHandler which manages full screen, file write, and help
output to osgProducer.  Removed FullSreenEventHandler as it is now superseeded
by ViewerEventHandler.
2003-03-25 15:13:20 +00:00
Robert Osfield
5e56e0eba8 Added osgkeyboard to the ./runexamples.bat.
Made osgstereoimage exit when non files have been loaded.

Added non const getText() method.
2003-03-25 13:57:16 +00:00
Robert Osfield
a03675495a Added new osgkeyboad example. 2003-03-24 21:17:51 +00:00
Robert Osfield
c2167be67b Fixed typo. 2003-03-24 15:21:52 +00:00
Robert Osfield
09acadb560 Added support for remapping of Win32 key symbols to
osgGA::GUIEventAdpater::KeySymbols.
2003-03-24 15:13:00 +00:00
Robert Osfield
19e2368991 Added osgGA::GUIEventAdapter::KeySymbol enumate list, which is a remapping
of the X settings.

Added a pass through of X11 sybmbols from Producer to osgGA::GUIEventAdapter::KeySymbol
in the osgProducer::EventAdapter.
2003-03-24 13:43:22 +00:00
Robert Osfield
6dbc770347 Made the osgGA::GUIEventHandler sublassed from osg::Object as a virtual
inheritence to allow handler to also be used as node callbacks.

Fix to UpdateVisitor to make the visitation of Drawable more consistent
with the way that nodes are traversed.
2003-03-24 08:42:35 +00:00
Robert Osfield
48868982f1 Added a traverseGeode method to the UpdateVisitor which contains the
traversal code for both the nodes traversal and the drawables the geode
contains.
2003-03-22 09:48:43 +00:00
Robert Osfield
f0eae16828 Added overide of the SceneHandler::clear() making it a no-op. Will revisit
this implemention later.
2003-03-20 17:24:25 +00:00
Robert Osfield
a3bb1da618 Added Endian test header to the core osg, and add use of the new
getCpuByteOrder test in LightPointDrawable.
2003-03-19 21:46:44 +00:00
Robert Osfield
21a74223e6 Added getCameraManipulator(unsigned int) method. 2003-03-19 21:14:50 +00:00
Robert Osfield
ca0ff266e2 First pass fix at implementing requestWarpPointer. 2003-03-19 15:49:21 +00:00
Robert Osfield
426e301c48 Addd a full screen toggle event handler to osgProducer & its viewer base
class.
2003-03-19 14:27:05 +00:00
Robert Osfield
74f8f18ad6 Added a realize callback to the OsgCameraGroup.
Move osgtexture3D across to using the new realize callback for creating its textures.
2003-03-19 12:06:29 +00:00
Robert Osfield
8ed643ca24 Chaned the OsgCameraGroup so that its scene handler list used ref_ptr<> for
robustly managing memory.
2003-03-18 20:27:09 +00:00
Don BURNS
e978c405e1 Set VERSION_RELEASE back to 3, replaced guards in include/osg/Verson to
OSG_VERSION_ with trailing underscore
2003-03-18 20:02:02 +00:00
Robert Osfield
bf184ef7a3 From Tree, added SG_EXPORT to the inner classes for Java binding work. 2003-03-18 19:42:34 +00:00
Robert Osfield
33ad8d8cb0 From Tree, ushort renamed GLushort 2003-03-18 09:29:06 +00:00
Robert Osfield
96b72af169 Implemented a object cache in osgDB::Registry. 2003-03-17 22:53:46 +00:00
Robert Osfield
e87a08f1c3 Fixes to osgcluster demo as new Producer based example.
Added extra pragrma remove a warning about float to int cast under VS.NET.
2003-03-16 21:58:27 +00:00
Robert Osfield
f811b2580e Removed osgGLUT and Demos/*.
Integrated Marco's updated examples/*/*.dsp's.
2003-03-15 20:20:46 +00:00
Robert Osfield
2ca505b3d8 Ported all glut based demos across to using the new osg::ArgumentParser. 2003-03-14 10:49:06 +00:00
Robert Osfield
2915550887 Reverted Don's changed of sqrtf to sqrt. Don't understand why the change was
required, suggest a problem elsewhere which should be fixed, *not* by modification
of Vec2.
2003-03-13 14:29:16 +00:00
Don BURNS
ec3e1dc611 Fixes for Mac OS X 2003-03-13 06:22:31 +00:00
Robert Osfield
b0dce04063 Added setBound() method to Drawable. 2003-03-11 21:53:28 +00:00
Robert Osfield
5ae998dbc2 Added missing osg:: to StateAttribute. 2003-03-11 21:42:55 +00:00
Robert Osfield
e51c7f1587 Added support for AbortRendering flag pointer in osg::State which is used
by osgUtil::RenderLeaf to test if any abort state has been set, if so it
doesn't do any further drawing.

The osgProducer::Viewer has been set up to set the osg::State's it manages
with their AbortRendering flag pointers set to the osgProducer::Viewer::_done
memeber varaible.  Now when escape is pressed the rendering is aborted early.
2003-03-11 15:25:49 +00:00
Robert Osfield
78de76f17f Bug fixes to osgText to handle the osgUtil::Optimizer being used on a scene
graph containing text.

Fixed warning in MD2 plugin.
2003-03-11 13:30:03 +00:00
Robert Osfield
06fb808ad3 Improvements to the Text .osg support. 2003-03-10 16:40:26 +00:00
Robert Osfield
ebbd03c114 Marged new getLibaryMethod added by Daniel. 2003-03-10 11:57:17 +00:00
Robert Osfield
efea365412 Moved the remain inline osg::Font methods into Font.cpp to avoid problems with the
impossibly stupid visual studio compilers.
2003-03-10 09:15:59 +00:00
Robert Osfield
a78600af67 Removed the OSGTEXT_EXPORT symbol from FontImplementation to avoid problems under
VisualStudio.
2003-03-08 09:51:41 +00:00
Robert Osfield
47087585c0 Added maximum width and maximum height limits to the osgText::Text which
automatically wraps text which goes beyond these limits.
2003-03-06 21:35:33 +00:00
Robert Osfield
152e60c61b Reverted the changes to ref_ptr<> for implicit cast to pointer. 2003-03-06 19:41:59 +00:00
Robert Osfield
fab6f24f4e Changed the osgText::Font implementation so it used a facade us abstract away
the actual implemention. This has been done so that when a freetype font is
created the implementation can unloaded when the freetype plugin is unloaded
without breaking the main font.

Also add image margin around founds to prevent any image boundaries appearing.
2003-03-06 17:11:24 +00:00
Robert Osfield
0d9aaa5ca6 Reverted the ref_ptr<> implementation to prior implicit cast operator via
commenting out// #define AUTOMATIC_CAST_TO_POINTER.
2003-03-06 13:45:20 +00:00
Robert Osfield
b70c80ba39 Add #ifndef's around the comparison operator's against const T* now that the
implicit cast operator has been added.
2003-03-06 10:38:31 +00:00
Robert Osfield
63df52d408 Added osgText::String implementation to better handle decoding of encoded text. 2003-03-05 21:05:37 +00:00
Robert Osfield
f9d8f3fa9d Added implicit cast to T* to ref_ptr<>. 2003-03-05 21:04:11 +00:00