Skip to content

Commit e884df5

Browse files
committed
Pulled in latest changes from 3.6 branch
1 parent 159f0fd commit e884df5

File tree

9 files changed

+112
-103
lines changed

9 files changed

+112
-103
lines changed

AUTHORS.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ OpenSceneGraph Library 3.7.0
55
Firstname Surname
66
-----------------
77
Robert Osfield
8+
Don Burns
89
Stephan Huber
910
Paul Martz
1011
Laurens Voerman
@@ -176,7 +177,6 @@ John Ivar
176177
Gustav Haapalahti
177178
Erik den Dekker
178179
Emmanuel Roche
179-
Don Burns
180180
Domenico Mangieri
181181
Daniel Larimer
182182
Colin Dunlop

NEWS.txt

Lines changed: 32 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2,55 +2,60 @@ OSG News
22
========
33

44
OpenSceneGraph 3.6 release
5-
PERTHSHIRE, Scotland - 24th March 2018 - OpenSceneGraph Professional Services announces the release of OpenSceneGraph 3.6, the industry's leading open-source scene graph technology, designed to accelerate application development and improve 3D graphics performance. OpenSceneGraph 3.6 written entirely in Standard C++ and built upon OpenGL, offers developers working in the visual simulation, game development, virtual reality, scientific visualization and modeling markets - a real-time visualization tool which eclipses commercial scene graph toolkits in functionality, stability and performance. OpenSceneGraph 3.6 runs on all Microsoft Windows platforms, Apple OS/X, IOS, GNU/Linux, Android, IRIX, Solaris, HP-UX, AIX and FreeBSD operating systems.
5+
PERTHSHIRE, Scotland - 7th April 2018 - OpenSceneGraph Professional Services announces the release of OpenSceneGraph 3.6.0, the industry's leading open-source scene graph technology, designed to accelerate application development and improve 3D graphics performance. The OpenSceneGraph is written entirely in Standard C++ and built upon OpenGL (1.2 to 4.6) and OpenGL ES (1.0 to 3.0), and offers developers working in the visual simulation, game development, virtual reality, scientific visualization and modeling markets. OpenSceneGraph 3.6 runs on all Microsoft Windows platforms, Apple OS/X, iOS, GNU/Linux, Android, Solaris, HP-UX, AIX and FreeBSD operating systems.
6+
67
Updates include:
78

8-
* CoverityScan testing introduced, fixes bring defect density to 0.0.
9-
* Support for Codedoc automated documentation
10-
* Support for Travis automated build system
11-
* OpenThreads::Affinity & DatabasePager::setProcessorAffinity
12-
* Improvements to osgAnimation
13-
* Improvements to gles plugin to provide better Sketchfab support
14-
* NodeVisit ValueMap for storing values that can be stored and accessed across frames
9+
* OpenThreads::Affinity introduced to enable setting of processor affinity on viewer and database threads
10+
* osgText rewritten to improve visual quality, add signed distance field support and full GLES2/3 and GL3/4 support
11+
* Added VertexArrayObject support, enable full OpenGL Core Profile support under OSX.
12+
* Added OpenCASCADE plugin
13+
* Added STEP (.stp) plugin
1514
* Improvements to FBX and COLLADA loaders
16-
* osg::MultiDrawArrays
17-
* osgText rewritten to improve visual quality, add signed distance field support and full GLES2/3 and GL3/4 supprt
18-
* osgderred example that illustrates how to implement deferred rendering
19-
* Vertex Array Object support
20-
* ShadpeDrawable implemented as an osg::Geometry to improve performance and flexibility
21-
* New OpenCASCADE plugin
22-
* New STEP (.stp) plugin
23-
* KdTree support added for PolytopeIntersector, and ability to work with points, lines and polygons
24-
* osgQt has been moved out to it's own dedicated
15+
* Improvements to gles plugin to provide better Sketchfab support
2516
* Added osgemscripten example
26-
* Moved ComputeDispatch control out of osg::Program into a dedicated osg::ComputeDispatch class to improve flexibility of compute shaders
27-
* CMake build support for iOS bitcode builds
17+
* Improvements to osgAnimation
18+
* NodeVisitor ValueMap for storing values that can be stored and accessed across frames, such as update, event and cull traversals
19+
* ShapeDrawable rewritten as an osg::Geometry to improve performance and flexibility
20+
* Added osg::MultiDrawArrays support
21+
* Added osgdeferred example that illustrates how to implement deferred rendering
2822
* Added MultiDrawIndirect support
23+
* Moved glDispatchCompute control out of osg::Program into a dedicated osg::DispatchCompute class to improve control of compute shaders
24+
* KdTree support added for PolytopeIntersector, and ability to work with points, lines and polygons
25+
* osgQt has been moved out to it's own dedicated osgQt github repository
26+
* CMake build support for iOS bitcode builds
27+
* CoverityScan testing introduced, fixes bring defect density to 0.0 per 1,0000 lines of code!
28+
* Support for Codedoc automated documentation
29+
* Support for Travis automated build system
30+
2931

3032
Downloads and Licensing:
3133

32-
OpenSceneGraph is open-source, so full source code is provided, and can be copied, modified and used free of charge for commercial and non-commercial use. Access to the source allows end users greater flexibility in how they develop, debug and deploy their applications. They gain productivity and freedom by being able to leverage the tool chain in accordance with their own release cycles. Downloads of binaries and source can be found in the Downloads section of the openscenegraph.org website.
34+
OpenSceneGraph is open-source, so full source code is provided, and can be copied, modified and used free of charge for commercial and non-commercial use. Access to the source allows end users greater flexibility in how they develop, debug and deploy their applications. They gain productivity and freedom by being able to leverage the tool chain in accordance with their own release cycles. Downloads of binaries and source can be found at http://www.openscenegraph.org/index.php/download-section/stable-releases and at our github repository https://github.com/openscenegraph/OpenSceneGraph/.
3335

34-
OpenSceneGraph is released under the OpenSceneGraph Public License, which is based on the Lesser GNU Public License (LGPL), permitting the software to be used free of charge across the full spectrum of commercial and open-source applications. Furthermore, it allows both static and dynamic linking of the OpenSceneGraph libraries without restricting the licensing of the user's software.
35-
Professional support and services
36+
OpenSceneGraph is released under the OpenSceneGraph Public License, which is based on the Lesser GNU Public License (LGPL), permitting the software to be used free of charge across the full spectrum of commercial and open-source applications. Furthermore, it allows both static and dynamic linking of the OpenSceneGraph libraries without restricting the licensing of the user's software. Further details http://www.openscenegraph.org/index.php/about/licensing
3637

37-
OpenSceneGraph project is backed up with professional services by OpenSceneGraph Professional Services, based in Scotland, and a range of Contractors from around the world. Services available include:
38+
39+
Professional support and services:
40+
41+
OpenSceneGraph project is backed up with professional services by OpenSceneGraph Professional Services, based in Scotland, and a range of Contractors from around the world http://www.openscenegraph.org/index.php/support/professional-support. For enquires email [email protected]. Services available include:
3842

3943
Confidential Professional Support
4044
Bespoke development
4145
Consultancy
4246
Training
4347

48+
4449
Community support and contributions:
4550

4651
The diverse and growing community of over 5000 developers is centred around the public osg-users mailing list/forum, where members discuss how best to use OpenSceneGraph, provide mutual support, and coordinate development of new features and bug fixes. Members of this community come from many different countries with backgrounds ranging from some of the world's largest aerospace companies, game companies, and visual simulation specialists to university researchers, students and hobbyists.
4752

48-
The OpenSceneGraph project owes a great deal to the community for its development and support, in particular we wish to thank the 569 individuals from around the world that have directly contributed to the development and refinement of the OpenSceneGraph code base.
53+
The OpenSceneGraph project owes a great deal to the community for its development and support, in particular we wish to thank the 568 individuals from around the world that have directly contributed to the development and refinement of the OpenSceneGraph code base.
4954

5055

5156

5257
OpenSceneGraph 3.4 release introduces shader composition, new osgUI library, displacement mapping, volume rendering, lua scripting support and much more
53-
PERTHSHIRE, Scotland - 12th August 2015 - OpenSceneGraph Professional Services announces the release of OpenSceneGraph 3.4, the industry's leading open-source scene graph technology, designed to accelerate application development and improve 3D graphics performance. OpenSceneGraph 3.4 written entirely in Standard C++ and built upon OpenGL, offers developers working in the visual simulation, game development, virtual reality, scientific visualization and modeling markets - a real-time visualization tool which eclipses commercial scene graph toolkits in functionality, stability and performance. OpenSceneGraph 3.4 runs on all Microsoft Windows platforms, Apple OS/X, IOS, GNU/Linux, Android, IRIX, Solaris, HP-UX, AIX and FreeBSD operating systems.
58+
PERTHSHIRE, Scotland - 12th August 2015 - OpenSceneGraph Professional Services announces the release of OpenSceneGraph 3.4, the industry's leading open-source scene graph technology, designed to accelerate application development and improve 3D graphics performance. OpenSceneGraph 3.4 written entirely in Standard C++ and built upon OpenGL, offers developers working in the visual simulation, game development, virtual reality, scientific visualization and modeling markets - a real-time visualization tool which eclipses commercial scene graph toolkits in functionality, stability and performance. OpenSceneGraph 3.4 runs on all Microsoft Windows platforms, Apple OS/X, iOS, GNU/Linux, Android, IRIX, Solaris, HP-UX, AIX and FreeBSD operating systems.
5459
Updates include:
5560

5661
* New #pragma(tic) composition shader functionality built into the core OSG that provides a easy to use yet flexible scheme for controlling and composing shaders at runtime levering GLSL support for #define and #pragma.
@@ -87,7 +92,7 @@ The OpenSceneGraph project owes a great deal to the community for its developmen
8792

8893
= !OpenSceneGraph 3.2 release improves support iOS and Android, supports a range of new OpenGL features much more.
8994

90-
PERTHSHIRE, Scotland - 24th July 2013 - !OpenSceneGraph Professional Services announces the release of !OpenSceneGraph 3.2, the industry's leading open-source scene graph technology, designed to accelerate application development and improve 3D graphics performance. !OpenSceneGraph 3.2 written entirely in Standard C++ and built upon OpenGL, offers developers working in the visual simulation, game development, virtual reality, scientific visualization and modeling markets - a real-time visualization tool which eclipses commercial scene graph toolkits in functionality, stability and performance. !OpenSceneGraph 3.2 runs on all Microsoft Windows platforms, Apple OS/X, IOS, GNU/Linux, Android, IRIX, Solaris, HP-UX, AIX and FreeBSD operating systems.
95+
PERTHSHIRE, Scotland - 24th July 2013 - !OpenSceneGraph Professional Services announces the release of !OpenSceneGraph 3.2, the industry's leading open-source scene graph technology, designed to accelerate application development and improve 3D graphics performance. !OpenSceneGraph 3.2 written entirely in Standard C++ and built upon OpenGL, offers developers working in the visual simulation, game development, virtual reality, scientific visualization and modeling markets - a real-time visualization tool which eclipses commercial scene graph toolkits in functionality, stability and performance. !OpenSceneGraph 3.2 runs on all Microsoft Windows platforms, Apple OS/X, iOS, GNU/Linux, Android, IRIX, Solaris, HP-UX, AIX and FreeBSD operating systems.
9196

9297
=== Open-source development delivers industry-leading features and performance ===
9398
The !OpenSceneGraph 3.2 release is the culmination of 14 years of work by the open-source community that has grown up around the project. The real-time graphics industry and academia embraced it from the very beginning, deploying it in real-world applications, and actively participating in its development, testing and refinement. The end result is a high-quality library with a feature set relevant to application developers' needs in both the desktop and mobile space.
@@ -138,7 +143,7 @@ The !OpenSceneGraph project owes a great deal to the community for its developme
138143

139144
= !OpenSceneGraph 3.0 release adds support OpenGL ES 1.1, OpenGL ES 2.0, OpenGL 3.x to 4.0, support for Andoid and IOS platforms and much more.
140145

141-
PERTHSHIRE, Scotland - 28th June 2011 - !OpenSceneGraph Professional Services announces the release of !OpenSceneGraph 3.0, the industry's leading open-source scene graph technology, designed to accelerate application development and improve 3D graphics performance. !OpenSceneGraph 3.0 written entirely in Standard C++ and built upon OpenGL, offers developers working in the visual simulation, game development, virtual reality, scientific visualization and modeling markets - a real-time visualization tool which eclipses commercial scene graph toolkits in functionality, stability and performance. !OpenSceneGraph 3.0 runs on all Microsoft Windows platforms, Apple OS/X, IOS, GNU/Linux, Android, IRIX, Solaris, HP-UX, AIX and FreeBSD operating systems.
146+
PERTHSHIRE, Scotland - 28th June 2011 - !OpenSceneGraph Professional Services announces the release of !OpenSceneGraph 3.0, the industry's leading open-source scene graph technology, designed to accelerate application development and improve 3D graphics performance. !OpenSceneGraph 3.0 written entirely in Standard C++ and built upon OpenGL, offers developers working in the visual simulation, game development, virtual reality, scientific visualization and modeling markets - a real-time visualization tool which eclipses commercial scene graph toolkits in functionality, stability and performance. !OpenSceneGraph 3.0 runs on all Microsoft Windows platforms, Apple OS/X, iOS, GNU/Linux, Android, IRIX, Solaris, HP-UX, AIX and FreeBSD operating systems.
142147

143148
=== Open-source development delivers industry-leading features and performance ===
144149
The !OpenSceneGraph 3.0 release is the culmination of 12 years of work by the lead developers and the open-source community that has grown up around the project. The real-time graphics industry and academia embraced it from the very beginning, deploying it in real-world applications, and actively participating in its development, testing and refinement. The end result is a high-quality library with a feature set relevant to application developers' needs.

examples/osgSSBO/osgSSBO.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
#include <osg/StateAttributeCallback>
1111
#include <osg/Texture2D>
1212
#include <osg/Geometry>
13-
#include <osg/ComputeDispatch>
13+
#include <osg/DispatchCompute>
1414
#include <osgDB/ReadFile>
1515
#include <osgGA/StateSetManipulator>
1616
#include <osgViewer/Viewer>
@@ -167,7 +167,7 @@ class ComputeNode : public osg::PositionAttitudeTransform
167167

168168
public:
169169

170-
osg::ref_ptr<osg::ComputeDispatch> _computeDispatch;
170+
osg::ref_ptr<osg::DispatchCompute> _DispatchCompute;
171171
osg::ref_ptr<osg::Program> _computeProgram;
172172
osg::ref_ptr<osg::Shader> _computeShader; //compute and write position data in SSBO
173173

@@ -205,8 +205,8 @@ class ComputeNode : public osg::PositionAttitudeTransform
205205
_vertexShaderSourcePath = "shaders/osgssboVertexShader.vs";
206206
_geometryShaderSourcePath = "shaders/osgssboGeometryShader.gs";
207207
_fragmentShaderSourcePath = "shaders/osgssboFragmentShader.fs";
208-
_computeDispatch=new osg::ComputeDispatch();
209-
addChild(_computeDispatch);
208+
_DispatchCompute=new osg::DispatchCompute();
209+
addChild(_DispatchCompute);
210210
}
211211

212212
};
@@ -625,7 +625,7 @@ void ComputeNode::initComputingSetup()
625625
{
626626

627627
_computeProgram = new osg::Program;
628-
_computeDispatch->setComputeGroups((NUM_ELEMENTS_X / WORK_GROUP_SIZE) <= 1 ? 1 : (NUM_ELEMENTS_X / WORK_GROUP_SIZE), (NUM_ELEMENTS_Y / WORK_GROUP_SIZE) <= 1 ? 1 : (NUM_ELEMENTS_Y / WORK_GROUP_SIZE), 1);
628+
_DispatchCompute->setComputeGroups((NUM_ELEMENTS_X / WORK_GROUP_SIZE) <= 1 ? 1 : (NUM_ELEMENTS_X / WORK_GROUP_SIZE), (NUM_ELEMENTS_Y / WORK_GROUP_SIZE) <= 1 ? 1 : (NUM_ELEMENTS_Y / WORK_GROUP_SIZE), 1);
629629
_computeShader = osgDB::readRefShaderFile(osg::Shader::COMPUTE, _computeShaderSourcePath);
630630
_computeProgram->addShader(_computeShader.get());
631631

examples/osgcomputeshaders/osgcomputeshaders.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222
#include <osg/Texture2D>
2323
#include <osg/BindImageTexture>
24-
#include <osg/ComputeDispatch>
24+
#include <osg/DispatchCompute>
2525
#include <osg/Geode>
2626
#include <osgDB/ReadFile>
2727
#include <osgGA/StateSetManipulator>
@@ -65,7 +65,7 @@ int main( int argc, char** argv )
6565
// Create a node for outputting to the texture.
6666
// It is OK to have just an empty node here, but seems inbuilt uniforms like osg_FrameTime won't work then.
6767
// TODO: maybe we can have a custom drawable which also will implement glMemoryBarrier?
68-
osg::ref_ptr<osg::Node> sourceNode = new osg::ComputeDispatch(512/16, 512/16, 1 );
68+
osg::ref_ptr<osg::Node> sourceNode = new osg::DispatchCompute(512/16, 512/16, 1 );
6969
sourceNode->setDataVariance( osg::Object::DYNAMIC );
7070
sourceNode->getOrCreateStateSet()->setAttributeAndModes( computeProg.get() );
7171
sourceNode->getOrCreateStateSet()->addUniform( new osg::Uniform("targetTex", (int)0) );

include/osg/ComputeDispatch

Lines changed: 0 additions & 55 deletions
This file was deleted.

0 commit comments

Comments
 (0)