Robert Osfield
afab78ed40
Preliminary support for wrapping methods in the lua script plugin.
2013-12-25 17:36:32 +00:00
Robert Osfield
5571c361dc
Implemented ability to switch between different shaders with new MultipassTechnique
2013-12-13 12:38:01 +00:00
Robert Osfield
939aa38a2a
Added SampleRatioWhenMoving property and support to new osgVolume::MultipassTechnique.
2013-12-12 09:53:24 +00:00
Robert Osfield
e3bf55a266
Added initial support for 1D transfer functions to MultipassTechnique
2013-12-11 12:00:27 +00:00
Robert Osfield
bc95ea97fb
Introduced SampleRatioValueProperty for more intuitive control of how many samples to take when volume rendering
2013-12-10 10:43:48 +00:00
Robert Osfield
3858acf70f
Further work on new MultipassTechnique/VolumeScene.
2013-12-06 19:31:12 +00:00
Robert Osfield
4fcf8d3e86
Added initial render to texture functionality into osgVolume::VolumeScene
2013-11-25 17:36:17 +00:00
Robert Osfield
5bea13c172
Added new osgVolume::VolumeScene and osgVolume::MultipassTechnique class shells that will be filled out to provide multi-pass volume rendering that handles mixing of
...
3D meshes with volume rendering and segmentation of volumes via a user defined hull mesh.
2013-11-21 18:17:44 +00:00
Robert Osfield
dbf88cc209
From Stephan Huber, "minor ios-fixes/-enhancements
...
* force _OPENTHREADS_ATOMIC_USE_BSD_ATOMIC for IOS device + simulator as the test does not pick the right implementation
* fixed a small compile-bug for iphone-example
* added a check to prevent multiple realization of a GraphicsWindowIOS-object
"
2013-11-18 14:21:06 +00:00
Robert Osfield
e0d3ab4412
From Stephan Huber, * GUIEventAdapter: add support for getting normalized touch points
...
* MultiTouchTrackball: some code cleanup and support for normalized touch-points
* oscdevice: receiving and sending multi-touch-events via the Cursor2D-profile from TUIO
* added some documentation
2013-11-18 13:25:55 +00:00
Robert Osfield
d7442e7456
Added panning and zooming functionality to transfer function UI prototype code.
2013-11-18 12:46:00 +00:00
Robert Osfield
829cd9718a
From Stepan Huber, "attached are my changes for the osc, zeroconf and resthttp-plugin to use the new event-class. I refactored the osgoscdevice-example so that it’s working again. "
2013-11-08 12:28:51 +00:00
Robert Osfield
1a90789402
Added support for assinging and display transfer functions
2013-11-08 12:26:14 +00:00
Robert Osfield
fef39b6215
Re-enabled the disable of the transfer function
2013-11-06 09:50:16 +00:00
Robert Osfield
6f6c44446c
Introduced a cast(T) method into the ImageUtils template functor to allow code reading images to handle casting from source data to a form that a user can use more conviently
2013-11-06 09:23:21 +00:00
Robert Osfield
a10e9c6950
Added initial shell of new osgtransferfunction example that will be tested bed for upcomming transfer function editing UI.
2013-10-28 17:46:07 +00:00
Robert Osfield
4a660f6266
Introduce new osgGA::Event and osgGA::EventHandler base classes that the old GUIEventAdapter and GUIEventHandler now subclass from.
...
The new osgGA::Event is written to support more generic events than the original GUIEventAdapter which are written for keyboard and mouse events.
2013-10-25 14:54:15 +00:00
Robert Osfield
2a9ed125b8
Fixed warning
2013-10-24 20:22:13 +00:00
Robert Osfield
49625a1baf
From Andreas Henne, "in my application I use the TrackballDragger, the ScaleAxisDragger and the TranslateAxisDragger. Unfortunately these draggers are very thin and they do not provide methods to change their visual appearance. Another problem that I noticed is that lighting on the cones and boxes of the TranslateAxisDragger and ScaleAxisDragger is incorrect when the draggers are scaled due to not normalized normals. This small patch adresses these problems, providing methods to make the draggers thicker. I have attached a zip archive containing the corresponding files and also a modified osgManipulator example that makes use of the modifications. I don't want to retain any copyright."
2013-10-18 07:31:22 +00:00
Robert Osfield
7de6a0c9e2
From Stephan Huber, build fix
2013-10-17 14:02:15 +00:00
Robert Osfield
e8b5272b02
From Stephan Huber, "attached you’ll find a bunch of fixes + enhancements for iOS and OS X based on current trunk. I incorporated + tested the submission from Colin Cochran, so his submission is not needed anymore.
...
* fixed a bug with multi-touch and touch-id-generation on iOS and OS X. (will fix a bug reported by Colin Cochran, without ditching the existing logic)
* removed unnecessary warning-flagss when generating xcode-projects via cmake, will enable the usage of OSG_AGGRESSIVE_WARNING_FLAGS
* added support for 10.9 (OS X)
* new cmake-variable: IPHONE_VERSION_MIN, this will set the deployment-target (previously hard-coded) If you set the IPHONE_VERSION_MIN to something like 7.0 osg gets compiled also for 64bit (amd64)
* cmake defaults now to the clang compiler if IPHONE_VERSION_MIN > 4.2
* cmake now sets some xcode-settings so the compiler uses the c++98-standard (clang defaults to c++11, w/o this I got a lot of linking errors)
* removed include-dir for avfoundation-plugin as not needed on OSX/IOS.
* enhanced the ios-example, will now show multitouch-information on a hud (similar to the osgmultitouch-example), and more importantly, will compile + link out of the box
* small enhancements for the osc-device-plugin (send only one msg for MOVE/DRAG, even if multiple msgs/event is enabled)
* better memory-handling for the zeroconf-plugin
* fixed a possible bug in the rest-http-plugin when receiving mouse-events.
* incorporated a fix from Colin Cochran "forwarded touch events are not transformed into the GL UIView“
"
2013-10-07 10:05:09 +00:00
Robert Osfield
79e2d1309f
Added support for Lua 5.2 and osg::Object creation from within Lua scripts.
2013-10-04 16:30:25 +00:00
Robert Osfield
ff925f1d86
Added support for getting Vec* and Matrix objects from Lua stack and assigning them as OSG object properties.
2013-09-27 13:04:04 +00:00
Robert Osfield
43cb1b3a41
Initial cut of setting and getting osg::Object properties within Lua scripts
2013-09-26 17:27:49 +00:00
Robert Osfield
6d8f40d13a
Added support for passing parameters in and out of scripts.
...
Implemented support for osg::ValueObject in LuaScriptEngine.
2013-09-24 15:17:42 +00:00
Robert Osfield
796314c339
Changed NodeVisitor so that is subclasses from osg::Object rather than osg::Referenced to enable it to be used with serialization and scripting
2013-09-24 15:08:23 +00:00
Robert Osfield
351f98b10d
Added test for osgGA::GUIEventAdapter
2013-09-23 14:10:36 +00:00
Robert Osfield
8f3ee7c649
Added initial cut of white and black lists
2013-09-20 10:44:24 +00:00
Robert Osfield
6e3f893a0e
Added type maps to help with querrying supported type names
2013-09-20 10:04:50 +00:00
Robert Osfield
250d9f2ed7
Introduce osgDB::PropetyInterface class that provided a generic interface for get/setting properties on scene graph objects, utilizing the osgDB serializers to do
...
the actual interface query and set/gets.
2013-09-19 16:19:32 +00:00
Robert Osfield
80456598e0
From Wang Rui, "Some developers report that the osgviewerMFC example is broken in 3.2, in which depth test is not enabled by default so all models loaded look awkward. I submit this patch to make it work again. I haven't gone deep to check why previous example goes wrong in newer version but I believe the problem was because the newly created camera object missed some important global statesets before set as the main camera."
2013-09-09 12:37:52 +00:00
Robert Osfield
61ccd56d25
From Laurens Voerman, "two minor fixes, both in a CMakeList.txt file,
...
1> osgmultiplemovies example does not use SDL so needs no link to SDL
2> Added header files to "Plugins osg" project, so visual studio can find the source of
OSG_WARN << "AsciiInputIterator::readProperty(): Unmatched property "
"
2013-09-09 12:33:18 +00:00
Robert Osfield
7050c59cae
Initial cut of Audio/Volume/Movie/Image presentation objects
2013-09-06 09:35:56 +00:00
Robert Osfield
9201cf8d00
Moved the property test from the model to presentation to test out the property inheritance scheme
2013-09-04 17:27:26 +00:00
Robert Osfield
856ec46467
Added PrintProperties visitor
2013-09-04 16:25:18 +00:00
Robert Osfield
ccf7bbdb50
Added PrintPropertiesAction to osgPresentation
2013-09-04 15:39:17 +00:00
Robert Osfield
9f5e131203
Added Action class NodeVisitor that supports osgPresentation nodes.
2013-09-04 10:33:11 +00:00
Robert Osfield
3c106e4dd7
Added test for osgPresentatation::Group::getSupportedProperties()
2013-09-03 15:50:28 +00:00
Robert Osfield
7c78101621
Added IO test for new osgPresentation nodes
2013-09-02 08:29:09 +00:00
Robert Osfield
fcde15e136
Added test for serializers and fixed serializers
2013-08-22 07:49:22 +00:00
Robert Osfield
bd7ec9c5f7
Added initial cut of basic scripting support, introducing an osg::Script object to wrap up the individual scripts, osg::ScriptCallback for assigning a Script as node callback and an osg::ScriptEngine base class that plugins implement to provided support for specific scripting languages.
...
Provided are lua, python and V8 (for javascript) plugins that just open up enough of a link to the respective libs to run a script, there is no scene graph <-> script communication in current implementation.
2013-08-09 16:51:06 +00:00
Robert Osfield
835ee7aa8e
Added osgpresentation example as a test bed for new osgPresentation object model.
...
First cut of example test bed is to test how easy it is to build against Lua, V8 and Python for purposes of running embedded scripts.
2013-08-07 17:08:38 +00:00
Robert Osfield
a1bda7d39e
Removed #if 0 #endif block
2013-07-19 10:11:42 +00:00
Robert Osfield
e7b86099d1
Fixed problem with the osgviewerQt code override the default View::Camera without setting it's default state on it's StateSet like View does by default.
2013-07-19 09:43:54 +00:00
Robert Osfield
592c580721
Replaced deprecated osg::Geometry::set*Binding() usage.
2013-06-27 09:59:33 +00:00
Robert Osfield
4b9aa1fd24
Replaced deprecated osg::Geometry::set*Binding() usage.
2013-06-27 09:54:12 +00:00
Robert Osfield
1793466442
With assistance from Sukender, moved the depreacted osg::Geometry vertex indices and AttributeBinding definitions out into a separated namespace/class so to use
...
deprecated features you should now use deprecated_osg::Geometry in place of osg::Geometry.
2013-06-25 16:10:24 +00:00
Robert Osfield
ceb97fe230
From Christian Buchner, "Here is a strongly overhauled version of the original osgoit ("order independent transparency") by Mathias Fröhlich. I called this version myosgoit. It looks very nice, just build and run it!
...
This version adds:
- an encapsulation of the entire Depth Peeling procedure into a class (not currently a scene graph node) for easier integration in other projects.
- compositing with opaque (solid) geometry is possible and the opaque model is only rendered once. This needs to performs some depth buffer blitting between FBOs.
- mix and match with GLSL shaders in the transparent objects is possible, as demonstrated with a 3D heat map intersecting an opaque truck model.
Some Drawbacks:
- the display framebuffer does not receive any depth information from the compositing camera. This could be fixed by compositing with a GLSL shader and writing to FragDepth."
From Robert Osfield, ported the code to work under Linux and without the automatic ref_ptr to C* conversion.
2013-06-25 11:13:50 +00:00
Robert Osfield
15fea448d8
Added new osg::Array::Binding parameter to osg::Geometry::set*Array(osg::Array* array, osg::Array::Binding binding=osg::Array::BIND_UNDEFINED) methods to make it easier for the user
...
to set the binding without the need to call the deprecated osg::Geometry::set*Binding(osg::Geometry::AttributeBinding)
2013-06-21 09:43:15 +00:00
Robert Osfield
d82c62a03b
Removed spaces at ends of lines
2013-06-21 09:40:43 +00:00
Robert Osfield
2ab3a1e316
Removed svn:executable property.
2013-06-19 17:28:28 +00:00
Robert Osfield
df075ef9bb
Cleaned up usage of BIND_PER_PRIMITIVE where possible.
2013-06-19 16:24:59 +00:00
Robert Osfield
744960bbf2
Build fixes for new deprecated osg::Geometry functions
2013-06-19 10:56:31 +00:00
Robert Osfield
297a8a221b
Added #define OSG_USE_DEPRECATED_GEOMETRY_METHODS usage into code to allow code to compile enen when CMake configuration has set the #define to off in include/osg/Config.
2013-06-18 19:09:33 +00:00
Robert Osfield
7d40c7258f
Clean up up osg::Geometry, removing long deprecated support for array indices and BIND_PER_PRIMITIVE binding that forced OpenGL slow paths. osg::Geometry is now smaller and only supports OpenGL fasts paths.
...
New methods osg::Geometry::containsDeprecatedData() and osg::Geometry::fixDeprecatedData() provide a means for converting geometries that still use the array indices and BIND_PER_PRIMITIVE across to complient
versions.
Cleaned up the rest of the OSG where use of array indices and BIND_PER_PRIMITIVE were accessed or used.
2013-06-18 11:18:28 +00:00
Robert Osfield
1a7f2fcb3e
Introduced new osg::PatchParameter StateAttribute class to wrap up glPatchParameter associated state.
...
Note, osg::Program::setParameter(GL_PATCH_VERTICES,num); is nolonger support and should be replaced by using the new PatchParameter class.
2013-06-11 10:52:37 +00:00
Robert Osfield
4623c251bb
Fixed indentation
2013-06-11 10:49:57 +00:00
Robert Osfield
bdfd18dc03
From Kristofer Tingdahl, with additions from Riccardo Corsi and Robert Milharcic, support for Qt5 build
2013-06-10 14:34:25 +00:00
Robert Osfield
a6e57026b2
From Mathias Froehlich, "attached is a change to osgsharedarray to move completely to the fast geometry
...
path. Also the arrays are moved back to static storage since this is the data
that is actually referenced in draw. So the change moving this onto the stack
that happend somewhere before broke this."
2013-06-07 10:52:29 +00:00
Robert Osfield
a70318fbd5
Removed now redundent osggeodemo
2013-06-04 14:43:19 +00:00
Robert Osfield
bab251fc59
Cleaned up BIND_PER_PRIMITIVE and array indice usage
2013-06-04 10:06:19 +00:00
Robert Osfield
caa3a06c70
Introduced GeometryNew which is a cleaned up version of Geometry that removes support for array indices.
...
GeometryNew is only temporary and will be renamed to Geometry on the completion of refactoring work and feedback from community.
Ported osggeometry across to use GeometryNew.
2013-06-04 09:32:59 +00:00
Robert Osfield
4cca5c1d1c
Removed deprecated usage of osg::Geometry indices and BIND_PER_PRIMITIVE
2013-06-04 09:29:37 +00:00
Robert Osfield
47f574429a
From Marcin Prus and Robert Osfield, moved the key parts of the .dds plugins computeRowWidthInBytes implementation into the osg::Image::computeImageSizeInBytes(..) to
...
address bugs in the computation of image size.
2013-05-28 14:14:45 +00:00
Robert Osfield
02e4aef5cb
From Martin Naylor, "I am receiving 1 build error whilst building the SVN, its in osgforest as follows:
...
error C2065: 'GL_RGBA32F' : undeclared identifier
Shoudlnt that be GL_RGBA32F_ARB as defined in texture header?
Attached is the easy fix :)."
2013-05-27 08:13:23 +00:00
Robert Osfield
2923c8014a
From Jordi Torres, "We must use JNI_FALSE instead of false in JNI code. Otherwise the examples will not compile. This patch should be applied to osgAndroidExampleGLES1/jni and osgAndroidExampleGLES2/jni. the osgNativeLib.cpp is the same. "
2013-05-24 17:06:08 +00:00
Robert Osfield
5de095cb1d
From Pawel Ksiezopolski, Added example of using osg::TextureBuffer + GLSL to render forest.
2013-05-23 15:55:22 +00:00
Robert Osfield
455ebbc5f1
Refactored the support for stereo and keystone RTT setup so that it can be applied to an existing Camera.
2013-05-20 19:24:34 +00:00
Robert Osfield
6cb26321a9
Reverted back to changes before experiements with ViewConfig
2013-05-16 14:07:35 +00:00
Robert Osfield
3b6c2b636a
Renamed osgViewer::Config osgViewer::ViewConfig and moved it's declaration into include/osgViewer.
2013-05-16 10:11:06 +00:00
Robert Osfield
e3ed763c15
Added WoWVxDisplay view config
2013-05-16 09:08:27 +00:00
Robert Osfield
625821a91a
Created a dedicated include/osgViewer/config and src/osgViewer/config directories to place all the Config classes.
2013-05-15 16:15:38 +00:00
Robert Osfield
4e34cadee2
Added to Viewer::realize() automatic setup using Keystone when available and enabled, and when no other window setup has been selected.
2013-05-13 09:18:37 +00:00
Robert Osfield
9402efe38e
Added DisplaySettings::KeystoneHint flag that can be set via --keystone-on and --keystone-off command line parameters, and the OSG_KEYSTONE env var
2013-05-10 17:59:07 +00:00
Robert Osfield
5dd07e4d1c
Added keystone file handling
2013-05-10 16:06:10 +00:00
Robert Osfield
9eb5465ff5
Added --keystone <filename> command line support into DisplaySettings, and added OSG_KEYSTONE_FILES env var support into osg::DisplaySettings.
2013-05-10 11:56:09 +00:00
Robert Osfield
9c1c34d765
Moved Keystone support from osgkeystone example into osgViewer::View
2013-05-10 10:00:38 +00:00
Robert Osfield
e545627571
Moved Keystone class into osgViewer library.
2013-05-09 15:18:14 +00:00
Robert Osfield
046c3fca7a
Cleaned up event handler and namespaces in prep for integrating keystone functionality into osgViewer
2013-05-07 14:43:36 +00:00
Robert Osfield
8810d27f7c
Added keystone support for left eye, right eye and quad buffer stereo
2013-05-07 13:34:47 +00:00
Robert Osfield
9bb4ed08e1
Added keystone setup to vertical split stereo suport and cleaned up the horizontal split stereo code
2013-05-07 11:13:50 +00:00
Robert Osfield
668d351765
Introduced new scheme for handling mouse events with osgViewer. The new scheme enables robust event handling even when using distortion correction render to texture Cameras.
2013-05-03 19:26:27 +00:00
Robert Osfield
a2615388db
Refactored Keystone setup as a step toward integrating Keystone correction with stereo
2013-04-18 17:02:57 +00:00
Robert Osfield
adea6c9329
Implemented stereo support into osgkeystone as a testbed for moving stereo support from SceneView into osgViewer
2013-04-18 09:47:28 +00:00
Robert Osfield
65f23ba9af
Implemented initial cut of anaglyphic stereo
2013-04-17 11:04:12 +00:00
Robert Osfield
bc288d23dc
Added support for enable/disabling the keystone editing using the Ctrl-g key to toggle the UI and grid on/off.
2013-04-12 13:01:51 +00:00
Robert Osfield
efbf05cd59
Moved keystone event handler onto the keystone distortion Camera.
2013-04-12 09:05:11 +00:00
Robert Osfield
835a80ae90
Refactoed the grid rendering so that it's now implemented as part of the distortion mesh pass, leaving the main scene graph alone.
2013-04-12 08:52:21 +00:00
Robert Osfield
f79d89e0ce
Add support for a finer grained mesh on the distortion mesh for higher quality results.
2013-04-11 17:12:32 +00:00
Robert Osfield
7ff4be954b
Moved the keystone geometry computation into a Keystone::compute3DPositions(..) method
2013-04-11 16:07:49 +00:00
Robert Osfield
830d21471b
Removed old experimental keystone code to clean up the example
2013-04-10 16:36:49 +00:00
Robert Osfield
18d14065a5
Changed the way that the keystone geometry is calculated.
2013-03-28 10:46:24 +00:00
Robert Osfield
3cccecb79d
Added keypad control of corner points
2013-03-27 16:29:01 +00:00
Robert Osfield
b1c342c027
Introduced shearing of the image
2013-03-26 16:47:52 +00:00
Robert Osfield
a5cea75d47
Improved the setup of the keystone distortion correction mesh.
2013-03-26 11:00:05 +00:00
Robert Osfield
6c723df2d6
Added keystone grid to aid editing
2013-03-21 11:35:21 +00:00
Robert Osfield
bc3cff2406
Added arrow key support. Added support for using ctrl and shift keys to modulate how senstive the mouse and key movement is when modifying the keystone parameters.
2013-03-20 14:03:28 +00:00
Robert Osfield
7aad7dfd78
Improve corner point tracking/keystone computation
2013-03-19 16:43:27 +00:00
Robert Osfield
1dba64ac6c
Added event handle for interactive setting of keystone variables
2013-03-19 12:44:03 +00:00
Robert Osfield
890ecb6abb
Experiments with modifying the projection matrix to provide keystoning.
2013-03-15 17:35:43 +00:00