Commit Graph

4836 Commits

Author SHA1 Message Date
Robert Osfield
f49e1d32c9 Replaced std::auto_ptr<> usage as it's deprecated in C++11 and will be removed in C++17 2018-05-05 12:28:45 +01:00
Robert Osfield
c078968f66 Added non const version of State::getActiveDisplaySettings() 2018-05-04 10:54:02 +01:00
Robert Osfield
62a9f87f45 Added osg::MakeString class to make it easier to create std::string's using std::ostream style << usage. 2018-05-04 09:31:57 +01:00
Sebastian Messerschmidt
fce55993bc FIX: <osgParticle> removed unimplemented functions from header 2018-04-30 11:16:02 +02:00
Alberto Luaces
490d3a8f21 Small fix for uncaught typo. 2018-04-23 11:03:37 +01:00
Alberto Luaces
02c310982e Fix typos and spelling. 2018-04-23 11:03:37 +01:00
Daniel Emminizer
22d2fae30c Fix includes for MSVC 2015 build. 2018-04-20 13:16:43 -04:00
Robert Osfield
709194c88c Replaced osgUtil::IntersectVisitor usage with osgUtil::InteresectionVisitor 2018-04-20 14:32:34 +01:00
Robert Osfield
7bda8083fb Added osgUtil::optimizeMesh(osg::Node* node) convinience method 2018-04-20 11:48:39 +01:00
Robert Osfield
f95fdd4d4e Fixed the GLBufferObject size computation so that it takes into account padding. 2018-04-19 19:41:51 +01:00
Robert Osfield
38ad6ed3b3 Fixed inline Drawable::draw(..) method 2018-04-16 17:18:49 +01:00
Robert Osfield
7ab1208c65 Renamed osg::ComputeDispatch to osg::DispatchCompute to make sure the nameing between GL and OSG is consistent i.e glDispatchCompute -> osg::DispatchCompute
Updated AUTHORS.txt, NEWS.txt and README.txt for CMakeLists.txt for 3.6.0 release
2018-04-07 17:59:55 +01:00
Robert Osfield
6bfca1582e Refactored the way that margin is applied to the text buounding box to prevent growth of the bounding box each time Text::setPosition() is called. 2018-04-06 20:07:57 +01:00
Daniel Emminizer
3d8cc71601 osgDB: Added missing extern OSGDB_EXPORT. 2018-04-05 10:51:24 -04:00
Robert Osfield
914e60a872 Quietened down debug message output for osgText shader setup and Drawable::createVertexArrayStateImplementation 2018-04-05 14:18:30 +01:00
Robert Osfield
9168b6e5de Fixed threading crash in osgFX that occurred when an osgFX node is added to the scene being rendered in multiple threaded windows. 2018-04-04 15:11:25 +01:00
Frank Bausch
ceed09afea When testing XYZ/ECEF coordinate values that convert to LLA points with latitude = 90.0 or latitude = -90.0, the heights calculated by EllipsoidModel::convertXYZToLatLongHeight have substantial errors. With the provided change, points at the pole are handled more correctly. This has been tested against US NGA GoldData. 2018-04-04 08:51:38 +01:00
Robert Osfield
f9f475d76d Added a ShadowTechniue::setShadowedScene() virtual method to make it possible to implement techniques as fascades to other techniques 2018-04-03 15:30:58 +01:00
Robert Osfield
3450b9fee8 Removed osgShadow::ShadowVolume as it functionality isn't functional 2018-04-03 12:23:18 +01:00
Robert Osfield
f71513cab5 Rewrote the handling of AutoTransform::setAutoScaleToScreen(bool) functionality so that is disabling CullingActive when switched on. 2018-04-02 18:29:39 +01:00
Robert Osfield
f54403284f Changed Layer::get*Value(..) methods to const 2018-03-30 12:47:15 +01:00
Robert Osfield
9526a3c35d Maded TerrainTechnique::setTerrainTile(..), addNeighbour(..), removeNeighbour(..) and containsNeighbour(..) virtual and public to enable implementation of TerrainTechnique that act as a facade to actual TerrainTechnique implementations. 2018-03-29 11:38:53 +01:00
Konstantin S. Matveyev
a846c0160c GraphicsWindowIOS: multithreaded viewer's mode support added; updated for iOS-11 SDK; view rotations fixed; GLES2, GLES3 preprocessors fixed; tested on iPhone4 and upper 2018-03-26 20:40:14 +03:00
OpenSceneGraph git repository
46850214df Merge pull request #502 from Haojia521/OutputStreamUseTargertSoVersion
write binary file with a specific so version
2018-03-23 20:20:43 +00:00
Robert Osfield
1d5ae1362a Fixed member variable names to avoid conflicts with osg::Node 2018-03-23 19:54:01 +00:00
Robert Osfield
4447190dd6 Refactored osgUtil::ShaderGen to use #pragma(tic) shader composition. 2018-03-14 08:22:45 +00:00
Robert Osfield
64341cfb72 Added State::glDrawBuffer/glReadBuffer() method to implement lazy state updating for glDrawBuffer and glReadBuffer 2018-03-06 09:49:02 +00:00
Daniel Emminizer
28544a4e29 Minor typo fix on osg::StateAttribute 2018-03-05 10:26:54 -05:00
Robert Osfield
1b8567e11e Added deprecated comments for ShaderComposer 2018-03-05 14:39:07 +00:00
Robert Osfield
99bcd95756 Replaced GL_TEXTURE_2D_ARRAY_EXT with GL_TEXTURE_2D_ARRAY 2018-02-28 08:50:48 +00:00
OpenSceneGraph git repository
56baa7bf04
Merge pull request #479 from LaurensVoerman/submit_vc14WarnC4800_v2
move Get/SetScalarvalue out of ValueObject and provide specialization…
2018-02-19 10:14:36 +00:00
OpenSceneGraph git repository
c52ae4f99f
Changed the doxygen control characters and clarifications 2018-02-19 08:39:23 +00:00
Hartwig Wiesmann
f01383c02a Addition of comments for ClusterCullingCallback 2018-02-18 08:49:41 +03:00
Hartwig
73a36679df Addition of radius parameter for ClusterCullingCallback's constructor
The radius parameter is already present in ClusterCullingCallback's set method but has been forgotten in the constructor.
2018-02-15 21:10:59 +01:00
Laurens Voerman
b79d680580 move Get/SetScalarvalue out of ValueObject and provide specialization for GetScalarValue<bool> fixing MSVC waring C4800 2018-02-15 14:59:24 +01:00
Laurens Voerman
ec4881da5a bugfix: GetScalarValue returns inverted values for booleans; SetScalarValue needs to be a SetValueVisitor 2018-02-13 17:38:35 +01:00
Robert Osfield
b8e5f22cb7 Added virtual bool Texture::isDirty(contextID) method to help determine whether a GL texture object is likely to be out of date and needs updating 2018-02-13 12:01:57 +00:00
OpenSceneGraph git repository
6d1d1bb000
Revert "BindingTextureImage: a more complex condition for _texture->apply ?" 2018-02-02 09:54:31 +00:00
Julien Valentin
f4663b0e32 add ARB_BufferStorage extensions 2018-01-25 16:22:33 +01:00
OpenSceneGraph git repository
022d1df97d
Merge pull request #454 from mp3butcher/imagebinding
BindingTextureImage: a more complex condition for  _texture->apply ?
2018-01-23 10:26:20 +00:00
OpenSceneGraph git repository
3b2b2d762c
Merge pull request #456 from PissedCapslock/patch-2
Fixing typos in comments
2018-01-23 09:56:26 +00:00
Robin Stevens
dcbaa3e64a
Fixing typos in comments 2018-01-23 10:25:32 +01:00
Robin Stevens
5810d2ba18
Typo in comment 2018-01-23 10:20:49 +01:00
Robert Osfield
18d5a9159f Restructured the system() fallback to be usable for C and C++ 2018-01-21 12:09:49 +00:00
Julien Valentin
0aa8008f0a add a virtual getBufferData to Texture 2018-01-21 01:23:38 +01:00
OpenSceneGraph git repository
6b9235f185
Merge pull request #449 from LaurensVoerman/submit_toLower
fix vc2017 compile warning 'unsigned int' to 'const char'
2018-01-15 16:28:54 +00:00
Robert Osfield
5ad1a652a0 Moved defined into GLDefines header to avoid compile issues under Windows 2018-01-15 16:02:44 +00:00
Laurens Voerman
33f99e9c70 fix vc2017 compile warning 'unsigned int' to 'const char' 2018-01-15 16:42:31 +01:00
Julien Valentin
4c0a861f91 add static helper func in order to generate Samplers of a Samplerless StateSet
+fix ident
2018-01-13 21:25:47 +01:00
Julien Valentin
d2b8468bf4 add MinLOD MaxLOD and LODBias to Texture 2018-01-13 21:16:16 +01:00
Robert Osfield
ae57f3cd46 Added ability to toggle on/off use of C system() function call, using OSG_SYSTEM_SUPPORTED Cmake option 2018-01-12 19:52:31 +00:00
Robert Osfield
a7cc9664c0 Renamed EnvVar header to os_utils in prep for adding more OS related calls to it 2018-01-12 16:48:17 +00:00
Robert Osfield
3e676f67ff Removed inappropriate // 2018-01-06 13:09:16 +00:00
Robert Osfield
230ee49428 Added ValueObject::get/setScaleValue(..) convinient methods 2018-01-06 12:54:14 +00:00
OpenSceneGraph git repository
eca7831281
Merge pull request #424 from mp3butcher/osgSampler
GL3.3 SamplerObject as StateAttribute
2018-01-05 09:43:16 +00:00
OpenSceneGraph git repository
6ef90054bc
Merge pull request #425 from mp3butcher/callbacks
Support for multiple nest Camera DrawCallbacks
2018-01-05 09:18:39 +00:00
OpenSceneGraph git repository
73689caa5f
Had to fix positioning of { and spacing to be consistent with the rest of the OSG 2018-01-04 15:28:45 +00:00
Julien Valentin
0e76dc169e add more Extensions 2018-01-04 04:18:38 +01:00
Julien Valentin
61548dc5a8 add recursivity on Camera Callbacks 2018-01-04 03:59:25 +01:00
Julien Valentin
662bea239c add GLSampler as Texture Property
and a simple example mixing (add) 2 textures
2018-01-03 21:34:10 +01:00
Julien Valentin
c605b24432 remove old BindImageTexture path 2018-01-02 18:29:42 +01:00
Julien Valentin
8a84ee7660 add (untested) BindImageTexture serializer
TOREVIEW : my GLBoolean serializer macro seams hacky
2018-01-02 18:12:52 +01:00
Robert Osfield
eb72f3ed30 Renamed ImageTexture file to BindImageTexture to better fit it's OpenGL implementaton.
Improved the indentation so it's more consistent with the rest of the OSG.
2018-01-01 11:10:55 +00:00
Robert Osfield
1f4ae0425c Merge branch 'imagebinding' of https://github.com/mp3butcher/OpenSceneGraph into mp3butcher-imagebinding 2018-01-01 10:16:10 +00:00
OpenSceneGraph git repository
f0bb9da9c6
Changed the enum value to be consistent with StateAttribute 2018-01-01 10:14:58 +00:00
OpenSceneGraph git repository
e27148240a
Change enum name to be consistent with assciated class name 2018-01-01 10:13:14 +00:00
Robert Osfield
dd1f95d24d Fixed typo 2017-12-31 13:17:23 +00:00
Robert Osfield
94a1a84a59 Fixed handling of reassignment of ArrayDispatch when vertex aliasing is toggled 2017-12-31 12:38:17 +00:00
mp3butcher
2f8a262a0e add flexier Image Unit Binding implementation (allow different IUBs for a Texture) 2017-12-28 19:04:32 +01:00
Robert Osfield
5afd32b2d9 Introduced dedicated VertexArrayStateList class to wrap up the VertexArrayState container with convinience methods to help initialize them.
Using the new VertexArrayStateList class fixed bug associated with setting new setTexCoord() array when a VertexArrayState is already assigned.
2017-12-19 09:57:57 +00:00
Robert Osfield
d2bfde30f0 Deprecated dirtyDisplayLists(), use established dirtyGLObjects() instead 2017-12-18 13:54:08 +00:00
Robert Osfield
d313184cd0 Added fine grained checking for GL errors in the GLObjectVisitor so that the OSG's default pre compile stage provides better feesback on any GL errors. 2017-12-06 09:51:57 +00:00
Björn Blissing
09eefd7973 Added script to identify Windows version
Added script to identify the Windows version used to compile the source.
Currently the windows version for Windows NT is hard coded into the
source. By running this CMake script the _WIN32_WINNT preprocessor
variable gets set to the corresponding windows version.
2017-11-30 12:53:24 +01:00
Robert Osfield
a16702627a Typo fix 2017-11-29 21:20:10 +00:00
Robert Osfield
a6069c3226 Introduced Drawable::CreateVertexArrayStateCallback to enable customization of how VertexArrayState objects.
Added public accessors to the Drawable::VertexArrayStateList.
2017-11-29 14:22:31 +00:00
OpenSceneGraph git repository
021dca0072
Cleaned up code layout 2017-11-29 08:14:44 +00:00
Julien Valentin
739303b3d9 override compile and createVAS in order to do nothing 2017-11-28 20:38:54 +01:00
Julien Valentin
195df4f811 numgroup removed but introduce a reto compatibility bug in Program serializer
hope nobody use it
2017-11-28 17:39:32 +01:00
Julien Valentin
bf1b4ec2bb add ComputeDispatch class
revoke glDispatch in PCProgram::useProgram
update example
2017-11-28 17:30:04 +01:00
Robert Osfield
34336931fa Deprecated the osg::Shader::reaDShaderFile() and osg::Shader::loadShaderSourceFromFile() methods.
Programmers should use osgDB::readRefShaderFile()/readShaderFile() instead.
2017-11-27 18:28:15 +00:00
Robert Osfield
cb2c48d015 Added template addShader() method to make it easier to pass ref_ptr<osg::Shader> 2017-11-27 15:40:21 +00:00
Robert Osfield
13c593ce0e Fixed typo 2017-11-21 13:59:51 +00:00
Robert Osfield
7f97b9f999 Added Text::getCharacterCorners(...) method to help applications that want to find out the positions of characters being rendered. 2017-11-21 13:41:57 +00:00
OpenSceneGraph git repository
8d36049dcd
Merge pull request #382 from openscenegraph/osganimation
Osganimation improvements
2017-11-11 14:43:10 +00:00
OpenSceneGraph git repository
a5f6e4b0c4
Small readability improvements 2017-11-11 12:45:55 +00:00
OpenSceneGraph git repository
ca5ce00783
coding style/readability fixes 2017-11-11 12:29:45 +00:00
Robert Osfield
338b0e2b7b Moved getenv usage across to safer osg::getEnvVar() usage 2017-11-01 17:38:33 +00:00
Robert Osfield
0e7e06349e Added safety check for getenv parsing to prevent overflow attacks via getenv. 2017-11-01 16:43:32 +00:00
Robert Osfield
e59ad87044 Made template function inline to avoid multiple declaration issues 2017-11-01 14:16:54 +00:00
Robert Osfield
51a9c66856 Added OSG_ENVVAR_SUPPORTED cmake control and bool osg::getEnvVar(const char* name, T& value, ...) conviniece funcions to make it easier to implement optinal getenv reading code. 2017-11-01 13:32:47 +00:00
Robert Osfield
c242ad4497 Fixed unititialized memory variables and improved readability by adding spacing where appropriate 2017-10-31 17:55:59 +00:00
Julien Valentin
6e79ce348d reformat with the help of AStyle reformat tool (codeblocks) 2017-10-28 14:46:14 +02:00
Robert Osfield
671847387f Fixed build errors when compiling with OSG_USE_REF_PTR_IMPLICIT_OUTPUT_CONVERSION set to OFF 2017-10-27 14:19:13 +01:00
Robert Osfield
11f9bbf6ea Merge branch 'master' into osganimation 2017-10-27 12:54:10 +01:00
OpenSceneGraph git repository
1126812f8f Merge pull request #372 from openscenegraph/text_improvements
Text improvements, introducing implementation of Signed Distance Function texture generation and new shaders for outlines and shadows replacing old multi-pass approach
2017-10-26 14:26:01 +01:00
Robert Osfield
248805fedd Fixed pre compilation osg::Program state leaking into the main scene graph rendering 2017-10-25 16:13:26 +01:00
Robert Osfield
9c9439ef73 Added DisplaySettings:s/getgTextShaderTechnique() and OSG_TEXT_SHADER_TECHNIQUE env var support to DisplaySettings.
Added using of DisplaySettings:getgTextShaderTechnique() to Text default constructor.
Added better debug output control in Text.cpp
2017-10-24 14:46:13 +01:00
Robert Osfield
1cd0a5fe03 Fixed Glyph::TextureInfo assignment bug 2017-10-24 11:36:00 +01:00
Robert Osfield
55a1764712 Renamed text_sdf.frag to text.frag and removed text_greyscale_frag.
Cleaned up setup of osgText::ShaderTechnique adding a NO_SHADER_TECHNIQUE option.
2017-10-23 16:07:24 +01:00
Robert Osfield
4b295c46d1 Restructed the way that GlyphTexture is set up to better support control of osgText::ShaderTechnique from osgText::Text 2017-10-23 14:50:35 +01:00
Hartwig
41e9cd3157 Replacement of commas with semicolons 2017-10-22 15:04:33 +02:00
Robert Osfield
817b6601d2 Added Text::s/getShaderTechnique() 2017-10-21 10:08:41 +01:00
Robert Osfield
97aeb16551 Moved osgText::GlyphTechnique::Features enum to osgText::ShaderTechinque enum to make it's roll clearer 2017-10-20 17:03:25 +01:00
Robert Osfield
6b75439ae4 Merge branch 'master' into text_improvements 2017-10-20 14:14:14 +01:00
Robert Osfield
068f47d91f Build fixes with ref_ptr<> autoconversion disabled 2017-10-19 11:57:53 +01:00
Robert Osfield
879b54f6e9 Fixed GLX EGL build 2017-10-16 10:47:47 +01:00
Robert Osfield
639ced08fc Removed inappropriate tabs&spaces 2017-10-16 10:38:33 +01:00
Robert Osfield
2303d6afc4 Cleaned up support for GL3 build 2017-10-13 17:03:31 +01:00
Laurens Voerman
274cea19bf copySubImage support for block compressed images, added support for astc compressed type. 2017-10-13 16:54:04 +02:00
Robert Osfield
24bec09b9e Removed the glyph image outline support as it's no longer required. 2017-10-13 13:01:57 +01:00
Robert Osfield
8b12d2d71a Deprecated Text:BackdropImplementation, removing the backend as it no longer required when using shaders for backdrop effects 2017-10-13 11:42:25 +01:00
Robert Osfield
28561b2b77 Removed old multipass implemenmtations of backdrops as effect is now fully implememted in shaders 2017-10-13 08:40:58 +01:00
Robert Osfield
d6af00d9bd Merge branch 'master' into text_improvements 2017-10-10 09:21:34 +01:00
OpenSceneGraph git repository
d74e340f32 Merge pull request #359 from eligovision/OpenSceneGraph_gles
Added defines: GL_ALPHA4/8/12/16 in osg/Image, this will fix compilat…
2017-10-09 10:03:21 +01:00
OpenSceneGraph git repository
5f985a36a2 Merge pull request #358 from eligovision/OpenSceneGraph_optimizer
VertexAttribDivisor compare function fix: index must be compared
2017-10-09 10:02:51 +01:00
Robert Osfield
9ac2b2eb7b Added VertexArrayState::ArrayDispatch::className() method and implementation for each ArrayDispatch subclass to help with debugging 2017-10-06 17:47:19 +01:00
Konstantin S. Matveyev
1e1f69febc Added defines: GL_ALPHA4/8/12/16 in osg/Image, this will fix compilation error while building for GLES2 2017-10-06 18:16:48 +03:00
Konstantin S. Matveyev
a87e57e946 VertexAttribDivisor compare function fix: index must be compared 2017-10-06 18:14:47 +03:00
Robert Osfield
ddf8c68d26 Added support for multiple --login url username password entries to osgviewer 2017-10-05 15:37:03 +01:00
Julien Valentin
d2162717b8 fix normalization bug (happen too early )
minor bug

bla
2017-10-04 07:23:46 +02:00
Robert Osfield
d2fa7c4317 Simplified and improved the glyph margin computation and usage 2017-09-29 20:21:13 +01:00
Robert Osfield
a1f519cbec Removed debug info 2017-09-21 15:41:21 +01:00
Robert Osfield
78811462f1 Added support for only enabling SignedDistanceField shader path when font resolution is greater than 16. 2017-09-20 15:51:03 +01:00
Robert Osfield
e8eb1ee0c7 Added Text::assignStateSet() and usage to make sure the correct StateSet is setup for each combination of backdrop settings 2017-09-20 14:29:05 +01:00
Robert Osfield
370ca2b8a3 Fixed X11 GLES2 build 2017-09-19 17:01:58 +01:00
Robert Osfield
cc7cf54353 Added support for subsititing $VAR_NAME entries in shaders to enable writing shaders that work across GLSL versions. 2017-09-18 18:09:15 +01:00
Robert Osfield
722ed6fc5e Shifted set up of osgText related StateSet from osgText::Font into into osg::TextBase/Text to enable grater control over state required for specific Text implementations 2017-09-12 11:50:47 +01:00
Robert Osfield
de47eb3666 Add support for generating outline and signed distance field channels in a RGBA packed GlyphTexture Image. 2017-09-08 16:59:43 +01:00
Julien Valentin
041a2a6e72 make preparedata skeleton independant (as it was with the Rig::buildInfluenceSet)
no more divergence with master i think
2017-09-04 01:56:43 +02:00
Julien Valentin
381c2150d4 Merge remote-tracking branch 'upstream/master' into osganimation 2017-09-01 20:03:05 +02:00
Julien Valentin
a73c20d7f5 update serializer with new properties 2017-09-01 19:13:01 +02:00
Julien Valentin
78dd81a8b4 add void InfluenceMap::removeUnexpressedBones(Skeleton &skel) const;
a bit experimental but work well without further process on my test set
2017-09-01 17:48:28 +02:00
Julien Valentin
0d02dfbbbd remove utility classes BoneWeight and IndexWeight in order to avoid unnecessary symbols
(but decrease a bit clarity of the code)
2017-09-01 16:23:49 +02:00
Julien Valentin
dee9dc2164 a functional cleanup 2017-09-01 01:43:00 +02:00
Julien Valentin
5aa96727e9 clean and bugfixes 2017-08-31 20:57:19 +02:00
Julien Valentin
b790986f37 few cleanup 2017-08-31 13:49:27 +02:00
Julien Valentin
068a032dac revert s/VertexIndexWeight/IndexWeight/ 2017-08-31 13:30:24 +02:00
Julien Valentin
1f628235d4 rehabilit an init method to ensure morphing po setted before skinning po in case of rigeom source that are morphgeom 2017-08-30 20:36:34 +02:00
Robert Osfield
1289c4ee41 Added osgText::Font::s/getGlyphInterval(int) and GlyphTexture::s/getGlyphInterval(int) and internal support for clmapping positions of glyph images an defined intervals, defaults to 1. 2017-08-30 16:21:03 +01:00
Julien Valentin
86ad54f671 add parameter to XXXTranformHW to customize reserved texture attribs and vertex attribs 2017-08-30 17:07:11 +02:00
Julien Valentin
8fad310ce1 readd VertexInfluence whenever it's bad named and kinda useless 2017-08-30 15:30:03 +02:00
Julien Valentin
6d1193ee70 readd buildVertexInfluenceSet for backward compat 2017-08-30 14:59:31 +02:00
Julien Valentin
fd9b8f103e cleanup 2017-08-30 14:26:15 +02:00
Julien Valentin
985d766f05 uncomment normalization in rigtransformxxx 2017-08-30 12:55:45 +02:00
Julien Valentin
fe99b568a0 refactor: remove totally VertexInfluence (renamed BoneInfluenceList) everywhere 2017-08-30 11:12:17 +02:00
Julien Valentin
fae9729560 swap priority in BonePtrWeight comparator< yeild the same VG set 2017-08-29 17:41:38 +02:00
Julien Valentin
ce6a316bde cleanup 2017-08-29 17:41:26 +02:00
Julien Valentin
186691a9db remove virtual qualifier for deprecated method 2017-08-29 15:10:05 +02:00
Julien Valentin
059fc70337 set defaut implementation at creation 2017-08-29 14:49:11 +02:00
Julien Valentin
0c9a624026 few refactoring and fixes 2017-08-29 04:08:55 +02:00