Commit Graph

2477 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
Robert Osfield
bf517febfc Merge branch 'master' into shader_pipeline 2017-10-28 12:58:47 +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
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
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
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
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
Denys Koch
1d1bfa1b39 Fix flawed BoundingSphere inequality operator 2017-08-28 14:34:39 +02:00
OpenSceneGraph git repository
5efdcd5655 Merge pull request #328 from scrawl/group-docs
Fix docs for Group::addChild to match implementation
2017-08-27 18:07:21 +01:00
scrawl
1cd1ab1c60 Fix docs for Group::addChild to match implementation
Checking for duplicates is only done if ENSURE_CHILD_IS_UNIQUE is defined, but this is never defined anywhere.
2017-08-26 11:30:55 +00:00
Daniel Emminizer
2e456eeddc No longer using OSG_EXPORT on DefaultIndirectCommandDrawArrays and DefaultIndirectCommandDrawElements, fixing compile errors in MSVC 2015. 2017-08-25 08:55:25 -04:00
Julien Valentin
c89b08ea1f Add extensions 2017-08-25 00:19:22 +02:00
Julien Valentin
107b7be95b Merge remote-tracking branch 'upstream/master' into MDI7 2017-08-24 11:26:23 +02:00
OpenSceneGraph git repository
b89384d810 Merge pull request #318 from mp3butcher/osganimation
change the design of BufferIndexBinding to work with BufferData instead of BufferObject +matrix transpose
2017-08-24 09:53:32 +01:00
Julien Valentin
d49f0d67af change the design of BufferIndexBinding to work with BufferData instead of BufferObject
allow convenient BufferData abstraction +  serialization of BufferIndexBinding
2017-08-24 03:28:55 +02:00
Julien Valentin
3b03699fbc add a transpose method for 4x4
and a transpose3x3 to transpose only orthogonal part of a mat4x4
2017-08-23 23:49:36 +02:00
Robert Osfield
eefeb3bb93 Fixed underflow issue 2017-08-23 15:26:07 +01:00
Robert Osfield
f3adcda6b7 Removed the GLclampd declaration and replaced its usage with GLdouble to standardize the OSG extension setup with current GL/GLES headers.
Added a float fallback from osg::DepthDangeIndex to suppprt GLES.
2017-08-16 14:20:00 +01:00
luzpaz
2cd31f65e4 misc. typo fixes
mostly non-user-facing but some doxy.
2017-08-15 12:23:49 -04:00
Julien Valentin
899a704eb7 update IndirectCommandArrays interfaces and default impl to use DrawElements like semantic 2017-08-05 18:03:27 +02:00
Julien Valentin
7f292c3fb5 add resize methods method in CommandArrays (it allows user to work without casting to the concrete class result of MDI.getCommandArray())
move getTotalDataSize in CommandArrays interfaces
comply with other DrawElementsXXX removing parameters in mdi constructors and add several method ( allow use of osgUtil::DrawElementTypeSimplifer on these)
2017-08-02 21:50:25 +02:00
Robert Osfield
fda30b36d1 Merged #pragmatic shader fix from OpenSceneGraph-3.4 branch. 2017-07-31 13:38:18 +01:00
Robert Osfield
5a946e218f Improved the readability and consistency with the rest of the OSG by inserting/removing spaces and line spacing. 2017-07-28 13:30:36 +01:00
mp3butcher
a45c4c8f39 set DIBO of the drawcommandarray directly in their interface constructor
it makes osggpu use case lighter + drawcommandarray can't exist without a BO
2017-07-27 12:27:55 +02:00
mp3butcher
104b2dfc72 Promote PrimitiveSetIndirect's VBO to a target explicited DIBO (in order to benefit from BOSet queue management) 2017-07-27 12:13:05 +02:00
mp3butcher
7606159a78 add DrawIndirectBufferObject as State variable in order to minimize call to glBindBuffer(GL_DRAW_INDIRECT_BUFFER,X)
TODO: Promote PrimitiveSetIndirect's VBO to target explicited DIBO (in order to benefit from BOSet queue management)
2017-07-27 01:54:25 +02:00
mp3butcher
9b53775840 remove deprecated DrawIndirectBufferBinding 2017-07-27 01:40:04 +02:00
mp3butcher
8742ad8da6 fix some errors during renaming and cleanup code 2017-07-27 01:08:37 +02:00