Compare commits
27 Commits
OpenSceneG
...
OpenSceneG
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7f2eaa4339 | ||
|
|
789d435abe | ||
|
|
6b8db67c91 | ||
|
|
2975f9c20a | ||
|
|
ebc855cf50 | ||
|
|
c9547497cc | ||
|
|
75d32b3af6 | ||
|
|
a844a278ab | ||
|
|
94dcfb4ec2 | ||
|
|
8528449dff | ||
|
|
8d7fd88d5f | ||
|
|
28dd1cf8a8 | ||
|
|
14de2266ba | ||
|
|
cc02695822 | ||
|
|
2c442c9e9a | ||
|
|
ca44b9cbce | ||
|
|
0483912e32 | ||
|
|
21b5109089 | ||
|
|
549e20fbe7 | ||
|
|
b4b7a13063 | ||
|
|
8b58890975 | ||
|
|
871521cfea | ||
|
|
f19018a03d | ||
|
|
2709a5e946 | ||
|
|
52d5d80508 | ||
|
|
86e465d5d8 | ||
|
|
50ed5ebd1c |
@@ -1,6 +1,6 @@
|
|||||||
OpenSceneGraph Library 3.2.0
|
OpenSceneGraph Library 3.2.0
|
||||||
|
|
||||||
510 Contributors:
|
511 Contributors:
|
||||||
|
|
||||||
Firstname Surname
|
Firstname Surname
|
||||||
-----------------
|
-----------------
|
||||||
@@ -70,11 +70,11 @@ Adrian Egli
|
|||||||
Ruben Lopez
|
Ruben Lopez
|
||||||
Randall Hopper
|
Randall Hopper
|
||||||
Jan Ciger
|
Jan Ciger
|
||||||
|
Torben Dannhauer
|
||||||
Glenn Waldron
|
Glenn Waldron
|
||||||
Gideon May
|
Gideon May
|
||||||
Don Tidrow
|
Don Tidrow
|
||||||
Aurelien Albert
|
Aurelien Albert
|
||||||
Torben Dannhauer
|
|
||||||
Stephane Lamoliatte
|
Stephane Lamoliatte
|
||||||
Romano Jos<6F> Magacho da Silva
|
Romano Jos<6F> Magacho da Silva
|
||||||
Michael Gronager
|
Michael Gronager
|
||||||
@@ -84,10 +84,10 @@ David Spilling
|
|||||||
Daniel Sj<53>lie
|
Daniel Sj<53>lie
|
||||||
Bryan Thrall
|
Bryan Thrall
|
||||||
Fabien Lavignotte
|
Fabien Lavignotte
|
||||||
|
Andreas Ekstrand
|
||||||
Mike Connell
|
Mike Connell
|
||||||
Melchior Franz
|
Melchior Franz
|
||||||
Johannes Baeuerle
|
Johannes Baeuerle
|
||||||
Andreas Ekstrand
|
|
||||||
Riccardo Corsi
|
Riccardo Corsi
|
||||||
Rafa Gaitan
|
Rafa Gaitan
|
||||||
Neil Hughes
|
Neil Hughes
|
||||||
@@ -294,6 +294,7 @@ Daniel Trstenjak
|
|||||||
Craig Bosma
|
Craig Bosma
|
||||||
Claus Scheiblauer
|
Claus Scheiblauer
|
||||||
Christophe Loustaunau
|
Christophe Loustaunau
|
||||||
|
Christian Ruzicka
|
||||||
Brad Anderegg
|
Brad Anderegg
|
||||||
Aric Aumann
|
Aric Aumann
|
||||||
Andrew Sampson
|
Andrew Sampson
|
||||||
@@ -340,6 +341,7 @@ Ross Anderson
|
|||||||
Ronny Krueger
|
Ronny Krueger
|
||||||
Ronald van Maarseveen
|
Ronald van Maarseveen
|
||||||
Romain Charbit
|
Romain Charbit
|
||||||
|
Rocco Martino
|
||||||
Robert Swain
|
Robert Swain
|
||||||
Rob Smith
|
Rob Smith
|
||||||
Rob Radtke
|
Rob Radtke
|
||||||
@@ -481,7 +483,6 @@ Clay Fowler
|
|||||||
Chuck Sembroski
|
Chuck Sembroski
|
||||||
Christopher Blaesius
|
Christopher Blaesius
|
||||||
Christophe Herreman
|
Christophe Herreman
|
||||||
Christian Ruzicka
|
|
||||||
Christian Noon
|
Christian Noon
|
||||||
Christian Kaser
|
Christian Kaser
|
||||||
Christian Ehrlicher
|
Christian Ehrlicher
|
||||||
|
|||||||
@@ -49,11 +49,11 @@ PROJECT(OpenSceneGraph)
|
|||||||
SET(OPENSCENEGRAPH_MAJOR_VERSION 3)
|
SET(OPENSCENEGRAPH_MAJOR_VERSION 3)
|
||||||
SET(OPENSCENEGRAPH_MINOR_VERSION 2)
|
SET(OPENSCENEGRAPH_MINOR_VERSION 2)
|
||||||
SET(OPENSCENEGRAPH_PATCH_VERSION 0)
|
SET(OPENSCENEGRAPH_PATCH_VERSION 0)
|
||||||
SET(OPENSCENEGRAPH_SOVERSION 99)
|
SET(OPENSCENEGRAPH_SOVERSION 100)
|
||||||
|
|
||||||
# set to 0 when not a release candidate, non zero means that any generated
|
# set to 0 when not a release candidate, non zero means that any generated
|
||||||
# svn tags will be treated as release candidates of given number
|
# svn tags will be treated as release candidates of given number
|
||||||
SET(OPENSCENEGRAPH_RELEASE_CANDIDATE 1)
|
SET(OPENSCENEGRAPH_RELEASE_CANDIDATE 0)
|
||||||
|
|
||||||
SET(OPENSCENEGRAPH_VERSION ${OPENSCENEGRAPH_MAJOR_VERSION}.${OPENSCENEGRAPH_MINOR_VERSION}.${OPENSCENEGRAPH_PATCH_VERSION})
|
SET(OPENSCENEGRAPH_VERSION ${OPENSCENEGRAPH_MAJOR_VERSION}.${OPENSCENEGRAPH_MINOR_VERSION}.${OPENSCENEGRAPH_PATCH_VERSION})
|
||||||
|
|
||||||
@@ -174,8 +174,8 @@ ENDIF()
|
|||||||
OPTION(OSG_MAINTAINER "Enable OpenSceneGraph maintainer build methods, such as making svn branches, tags, updating ChangeLog." OFF)
|
OPTION(OSG_MAINTAINER "Enable OpenSceneGraph maintainer build methods, such as making svn branches, tags, updating ChangeLog." OFF)
|
||||||
IF (OSG_MAINTAINER)
|
IF (OSG_MAINTAINER)
|
||||||
|
|
||||||
SET(OPENSCENEGRAPH_SVN "trunk")
|
#SET(OPENSCENEGRAPH_SVN "trunk")
|
||||||
#SET(OPENSCENEGRAPH_SVN "branches")
|
SET(OPENSCENEGRAPH_SVN "branches")
|
||||||
SET(OPENSCENEGRAPH_BRANCH OpenSceneGraph-${OPENSCENEGRAPH_MAJOR_VERSION}.${OPENSCENEGRAPH_MINOR_VERSION})
|
SET(OPENSCENEGRAPH_BRANCH OpenSceneGraph-${OPENSCENEGRAPH_MAJOR_VERSION}.${OPENSCENEGRAPH_MINOR_VERSION})
|
||||||
|
|
||||||
#
|
#
|
||||||
@@ -535,7 +535,9 @@ ELSE()
|
|||||||
FIND_PACKAGE(GtkGl)
|
FIND_PACKAGE(GtkGl)
|
||||||
FIND_PACKAGE(DirectInput)
|
FIND_PACKAGE(DirectInput)
|
||||||
FIND_PACKAGE(NVTT)
|
FIND_PACKAGE(NVTT)
|
||||||
FIND_PACKAGE(Asio)
|
IF (NOT WIN32)
|
||||||
|
FIND_PACKAGE(Asio)
|
||||||
|
ENDIF()
|
||||||
FIND_PACKAGE(ZeroConf)
|
FIND_PACKAGE(ZeroConf)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ ENDMACRO(FIND_DEPENDENCY DEPNAME INCLUDEFILE LIBRARY_NAMES_BASE SEARCHPATHLIST D
|
|||||||
|
|
||||||
|
|
||||||
################################################################################################
|
################################################################################################
|
||||||
# this Macro is tailored to Mike dependencies
|
# this Macro is tailored to Mike and Torbens dependencies
|
||||||
################################################################################################
|
################################################################################################
|
||||||
|
|
||||||
MACRO(SEARCH_3RDPARTY OSG_3RDPARTY_BIN)
|
MACRO(SEARCH_3RDPARTY OSG_3RDPARTY_BIN)
|
||||||
@@ -86,7 +86,7 @@ MACRO(SEARCH_3RDPARTY OSG_3RDPARTY_BIN)
|
|||||||
MARK_AS_ADVANCED(PNG_PNG_INCLUDE_DIR)
|
MARK_AS_ADVANCED(PNG_PNG_INCLUDE_DIR)
|
||||||
ENDIF(PNG_FOUND)
|
ENDIF(PNG_FOUND)
|
||||||
ENDIF(ZLIB_FOUND)
|
ENDIF(ZLIB_FOUND)
|
||||||
FIND_DEPENDENCY(LIBXML2 libxml "libxml2" ${OSG_3RDPARTY_BIN} "D" "")
|
FIND_DEPENDENCY(LIBXML2 libxml2 "libxml2" ${OSG_3RDPARTY_BIN} "D" "")
|
||||||
IF(LIBXML2_FOUND)
|
IF(LIBXML2_FOUND)
|
||||||
# The CMAKE find libxml module uses LIBXML2_LIBRARIES -> fill it.... kind of a hack
|
# The CMAKE find libxml module uses LIBXML2_LIBRARIES -> fill it.... kind of a hack
|
||||||
SET(LIBXML2_LIBRARIES ${LIBXML2_LIBRARY} CACHE FILEPATH "" FORCE)
|
SET(LIBXML2_LIBRARIES ${LIBXML2_LIBRARY} CACHE FILEPATH "" FORCE)
|
||||||
|
|||||||
@@ -28,6 +28,10 @@ IF(APPLE)
|
|||||||
SET(COLLADA_BUILDNAME "mac")
|
SET(COLLADA_BUILDNAME "mac")
|
||||||
ELSEIF(MINGW)
|
ELSEIF(MINGW)
|
||||||
SET(COLLADA_BUILDNAME "mingw")
|
SET(COLLADA_BUILDNAME "mingw")
|
||||||
|
ELSEIF(MSVC12)
|
||||||
|
SET(COLLADA_BUILDNAME "vc12")
|
||||||
|
ELSEIF(MSVC11)
|
||||||
|
SET(COLLADA_BUILDNAME "vc11")
|
||||||
ELSEIF(MSVC10)
|
ELSEIF(MSVC10)
|
||||||
SET(COLLADA_BUILDNAME "vc10")
|
SET(COLLADA_BUILDNAME "vc10")
|
||||||
ELSEIF(MSVC90)
|
ELSEIF(MSVC90)
|
||||||
@@ -238,7 +242,7 @@ FIND_LIBRARY(COLLADA_STATIC_LIBRARY_DEBUG
|
|||||||
)
|
)
|
||||||
|
|
||||||
FIND_LIBRARY(COLLADA_BOOST_FILESYSTEM_LIBRARY
|
FIND_LIBRARY(COLLADA_BOOST_FILESYSTEM_LIBRARY
|
||||||
NAMES libboost_filesystem boost_filesystem boost_filesystem-mt libboost_filesystem-vc90-mt libboost_filesystem-vc100-mt
|
NAMES libboost_filesystem boost_filesystem boost_filesystem-mt libboost_filesystem-${COLLADA_BUILDNAME}0-mt libboost_filesystem-${COLLADA_BUILDNAME}0-mt-1_54
|
||||||
PATHS
|
PATHS
|
||||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
||||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
||||||
@@ -246,7 +250,7 @@ FIND_LIBRARY(COLLADA_STATIC_LIBRARY_DEBUG
|
|||||||
)
|
)
|
||||||
|
|
||||||
FIND_LIBRARY(COLLADA_BOOST_FILESYSTEM_LIBRARY_DEBUG
|
FIND_LIBRARY(COLLADA_BOOST_FILESYSTEM_LIBRARY_DEBUG
|
||||||
NAMES libboost_filesystem-d boost_filesystem-d boost_filesystem-mt-d libboost_filesystem-vc90-mt-gd libboost_filesystem-vc100-mt-gd
|
NAMES libboost_filesystem-d boost_filesystem-d boost_filesystem-mt-d libboost_filesystem-${COLLADA_BUILDNAME}0-mt-gd libboost_filesystem-${COLLADA_BUILDNAME}0-mt-gd-1_54
|
||||||
PATHS
|
PATHS
|
||||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
||||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
||||||
@@ -254,7 +258,7 @@ FIND_LIBRARY(COLLADA_STATIC_LIBRARY_DEBUG
|
|||||||
)
|
)
|
||||||
|
|
||||||
FIND_LIBRARY(COLLADA_BOOST_SYSTEM_LIBRARY
|
FIND_LIBRARY(COLLADA_BOOST_SYSTEM_LIBRARY
|
||||||
NAMES libboost_system boost_system boost_system-mt libboost_system-vc90-mt libboost_system-vc100-mt
|
NAMES libboost_system boost_system boost_system-mt libboost_system-${COLLADA_BUILDNAME}0-mt libboost_system-${COLLADA_BUILDNAME}0-mt-1_54
|
||||||
PATHS
|
PATHS
|
||||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
||||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
||||||
@@ -262,7 +266,7 @@ FIND_LIBRARY(COLLADA_STATIC_LIBRARY_DEBUG
|
|||||||
)
|
)
|
||||||
|
|
||||||
FIND_LIBRARY(COLLADA_BOOST_SYSTEM_LIBRARY_DEBUG
|
FIND_LIBRARY(COLLADA_BOOST_SYSTEM_LIBRARY_DEBUG
|
||||||
NAMES libboost_system-d boost_system-d boost_system-mt-d libboost_system-vc90-mt-gd libboost_system-vc100-mt-gd
|
NAMES libboost_system-d boost_system-d boost_system-mt-d libboost_system-${COLLADA_BUILDNAME}0-mt-gd libboost_system-${COLLADA_BUILDNAME}0-mt-gd-1_54
|
||||||
PATHS
|
PATHS
|
||||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
||||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ FIND_PATH(NVTT_INCLUDE_DIR nvtt/nvtt.h
|
|||||||
PATH_SUFFIXES include
|
PATH_SUFFIXES include
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# NVTT
|
||||||
FIND_LIBRARY(NVTT_LIBRARY
|
FIND_LIBRARY(NVTT_LIBRARY
|
||||||
NAMES nvtt
|
NAMES nvtt
|
||||||
PATHS
|
PATHS
|
||||||
@@ -25,6 +26,17 @@ FIND_LIBRARY(NVTT_LIBRARY
|
|||||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||||
)
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(NVTT_LIBRARY_DEBUG
|
||||||
|
NAMES nvtt_d
|
||||||
|
PATHS
|
||||||
|
/usr/local
|
||||||
|
/usr
|
||||||
|
$ENV{NVTT_DIR}
|
||||||
|
${3rdPartyRoot}
|
||||||
|
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||||
|
)
|
||||||
|
|
||||||
|
# NVIMAGE
|
||||||
FIND_LIBRARY(NVIMAGE_LIBRARY
|
FIND_LIBRARY(NVIMAGE_LIBRARY
|
||||||
NAMES nvimage
|
NAMES nvimage
|
||||||
PATHS
|
PATHS
|
||||||
@@ -35,6 +47,17 @@ FIND_LIBRARY(NVIMAGE_LIBRARY
|
|||||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||||
)
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(NVIMAGE_LIBRARY_DEBUG
|
||||||
|
NAMES nvimage_d
|
||||||
|
PATHS
|
||||||
|
/usr/local
|
||||||
|
/usr
|
||||||
|
$ENV{NVTT_DIR}
|
||||||
|
${3rdPartyRoot}
|
||||||
|
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||||
|
)
|
||||||
|
|
||||||
|
# NVMATH
|
||||||
FIND_LIBRARY(NVMATH_LIBRARY
|
FIND_LIBRARY(NVMATH_LIBRARY
|
||||||
NAMES nvmath
|
NAMES nvmath
|
||||||
PATHS
|
PATHS
|
||||||
@@ -45,6 +68,17 @@ FIND_LIBRARY(NVMATH_LIBRARY
|
|||||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||||
)
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(NVMATH_LIBRARY_DEBUG
|
||||||
|
NAMES nvmath_d
|
||||||
|
PATHS
|
||||||
|
/usr/local
|
||||||
|
/usr
|
||||||
|
$ENV{NVTT_DIR}
|
||||||
|
${3rdPartyRoot}
|
||||||
|
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||||
|
)
|
||||||
|
|
||||||
|
# NVCORE
|
||||||
FIND_LIBRARY(NVCORE_LIBRARY
|
FIND_LIBRARY(NVCORE_LIBRARY
|
||||||
NAMES nvcore
|
NAMES nvcore
|
||||||
PATHS
|
PATHS
|
||||||
@@ -54,6 +88,18 @@ FIND_LIBRARY(NVCORE_LIBRARY
|
|||||||
${3rdPartyRoot}
|
${3rdPartyRoot}
|
||||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||||
)
|
)
|
||||||
|
FIND_LIBRARY(NVCORE_LIBRARY_DEBUG
|
||||||
|
NAMES nvcore_d
|
||||||
|
PATHS
|
||||||
|
/usr/local
|
||||||
|
/usr
|
||||||
|
$ENV{NVTT_DIR}
|
||||||
|
${3rdPartyRoot}
|
||||||
|
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
SET(NVTT_FOUND "NO")
|
SET(NVTT_FOUND "NO")
|
||||||
IF(NVTT_LIBRARY AND NVTT_INCLUDE_DIR)
|
IF(NVTT_LIBRARY AND NVTT_INCLUDE_DIR)
|
||||||
|
|||||||
51
NEWS.txt
51
NEWS.txt
@@ -1,6 +1,57 @@
|
|||||||
OSG News
|
OSG News
|
||||||
========
|
========
|
||||||
|
|
||||||
|
= !OpenSceneGraph 3.2 release improves support iOS and Android, supports a range of new OpenGL features much more.
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
=== Open-source development delivers industry-leading features and performance ===
|
||||||
|
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.
|
||||||
|
|
||||||
|
=== Updates include: ===
|
||||||
|
|
||||||
|
* Improvements to OpenGL ES 1.1 and 2.0 support, including platform specific extensions
|
||||||
|
* Revamped QTKit, imageio and quicktime plugins for improved support of iOS and OSX
|
||||||
|
* New avfoundation plugin for reading video on iOS and OSX
|
||||||
|
* New ktx plugin for reading Khronos Texture Files
|
||||||
|
* New OpenGL extensions support including compute shaders, tessellation shaders, integer array formats and associated Vec* classes, primitive restart
|
||||||
|
* Improvements to osgManipulator NodeKit that introduce new manipulators and improve flexibility and customizability
|
||||||
|
* Updates to osgQt to support Qt5 and provide better support for Qt4
|
||||||
|
* New osgGA::Device base class for recieving from and sending events to both real and virtual devices in a generic, extensible way
|
||||||
|
* New ZeroConf, RestHTTP and OSC plugins to enable remote control of applications such as controlling desktop systems from tablets and phones
|
||||||
|
* Improvements to osgVolume NodeKit and DICOM plugin for better medical visualization
|
||||||
|
* New TrackVis .trk track files plugin for the visualization of brain scans.
|
||||||
|
* Improvements to osgPresentation NodeKit and Present3D application to make it possible to create non-linear interactive, remote controlled shows
|
||||||
|
* New osgViewer::ViewConfig class with range of implementations to make it easier to configure viewers for advanced rendering support
|
||||||
|
* Support for GPU based Keystone correction with onscreen editing making it possible to use low cost projectors in off axis setups
|
||||||
|
* Clean up of osg::Geometry class removing all deprecated slow path API's resulting in a smaller and faster Geometry class
|
||||||
|
* Addition of deprecated_osg namespace and deprecated_osg::Geometry class that provides deprecated BIND_PER_PRIMITIVE and array indices APIs to add with porting
|
||||||
|
* New ViewDependentShadowMap shadow rendering class that combines enables robust combining of parallel split and perspective shadow map techniques
|
||||||
|
* Updates of plugins to work with the latest FBX, ffmpeg, NVTT, OpenVRML, LibVNCServer releases
|
||||||
|
|
||||||
|
|
||||||
|
=== Downloads and Licensing ===
|
||||||
|
!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 [http://www.openscenegraph.org/index.php/download-section/stable-releases Downloads] section of the openscenegraph.org website.
|
||||||
|
|
||||||
|
!OpenSceneGraph is released under the [http://www.openscenegraph.org/projects/osg/wiki/Legal 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.
|
||||||
|
|
||||||
|
=== Professional support and services ===
|
||||||
|
!OpenSceneGraph project is backed up with professional services by [http://www.openscenegraph.com OpenSceneGraph Professional Services], based in Scotland, and [http://www.skew-matrix.com Skew-Matrix] and [http://www.alphapixel.com AlphaPixel] both based in the USA, and a range of [wiki:Community/Contractors Contractors] from around the world. Services available include:
|
||||||
|
|
||||||
|
* Confidential Professional Support
|
||||||
|
* Bespoke development
|
||||||
|
* Consultancy
|
||||||
|
* Training
|
||||||
|
|
||||||
|
=== Community support and contributions ===
|
||||||
|
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.
|
||||||
|
|
||||||
|
The !OpenSceneGraph project owes a great deal to the community for its development and support, in particular we wish to thank the [http://www.openscenegraph.org/index.php/about/http:/www.openscenegraph.org/index.php/about/142-contributors-to-openscenegraph-3-2-0 511 individuals] from around the world that have directly contributed to the development and refinement of the !OpenSceneGraph code base.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
= !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.
|
= !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.
|
||||||
|
|
||||||
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.
|
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.
|
||||||
|
|||||||
16
README.txt
16
README.txt
@@ -4,15 +4,11 @@ For up-to-date information on the project, in-depth details on how to
|
|||||||
compile and run libraries and examples, see the documentation on the
|
compile and run libraries and examples, see the documentation on the
|
||||||
OpenSceneGraph website:
|
OpenSceneGraph website:
|
||||||
|
|
||||||
http://www.openscenegraph.org
|
http://www.openscenegraph.org/index.php/documentation
|
||||||
|
|
||||||
For support subscribe to our public mailing list:
|
For support subscribe to our public mailing list or forum, details at:
|
||||||
|
|
||||||
http://www.openscenegraph.org/projects/osg/wiki/MailingLists
|
http://www.openscenegraph.org/index.php/support
|
||||||
|
|
||||||
or forum:
|
|
||||||
|
|
||||||
http://forum.openscenegraph.org/
|
|
||||||
|
|
||||||
For the impatient, we've included quick build instructions below, these
|
For the impatient, we've included quick build instructions below, these
|
||||||
are are broken down is three parts:
|
are are broken down is three parts:
|
||||||
@@ -27,7 +23,7 @@ more indepth instructions.
|
|||||||
|
|
||||||
Robert Osfield.
|
Robert Osfield.
|
||||||
Project Lead.
|
Project Lead.
|
||||||
26th April 2013.
|
24th July 2013.
|
||||||
|
|
||||||
--
|
--
|
||||||
|
|
||||||
@@ -74,7 +70,7 @@ Under Windows use the GUI tool CMakeSetup to build your VisualStudio
|
|||||||
files. The following page on our wiki dedicated to the CMake build
|
files. The following page on our wiki dedicated to the CMake build
|
||||||
system should help guide you through the process:
|
system should help guide you through the process:
|
||||||
|
|
||||||
http://www.openscenegraph.org/projects/osg/wiki/Support/PlatformSpecifics/VisualStudio
|
http://www.openscenegraph.org/index.php/documentation/platform-specifics/windows
|
||||||
|
|
||||||
Under OSX you can either use the CMake build system above, or use the
|
Under OSX you can either use the CMake build system above, or use the
|
||||||
Xcode projects that you will find in the OpenSceneGraph/Xcode
|
Xcode projects that you will find in the OpenSceneGraph/Xcode
|
||||||
@@ -83,7 +79,7 @@ directory. See release notes on OSX CMake build below.
|
|||||||
For further details on compilation, installation and platform-specific
|
For further details on compilation, installation and platform-specific
|
||||||
information read "Getting Started" guide:
|
information read "Getting Started" guide:
|
||||||
|
|
||||||
http://www.openscenegraph.org/projects/osg/wiki/Support/GettingStarted
|
http://www.openscenegraph.org/index.php/documentation/10-getting-started
|
||||||
|
|
||||||
|
|
||||||
Section 2. Release notes on OSX build, by Eric Sokolowsky, August 5, 2008
|
Section 2. Release notes on OSX build, by Eric Sokolowsky, August 5, 2008
|
||||||
|
|||||||
@@ -18,10 +18,10 @@
|
|||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
|
||||||
#define OPENTHREADS_MAJOR_VERSION 2
|
#define OPENTHREADS_MAJOR_VERSION 3
|
||||||
#define OPENTHREADS_MINOR_VERSION 6
|
#define OPENTHREADS_MINOR_VERSION 2
|
||||||
#define OPENTHREADS_PATCH_VERSION 0
|
#define OPENTHREADS_PATCH_VERSION 0
|
||||||
#define OPENTHREADS_SOVERSION 12
|
#define OPENTHREADS_SOVERSION 13
|
||||||
|
|
||||||
/** OpenThreadsGetVersion() returns the library version number.
|
/** OpenThreadsGetVersion() returns the library version number.
|
||||||
* Numbering convention : OpenThreads-1.0 will return 1.0 from OpenThreadsGetVersion. */
|
* Numbering convention : OpenThreads-1.0 will return 1.0 from OpenThreadsGetVersion. */
|
||||||
|
|||||||
@@ -400,7 +400,7 @@ namespace osg
|
|||||||
FrameBufferObject();
|
FrameBufferObject();
|
||||||
FrameBufferObject(const FrameBufferObject& copy, const CopyOp& copyop = CopyOp::SHALLOW_COPY);
|
FrameBufferObject(const FrameBufferObject& copy, const CopyOp& copyop = CopyOp::SHALLOW_COPY);
|
||||||
|
|
||||||
META_StateAttribute(osg, FrameBufferObject, (StateAttribute::Type)0x101010/*FrameBufferObject*/);
|
META_StateAttribute(osg, FrameBufferObject, FRAME_BUFFER_OBJECT);
|
||||||
|
|
||||||
inline const AttachmentMap& getAttachmentMap() const;
|
inline const AttachmentMap& getAttachmentMap() const;
|
||||||
|
|
||||||
|
|||||||
@@ -530,6 +530,8 @@ class OSG_EXPORT GL2Extensions : public osg::Referenced
|
|||||||
void setShaderAtomicCounterSupported(bool flag) { _isShaderAtomicCountersSupported = flag; }
|
void setShaderAtomicCounterSupported(bool flag) { _isShaderAtomicCountersSupported = flag; }
|
||||||
bool isShaderAtomicCounterSupported() const {return _isShaderAtomicCountersSupported; }
|
bool isShaderAtomicCounterSupported() const {return _isShaderAtomicCountersSupported; }
|
||||||
|
|
||||||
|
bool isDrawBuffersSupported() const { return _glDrawBuffers!=0; }
|
||||||
|
|
||||||
/** Function to call to get the extension of a specified context.
|
/** Function to call to get the extension of a specified context.
|
||||||
* If the Exentsion object for that context has not yet been created then
|
* If the Exentsion object for that context has not yet been created then
|
||||||
* and the 'createIfNotInitalized' flag been set to false then returns NULL.
|
* and the 'createIfNotInitalized' flag been set to false then returns NULL.
|
||||||
|
|||||||
@@ -193,7 +193,9 @@ class OSG_EXPORT StateAttribute : public Object
|
|||||||
|
|
||||||
ATOMICCOUNTERBUFFERBINDING,
|
ATOMICCOUNTERBUFFERBINDING,
|
||||||
|
|
||||||
PATCH_PARAMETER
|
PATCH_PARAMETER,
|
||||||
|
|
||||||
|
FRAME_BUFFER_OBJECT
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Simple pairing between an attribute type and the member within that attribute type group.*/
|
/** Simple pairing between an attribute type and the member within that attribute type group.*/
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ extern "C" {
|
|||||||
#define OPENSCENEGRAPH_MAJOR_VERSION 3
|
#define OPENSCENEGRAPH_MAJOR_VERSION 3
|
||||||
#define OPENSCENEGRAPH_MINOR_VERSION 2
|
#define OPENSCENEGRAPH_MINOR_VERSION 2
|
||||||
#define OPENSCENEGRAPH_PATCH_VERSION 0
|
#define OPENSCENEGRAPH_PATCH_VERSION 0
|
||||||
#define OPENSCENEGRAPH_SOVERSION 99
|
#define OPENSCENEGRAPH_SOVERSION 100
|
||||||
|
|
||||||
/* Convenience macro that can be used to decide whether a feature is present or not i.e.
|
/* Convenience macro that can be used to decide whether a feature is present or not i.e.
|
||||||
* #if OSG_MIN_VERSION_REQUIRED(2,9,5)
|
* #if OSG_MIN_VERSION_REQUIRED(2,9,5)
|
||||||
|
|||||||
@@ -314,6 +314,11 @@ class OSGWIDGET_EXPORT EventInterface
|
|||||||
return _eventMask;
|
return _eventMask;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
typedef std::list<osg::ref_ptr<Callback> > CallbackList;
|
||||||
|
|
||||||
|
inline CallbackList& getCallbacks() { return _callbacks; }
|
||||||
|
inline const CallbackList& getCallbacks() const { return _callbacks; }
|
||||||
|
|
||||||
void addCallback(Callback* cb) {
|
void addCallback(Callback* cb) {
|
||||||
_callbacks.push_back(cb);
|
_callbacks.push_back(cb);
|
||||||
}
|
}
|
||||||
@@ -400,7 +405,6 @@ class OSGWIDGET_EXPORT EventInterface
|
|||||||
bool canKeyUp () const { return (_eventMask & EVENT_KEY_UP) != 0; }
|
bool canKeyUp () const { return (_eventMask & EVENT_KEY_UP) != 0; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
typedef std::list<osg::ref_ptr<Callback> > CallbackList;
|
|
||||||
|
|
||||||
unsigned int _eventMask;
|
unsigned int _eventMask;
|
||||||
CallbackList _callbacks;
|
CallbackList _callbacks;
|
||||||
|
|||||||
@@ -2,10 +2,10 @@
|
|||||||
# what to do with it.
|
# what to do with it.
|
||||||
ADD_DEFINITIONS(-DOPENTHREADS_EXPORTS)
|
ADD_DEFINITIONS(-DOPENTHREADS_EXPORTS)
|
||||||
|
|
||||||
SET(OPENTHREADS_MAJOR_VERSION 2)
|
SET(OPENTHREADS_MAJOR_VERSION 3)
|
||||||
SET(OPENTHREADS_MINOR_VERSION 6)
|
SET(OPENTHREADS_MINOR_VERSION 2)
|
||||||
SET(OPENTHREADS_PATCH_VERSION 0)
|
SET(OPENTHREADS_PATCH_VERSION 0)
|
||||||
SET(OPENTHREADS_SOVERSION 12)
|
SET(OPENTHREADS_SOVERSION 13)
|
||||||
|
|
||||||
SET(OPENTHREADS_VERSION ${OPENTHREADS_MAJOR_VERSION}.${OPENTHREADS_MINOR_VERSION}.${OPENTHREADS_PATCH_VERSION})
|
SET(OPENTHREADS_VERSION ${OPENTHREADS_MAJOR_VERSION}.${OPENTHREADS_MINOR_VERSION}.${OPENTHREADS_PATCH_VERSION})
|
||||||
|
|
||||||
|
|||||||
@@ -197,7 +197,7 @@ void DisplaySettings::setDefaults()
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
_compileContextsHint = false;
|
_compileContextsHint = false;
|
||||||
_serializeDrawDispatch = true;
|
_serializeDrawDispatch = false;
|
||||||
_useSceneViewForStereoHint = true;
|
_useSceneViewForStereoHint = true;
|
||||||
|
|
||||||
_numDatabaseThreadsHint = 2;
|
_numDatabaseThreadsHint = 2;
|
||||||
|
|||||||
@@ -916,10 +916,14 @@ void FrameBufferObject::apply(State &state, BindTarget target) const
|
|||||||
if (_drawBuffers.size() > 0)
|
if (_drawBuffers.size() > 0)
|
||||||
{
|
{
|
||||||
GL2Extensions *gl2e = GL2Extensions::Get(state.getContextID(), true );
|
GL2Extensions *gl2e = GL2Extensions::Get(state.getContextID(), true );
|
||||||
if (gl2e)
|
if (gl2e && gl2e->isDrawBuffersSupported())
|
||||||
{
|
{
|
||||||
gl2e->glDrawBuffers(_drawBuffers.size(), &(_drawBuffers[0]));
|
gl2e->glDrawBuffers(_drawBuffers.size(), &(_drawBuffers[0]));
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
OSG_WARN <<"Warning: FrameBufferObject: could not set draw buffers, glDrawBuffers is not supported!" << std::endl;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dirtyAttachmentList)
|
if (dirtyAttachmentList)
|
||||||
@@ -939,7 +943,7 @@ void FrameBufferObject::apply(State &state, BindTarget target) const
|
|||||||
{
|
{
|
||||||
OSG_WARN <<
|
OSG_WARN <<
|
||||||
"Warning: FrameBufferObject: could not attach PACKED_DEPTH_STENCIL_BUFFER, "
|
"Warning: FrameBufferObject: could not attach PACKED_DEPTH_STENCIL_BUFFER, "
|
||||||
"EXT_packed_depth_stencil is not supported !" << std::endl;
|
"EXT_packed_depth_stencil is not supported!" << std::endl;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|||||||
@@ -161,12 +161,14 @@ void Geometry::setTexCoordArray(unsigned int index,Array* array, osg::Array::Bin
|
|||||||
if (_texCoordList.size()<=index)
|
if (_texCoordList.size()<=index)
|
||||||
_texCoordList.resize(index+1);
|
_texCoordList.resize(index+1);
|
||||||
|
|
||||||
if (array && binding!=osg::Array::BIND_UNDEFINED) array->setBinding(binding);
|
if (array)
|
||||||
|
{
|
||||||
|
if (binding!=osg::Array::BIND_UNDEFINED) array->setBinding(binding);
|
||||||
|
else array->setBinding(osg::Array::BIND_PER_VERTEX);
|
||||||
|
}
|
||||||
|
|
||||||
_texCoordList[index] = array;
|
_texCoordList[index] = array;
|
||||||
|
|
||||||
// do we set to array BIND_PER_VERTEX?
|
|
||||||
|
|
||||||
dirtyDisplayList();
|
dirtyDisplayList();
|
||||||
|
|
||||||
if (_useVertexBufferObjects && array)
|
if (_useVertexBufferObjects && array)
|
||||||
|
|||||||
@@ -475,7 +475,11 @@ bool Node::containsOccluderNodes() const
|
|||||||
|
|
||||||
void Node::setDescriptions(const DescriptionList& descriptions)
|
void Node::setDescriptions(const DescriptionList& descriptions)
|
||||||
{
|
{
|
||||||
getOrCreateUserDataContainer()->setDescriptions(descriptions);
|
// only assign a description list (and associated UseDataContainer) if we need to.
|
||||||
|
if (!descriptions.empty() || getUserDataContainer())
|
||||||
|
{
|
||||||
|
getOrCreateUserDataContainer()->setDescriptions(descriptions);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Node::DescriptionList& Node::getDescriptions()
|
Node::DescriptionList& Node::getDescriptions()
|
||||||
|
|||||||
@@ -515,8 +515,8 @@ const Program::UniformBlockMap& Program::getUniformBlocks(unsigned contextID) co
|
|||||||
|
|
||||||
Program::PerContextProgram::PerContextProgram(const Program* program, unsigned int contextID, GLuint programHandle ) :
|
Program::PerContextProgram::PerContextProgram(const Program* program, unsigned int contextID, GLuint programHandle ) :
|
||||||
osg::Referenced(),
|
osg::Referenced(),
|
||||||
_loadedBinary(false),
|
|
||||||
_glProgramHandle(programHandle),
|
_glProgramHandle(programHandle),
|
||||||
|
_loadedBinary(false),
|
||||||
_contextID( contextID ),
|
_contextID( contextID ),
|
||||||
_ownsProgramHandle(false)
|
_ownsProgramHandle(false)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -582,7 +582,7 @@ bool daeWriter::processGeometry( osg::Geometry *geom, domGeometry *geo, const st
|
|||||||
{
|
{
|
||||||
sName = name + "-positions";
|
sName = name + "-positions";
|
||||||
unsigned int elementSize = verts.getDAESize();
|
unsigned int elementSize = verts.getDAESize();
|
||||||
unsigned int numElements = verts.valArray->getNumElements();
|
unsigned int numElements = verts.valArray ? verts.valArray->getNumElements() : 0;
|
||||||
pos = createSource( mesh, sName, elementSize );
|
pos = createSource( mesh, sName, elementSize );
|
||||||
pos->getFloat_array()->setCount( numElements * elementSize );
|
pos->getFloat_array()->setCount( numElements * elementSize );
|
||||||
pos->getTechnique_common()->getAccessor()->setCount( numElements );
|
pos->getTechnique_common()->getAccessor()->setCount( numElements );
|
||||||
@@ -608,7 +608,7 @@ bool daeWriter::processGeometry( osg::Geometry *geom, domGeometry *geo, const st
|
|||||||
{
|
{
|
||||||
sName = name + "-normals";
|
sName = name + "-normals";
|
||||||
unsigned int elementSize = normals.getDAESize();
|
unsigned int elementSize = normals.getDAESize();
|
||||||
unsigned int numElements = normals.valArray->getNumElements();
|
unsigned int numElements = normals.valArray ? normals.valArray->getNumElements() : 0;
|
||||||
norm = createSource( mesh, sName, elementSize );
|
norm = createSource( mesh, sName, elementSize );
|
||||||
norm->getFloat_array()->setCount( numElements * elementSize );
|
norm->getFloat_array()->setCount( numElements * elementSize );
|
||||||
norm->getTechnique_common()->getAccessor()->setCount( numElements );
|
norm->getTechnique_common()->getAccessor()->setCount( numElements );
|
||||||
@@ -631,7 +631,7 @@ bool daeWriter::processGeometry( osg::Geometry *geom, domGeometry *geo, const st
|
|||||||
{
|
{
|
||||||
sName = name + "-colors";
|
sName = name + "-colors";
|
||||||
unsigned int elementSize = colors.getDAESize();
|
unsigned int elementSize = colors.getDAESize();
|
||||||
unsigned int numElements = colors.valArray->getNumElements();
|
unsigned int numElements = colors.valArray ? colors.valArray->getNumElements() : 0;
|
||||||
color = createSource( mesh, sName, elementSize, true );
|
color = createSource( mesh, sName, elementSize, true );
|
||||||
color->getFloat_array()->setCount( numElements * elementSize );
|
color->getFloat_array()->setCount( numElements * elementSize );
|
||||||
color->getTechnique_common()->getAccessor()->setCount( numElements );
|
color->getTechnique_common()->getAccessor()->setCount( numElements );
|
||||||
@@ -660,7 +660,7 @@ bool daeWriter::processGeometry( osg::Geometry *geom, domGeometry *geo, const st
|
|||||||
sName = name + "-texcoord_" + intstr.str();
|
sName = name + "-texcoord_" + intstr.str();
|
||||||
|
|
||||||
unsigned int elementSize = texcoords[ti].getDAESize();
|
unsigned int elementSize = texcoords[ti].getDAESize();
|
||||||
unsigned int numElements = texcoords[ti].valArray->getNumElements();
|
unsigned int numElements = texcoords[ti].valArray ? texcoords[ti].valArray->getNumElements() : 0;
|
||||||
domSource *t = createSource( mesh, sName, elementSize, false, true );
|
domSource *t = createSource( mesh, sName, elementSize, false, true );
|
||||||
t->getFloat_array()->setCount( numElements * elementSize );
|
t->getFloat_array()->setCount( numElements * elementSize );
|
||||||
t->getTechnique_common()->getAccessor()->setCount( numElements );
|
t->getTechnique_common()->getAccessor()->setCount( numElements );
|
||||||
@@ -684,7 +684,7 @@ bool daeWriter::processGeometry( osg::Geometry *geom, domGeometry *geo, const st
|
|||||||
sName = name + "-vertexAttribute_" + intstr.str();
|
sName = name + "-vertexAttribute_" + intstr.str();
|
||||||
|
|
||||||
unsigned int elementSize = vertexAttributes[ti].getDAESize();
|
unsigned int elementSize = vertexAttributes[ti].getDAESize();
|
||||||
unsigned int numElements = vertexAttributes[ti].valArray->getNumElements();
|
unsigned int numElements = vertexAttributes[ti].valArray ? vertexAttributes[ti].valArray->getNumElements() : 0;
|
||||||
domSource *t = createSource( mesh, sName, elementSize, false, true ); // Sukender: should we *REALLY* call createSource(... false, true)? (I mean with such flags)
|
domSource *t = createSource( mesh, sName, elementSize, false, true ); // Sukender: should we *REALLY* call createSource(... false, true)? (I mean with such flags)
|
||||||
t->getFloat_array()->setCount( numElements * elementSize );
|
t->getFloat_array()->setCount( numElements * elementSize );
|
||||||
t->getTechnique_common()->getAccessor()->setCount( numElements );
|
t->getTechnique_common()->getAccessor()->setCount( numElements );
|
||||||
|
|||||||
@@ -9,6 +9,11 @@
|
|||||||
//#include <iostream>
|
//#include <iostream>
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE
|
||||||
|
#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
namespace osgFFmpeg {
|
namespace osgFFmpeg {
|
||||||
|
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ SET(TARGET_H
|
|||||||
OscSendingDevice.hpp
|
OscSendingDevice.hpp
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32 AND NOT ANDROID)
|
||||||
SET(TARGET_SRC
|
SET(TARGET_SRC
|
||||||
${TARGET_SRC}
|
${TARGET_SRC}
|
||||||
ip/win32/NetworkingUtils.cpp
|
ip/win32/NetworkingUtils.cpp
|
||||||
|
|||||||
@@ -87,13 +87,12 @@ XBaseParser::XBaseParser(const std::string fileName):
|
|||||||
if (fileName.empty() == false)
|
if (fileName.empty() == false)
|
||||||
{
|
{
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
if( (fd = open( fileName.c_str(), O_RDONLY | O_BINARY )) <= 0 )
|
if( (fd = open( fileName.c_str(), O_RDONLY | O_BINARY )) < 0 )
|
||||||
#else
|
#else
|
||||||
if( (fd = ::open( fileName.c_str(), O_RDONLY )) <= 0 )
|
if( (fd = ::open( fileName.c_str(), O_RDONLY )) < 0 )
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
perror( fileName.c_str() );
|
perror( fileName.c_str() );
|
||||||
if (fd) close( fd );
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -587,6 +587,7 @@ typedef std::map<void*, unsigned int> TouchPointsIdMapping;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[super touchesBegan:touches withEvent:event];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
|
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
|
||||||
@@ -607,9 +608,9 @@ typedef std::map<void*, unsigned int> TouchPointsIdMapping;
|
|||||||
} else {
|
} else {
|
||||||
osg_event->addTouchPoint(touch_id, [self convertTouchPhase: [touch phase]], pixelPos.x(), pixelPos.y());
|
osg_event->addTouchPoint(touch_id, [self convertTouchPhase: [touch phase]], pixelPos.x(), pixelPos.y());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[super touchesMoved:touches withEvent:event];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
|
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
|
||||||
@@ -630,8 +631,9 @@ typedef std::map<void*, unsigned int> TouchPointsIdMapping;
|
|||||||
} else {
|
} else {
|
||||||
osg_event->addTouchPoint(touch_id, [self convertTouchPhase: [touch phase]], pixelPos.x(), pixelPos.y(), [touch tapCount]);
|
osg_event->addTouchPoint(touch_id, [self convertTouchPhase: [touch phase]], pixelPos.x(), pixelPos.y(), [touch tapCount]);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[super touchesEnded:touches withEvent:event];
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void) touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event
|
-(void) touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event
|
||||||
|
|||||||
Reference in New Issue
Block a user