Commit Graph

4906 Commits

Author SHA1 Message Date
Robert Osfield
bc600bc9f7 Fixed crash when using ShapeDrawable with a TriangleMesh or ConvexHull shape due to missing texture coords 2018-05-13 11:53:21 +01:00
Robert Osfield
7c67059e12 Removed _traverseNumber variable that was duplicating the one in NodeVisitor base class 2018-05-13 09:29:27 +01:00
Robert Osfield
b70ffc9b8a Moved constructors and destructors to .cpp 2018-05-11 11:15:45 +01:00
Robert Osfield
5e6b081bb0 Revert "Moved the Options constructors and destructor implementaions into the cpp to make it easier to do debugging"
This reverts commit 479a4eefc5.
2018-05-11 11:13:19 +01:00
Robert Osfield
747162e5b6 Fixed crash the occurred when passing in a osgDB::Options to the ObjectCache that doesn't have any references to it. 2018-05-11 09:01:50 +01:00
Robert Osfield
479a4eefc5 Moved the Options constructors and destructor implementaions into the cpp to make it easier to do debugging 2018-05-11 09:01:50 +01:00
Robert Osfield
ac6eaee583 Fixed build when OSG_ENVVAR_SUPPORTED is disabled and quietened down warnings using OSG_UNUSED* macros 2018-05-10 19:00:13 +01:00
Robert Osfield
863dee52e2 Replaced std::auto_ptr<> usage as it's deprecated in C++11 and will be removed in C++17 2018-05-05 12:35:51 +01:00
Sebastian Messerschmidt
544872f63b FIX: <osgParticle> removed unimplemented functions from header 2018-04-30 11:58:19 +01:00
Alberto Luaces
d23b988d00
Small fix for uncaught typo. 2018-04-20 21:16:46 +02:00
Alberto Luaces
bc4f181d41 Fix typos and spelling. 2018-04-20 18:18:22 +02:00
Robert Osfield
0dd5230d82 Cleaned up inbludes and unused code 2018-04-20 14:01:21 +01:00
Robert Osfield
13e02d1af5 Removed osgUtil::TriStripVisitor as it is nolonger appropriate for modern OpenGL/OSG usage and bloats the osgUtil lib size by several hundred Kb. 2018-04-20 13:06:28 +01:00
Robert Osfield
c58041cf0b Added osgUtil::optimizeMesh(osg::Node* node) convinience method 2018-04-20 09:57:04 +01:00
Robert Osfield
85c835b902 Merge branch 'master' of https://github.com/openscenegraph/OpenSceneGraph 2018-04-19 20:11:19 +01:00
Robert Osfield
0836fa602a Fixed the GLBufferObject size computation so that it takes into account padding. 2018-04-19 19:45:29 +01:00
Jason Beverage
7250cd717c Removed unimplemented Uniform::getNameID from Uniform header as it's defined in UniformBase now. 2018-04-18 14:59:51 -04:00
Robert Osfield
1d4f6c2543 Cleaned up includes 2018-04-17 09:20:23 +01:00
Jason Beverage
c09d209bd0 Including osg/Geode to fix osgManipulator build 2018-04-16 15:58:12 -04:00
Robert Osfield
8a2e6b1eaa Removed long deprecated IntersectVisitor. 2018-04-16 19:41:53 +01:00
Robert Osfield
724dbac41c Fixed inline Drawable::draw(..) method 2018-04-16 15:08:24 +01:00
Robert Osfield
e884df59c7 Pulled in latest changes from 3.6 branch 2018-04-07 18:14:57 +01:00
Robert Osfield
159f0fd584 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:05:26 +01:00
Daniel Emminizer
5063a0b41a osgDB: Added missing extern OSGDB_EXPORT. 2018-04-05 18:01:29 +01:00
Robert Osfield
decaf57fef Quietened down debug message output for osgText shader setup and Drawable::createVertexArrayStateImplementation 2018-04-05 14:14:49 +01:00
Robert Osfield
146fe3e294 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:09:43 +01:00
Frank Bausch
72ab22e539 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:50:39 +01:00
Robert Osfield
a34df91de7 Added a ShadowTechniue::setShadowedScene() virtual method to make it possible to implement techniques as fascades to other techniques 2018-04-03 15:29:54 +01:00
Robert Osfield
b920d482c7 Removed osgShadow::ShadowVolume as it functionality isn't functional 2018-04-03 11:35:31 +01:00
Robert Osfield
5c48904626 Rewrote the handling of AutoTransform::setAutoScaleToScreen(bool) functionality so that is disabling CullingActive when switched on. 2018-04-02 18:26:26 +01:00
Robert Osfield
f02c556874 Changed Layer::get*Value(..) methods to const 2018-03-30 12:39:52 +01:00
Robert Osfield
1e05e04a05 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:35:34 +01:00
Konstantin S. Matveyev
b96587cead 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-27 08:49:01 +01:00
Hartwig
1b3928a017 Removal of compiler warnings caused by integer conversions
In most systems today sizeof(size_t) is larger than sizeof(GLsizei). Therefore, the inclusion of GLExtensions may introduce a lot of compiler warnings as array.size() (of type size_t) is passed to a function with a parameter of type GLsizei.
2018-03-25 19:04:10 +02:00
OpenSceneGraph git repository
097d3ab4ed
Merge pull request #502 from Haojia521/OutputStreamUseTargertSoVersion
write binary file with a specific so version
2018-03-23 20:08:37 +00:00
Robert Osfield
deef029823 Fixed member variable names to avoid conflicts with osg::Node 2018-03-23 20:07:08 +00:00
OpenSceneGraph git repository
4c3141b62e
Fixed indentation 2018-03-23 17:00:00 +00:00
Haojia Yu
415a747049 Revert "Revert "write binary file with a specific so version""
This reverts commit 0ae6f7fea6.
2018-03-23 22:49:47 +08:00
Haojia Yu
0ae6f7fea6 Revert "write binary file with a specific so version"
This reverts commit b5bf8864b1.
2018-03-23 22:48:11 +08:00
Haojia Yu
b5bf8864b1 write binary file with a specific so version
when write binary file, like osgb file, users can set plugin string data, such as "TargetFileVersion=80", to options object, then the features of output file will be limitted to so version 80.
2018-03-23 22:31:12 +08:00
Robert Osfield
76c584ab25 Added osg::UnfiromBase* StateSet::getUniformBase(..) and osg::Uniform* StateSet::getUniform(..) methods to help with backwards compatibility 2018-03-19 12:08:28 +00:00
Robert Osfield
3585ecc28c Merge branch 'master' into shader_pipeline 2018-03-14 09:20:08 +00:00
Robert Osfield
4447190dd6 Refactored osgUtil::ShaderGen to use #pragma(tic) shader composition. 2018-03-14 08:22:45 +00:00
Robert Osfield
98a7772fa7 Merge branch 'master' into shader_pipeline 2018-03-06 10:24:26 +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
1ae954f5c3 Merge branch 'master' into shader_pipeline 2018-02-28 09:11:29 +00:00
Robert Osfield
99bcd95756 Replaced GL_TEXTURE_2D_ARRAY_EXT with GL_TEXTURE_2D_ARRAY 2018-02-28 08:50:48 +00:00
Robert Osfield
351e8e3fe1 Merge branch 'master' into shader_pipeline 2018-02-19 11:23:29 +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
91f3e8fa59 Merge branch 'master' into shader_pipeline 2018-02-13 12:24:26 +00: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
mp3butcher
c6b5aba249 regroup and add missing funcs related to immutable texture storage 2018-02-08 23:35:43 +01:00
Robert Osfield
a0c23d914d Merge branch 'master' into shader_pipeline 2018-02-07 09:27:53 +00:00
OpenSceneGraph git repository
6d1d1bb000
Revert "BindingTextureImage: a more complex condition for _texture->apply ?" 2018-02-02 09:54:31 +00:00
mp3butcher
743bd7ae71 add first step toward PERSISTANT buffer 2018-01-29 04:09:10 +01:00
mp3butcher
60ed2eff7b add glFlushMappedBufferRange 2018-01-29 04:08:11 +01:00
mp3butcher
20fc2c95ca begin integration of bufferstorage... 2018-01-28 00:52:51 +01:00
Robert Osfield
0c35541fc5 Merge branch 'master' into shader_pipeline 2018-01-27 10:56:09 +00:00
Julien Valentin
f4663b0e32 add ARB_BufferStorage extensions 2018-01-25 16:22:33 +01:00
Robert Osfield
368dd5dd92 Merge branch 'master' into shader_pipeline 2018-01-23 10:39:05 +00: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
Robert Osfield
1e8879f2e2 Merge branch 'master' into shader_pipeline 2018-01-23 10:08:27 +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
2f65456dd4 Merge branch 'master' into shader_pipeline 2018-01-21 13:11:51 +00: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
Robert Osfield
41e3b723a7 Merge branch 'master' into shader_pipeline 2018-01-15 16:52:10 +00: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
6a5afd63e7 Merge branch 'master' into shader_pipeline 2018-01-15 16:03:21 +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
Robert Osfield
9fdc713b97 Merge branch 'master' into shader_pipeline 2018-01-14 13:28:45 +00: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
26b06a8daa Merge branch 'master' into shader_pipeline 2018-01-12 19:55:34 +00: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
903b0895f7 Added non const variants of State::getDisplaySettings/getActiveDisplaySettings(). 2018-01-09 12:16:32 +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
Robert Osfield
339b7ffa7c Removed inappropriate // 2018-01-06 12:52:34 +00:00
Robert Osfield
6a413da143 Merge branch 'master' into shader_pipeline 2018-01-05 11:35:11 +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
Robert Osfield
e3d438d80f Merge branch 'master' into shader_pipeline 2018-01-03 12:34:01 +00: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
55d4be66b3 Merge branch 'master' into shader_pipeline 2018-01-01 12:36:31 +00: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
Robert Osfield
b5a3e0d532 Fixed handling of reassignment of ArrayDispatch when vertex aliasing is toggled 2017-12-31 12:35:44 +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
2b315b7a78 Added ValueObject::get/setScaleValue(..) convinient methods 2017-12-20 20:12:49 +00:00
Robert Osfield
d426513b64 Merge branch 'master' into shader_pipeline 2017-12-19 10:43:44 +00: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
Robert Osfield
a92232fd01 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:50:42 +00:00
Robert Osfield
a17b1ac547 Added object map to DisplaySettings::setObject(std::string, Object*) & getObject(std::string)
This enables caching of data, such as pre-loaded files or other objects
2017-12-03 16:43:06 +00:00
Robert Osfield
803026814a From Raymond de Vries, Windows build fixes 2017-12-01 14:38:52 +00:00
Robert Osfield
dadfe8ae0b Merge branch 'master' into shader_pipeline 2017-12-01 09:14:52 +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
bf517febfc Merge branch 'master' into shader_pipeline 2017-10-28 12:58:47 +01: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