Robert Osfield
40a7f903ec
Implemented an osg::createImageWithOrientationConversion(...) method to aid for changing orientation of images.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14818 16af8721-9629-0410-8352-f15c8da7e697
2015-04-03 13:19:32 +00:00
Robert Osfield
9aa8d641a0
From Lionel Largarde, "fix for the Image::computeNumberOfMipmapLevels method. The method did use the float version of the log function and the / operator.
...
It works for most of the input sizes, but fails for 8192, 32768...
For 8192, the method returns 13 instead of 14."
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14814 16af8721-9629-0410-8352-f15c8da7e697
2015-04-01 09:37:44 +00:00
Robert Osfield
de415fbcf9
Fixed crash when using a subload callback, where the _images array is empty by _images[0] was still being accessed.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14813 16af8721-9629-0410-8352-f15c8da7e697
2015-03-31 19:31:34 +00:00
Robert Osfield
a7ba138dc7
Introduced osg::Camera::resize(..) method and associated enum thus:
...
enum ResizeMask
{
RESIZE_VIEWPORT=1,
RESIZE_ATTACHMENTS=2,
RESIZE_PROJECTIONMATRIX=4,
RESIZE_DEFAULT=RESIZE_VIEWPORT|RESIZE_ATTACHMENTS
};
/** Resize, to the specified width and height, the viewport, attachments and projection matrix according to the resizeMask provided.
* Note, the adjustment of the projection matrix is done if the RESIZE_PROJECTIONMATRIX mask to set and according to the rules specified in the ProjectionResizePolicy. */
void resize(int width, int height, int resizeMask=RESIZE_DEFAULT);
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14811 16af8721-9629-0410-8352-f15c8da7e697
2015-03-31 16:23:43 +00:00
Robert Osfield
99f7bfab3b
Introduced Camera::resizeAttachments(int width, int height) to resize all the Texture and Image assigned the the Camera attachments.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14810 16af8721-9629-0410-8352-f15c8da7e697
2015-03-31 15:08:13 +00:00
Robert Osfield
307e70f13b
Added Camera::dirtyAttachmentMap(), Camera::s/getAttachmentMapModified() value and usage of this in RenderStage as a new mechanism
...
for telling the rendering backend to update itself to reflect new values in the attachments such as new texture or image sizes.
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14808 16af8721-9629-0410-8352-f15c8da7e697
2015-03-31 10:36:38 +00:00
Robert Osfield
75b9cd3627
Completed support for assigning 3D osg::Image to osg::Texture2DArray.
...
Improved the osgtexture2DArray example to add --mipmap and --packed command line options to help with testing.
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14775 16af8721-9629-0410-8352-f15c8da7e697
2015-03-11 17:27:08 +00:00
Robert Osfield
c30be2355b
Work in progress to allow osg::Texture2DArray to be set up with a single osg::Image containing 3D image data.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14773 16af8721-9629-0410-8352-f15c8da7e697
2015-03-10 18:15:02 +00:00
Robert Osfield
ed9502e017
Added check for newline at end of version line, and of it's not add a '\n'
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14761 16af8721-9629-0410-8352-f15c8da7e697
2015-03-05 10:53:28 +00:00
Robert Osfield
4c4738eced
Re-organized the #ifdef's to avoid usage of glPolyginMode under GLES
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14751 16af8721-9629-0410-8352-f15c8da7e697
2015-03-03 12:00:52 +00:00
Robert Osfield
d03b38dea8
Fixes for warnings
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14736 16af8721-9629-0410-8352-f15c8da7e697
2015-02-27 04:29:30 +00:00
Robert Osfield
6a30705870
From Bradley Baker Searles, "We had someone replace a DDS texture with a GL_RGB/GL_UNSIGNED_SHORT_5_6_6 image, which would trigger a crash in Image.cpp while flipping the mipmap chain. The code was trying to flip the mipmaps using the rowStep for the full-size image (we have "dds_flip" set in the osgDB::ReaderWriter::Options in the osgDB::Registry)."
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14732 16af8721-9629-0410-8352-f15c8da7e697
2015-02-26 19:14:28 +00:00
Robert Osfield
77f662f9f7
From Julien Valentin and Alberto Luaces, added support for transform feedback extensions
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14728 16af8721-9629-0410-8352-f15c8da7e697
2015-02-26 17:49:36 +00:00
Robert Osfield
bd3f390b2f
Fixed image allocation operations.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14712 16af8721-9629-0410-8352-f15c8da7e697
2015-02-23 20:28:28 +00:00
Robert Osfield
4cb5bce66a
Added support for DefineList to StateSet::merge(..)
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14700 16af8721-9629-0410-8352-f15c8da7e697
2015-02-17 20:42:12 +00:00
Robert Osfield
3e2305d815
From Stephan Wenglorz, "the attached fix corrects a small bug in OperationThread::setDone(bool), calling it had the opposite effect of what was intended, i.e. setting done to false actually finished the thread. The effect was that VPB threads would exit before starting osgdem when a task had been enqueued, because they initially set done to false."
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14699 16af8721-9629-0410-8352-f15c8da7e697
2015-02-17 19:40:58 +00:00
Robert Osfield
6bddbdf074
Improvements to the #pragma(tic) shader composition support
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14694 16af8721-9629-0410-8352-f15c8da7e697
2015-02-13 12:50:43 +00:00
Robert Osfield
a40260a5a5
From Farshid Lashkari, "I've attached a fix for some internal glu functions so that they use size_t for computing allocation sizes instead of GLint. I encountered some large images that were triggering integer overflows with the current code."
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14690 16af8721-9629-0410-8352-f15c8da7e697
2015-02-13 07:45:49 +00:00
Robert Osfield
9fa3defb0e
Added reassignment of the #version line to the first entry in the source list.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14688 16af8721-9629-0410-8352-f15c8da7e697
2015-02-11 16:41:31 +00:00
Robert Osfield
b90503fdf5
Introduced new shader composition approach that utilizes #pragma requires(), #pragma import_defines() and #ifdef in GLSL to enable multiple different versions of shaders based
...
on defines passed in from osg::StateSet::setDefine(..).
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14681 16af8721-9629-0410-8352-f15c8da7e697
2015-02-10 17:04:02 +00:00
Robert Osfield
51b19d2d8b
From Alexey Pavlov, "Export fix for Windows platform"
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14672 16af8721-9629-0410-8352-f15c8da7e697
2015-01-22 16:41:34 +00:00
Robert Osfield
d5f2c34f24
From Andreas Henne, OpenGL core profile fixes required for OSX.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14669 16af8721-9629-0410-8352-f15c8da7e697
2015-01-21 15:35:19 +00:00
Robert Osfield
0a4efa35c3
Changed the reset of the GLExtensions::Set() in the State destructor so that it checks to see if the local _glExtensions pointer has been set up and taken ownership of the GLExtensions::Set() value
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14661 16af8721-9629-0410-8352-f15c8da7e697
2015-01-20 11:24:31 +00:00
Robert Osfield
bf794165d5
From Farshid Lashkari, "small change to osg::Image::readImageFromCurrentTexture to allow reading data from compressed cubemap textures."
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14653 16af8721-9629-0410-8352-f15c8da7e697
2015-01-07 10:36:34 +00:00
Robert Osfield
134b2e506f
Cleaned up GL_TEXTURE_BUFFER_*ARB usage as include/osg/GLDefines now provides the non ARB variants
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14652 16af8721-9629-0410-8352-f15c8da7e697
2015-01-06 17:23:26 +00:00
Robert Osfield
8b384baca9
From Julien Valentin, "To sum up changes, I had:
...
-some extensions in GLExtensions
- GL_TEXTURE_BUFFER as target in osg::StateSet
- a VBO based transform feed back example
"
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14651 16af8721-9629-0410-8352-f15c8da7e697
2015-01-06 17:12:51 +00:00
Robert Osfield
4945e03bcb
Windows build error and warning fixes
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14626 16af8721-9629-0410-8352-f15c8da7e697
2014-12-19 11:00:31 +00:00
Robert Osfield
6f9ac83693
Added DisplaySettings::s/getNvOptimusEnablement() and OSG_NvOptimusEnablement env var control to control the setting of the NvOptimusEnablement variable
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14614 16af8721-9629-0410-8352-f15c8da7e697
2014-12-18 10:59:07 +00:00
Robert Osfield
49c48a5509
Added OpenGL Transform Feedback extensions.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14600 16af8721-9629-0410-8352-f15c8da7e697
2014-12-10 13:05:47 +00:00
Robert Osfield
1b6e50a2dd
From Marcus Hein, Added support for OpenGL SSBO and SSBB via osg::ShaderStorageBufferObject and osg::ShaderStorageBufferBinding to core OSG library, and added new osgSSBO example
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14599 16af8721-9629-0410-8352-f15c8da7e697
2014-12-10 12:23:04 +00:00
Robert Osfield
3c07921dee
Removed old GL2Extensions class, replacing it with a typedef to GL2Extensions
...
Removed old includes to include/osg/GL2Extensions
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14594 16af8721-9629-0410-8352-f15c8da7e697
2014-12-10 10:44:58 +00:00
Robert Osfield
485709f708
Moved GL2Extensions functionality into the include/osg/GLExtensions header and new GLExtensions object.
...
Moved the #defines into new include/osg/GLDefines
Converted all GL2Extensions usage to GLExtensions usage
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14593 16af8721-9629-0410-8352-f15c8da7e697
2014-12-10 10:38:12 +00:00
Robert Osfield
22e51c9902
Windows build fixes
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14590 16af8721-9629-0410-8352-f15c8da7e697
2014-12-09 20:09:29 +00:00
Robert Osfield
d166b6d1df
Quietened down debug messages
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14588 16af8721-9629-0410-8352-f15c8da7e697
2014-12-09 19:22:45 +00:00
Robert Osfield
43049ebcf1
Moved FBO Extensions into GL2Extensions.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14586 16af8721-9629-0410-8352-f15c8da7e697
2014-12-09 18:30:28 +00:00
Robert Osfield
e31f682451
Moved local Extensions structs into GL2Extensions
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14584 16af8721-9629-0410-8352-f15c8da7e697
2014-12-09 14:57:25 +00:00
Robert Osfield
3f1e77d479
Moveved Stencil/StencilTwoSided::Extensions into GL2Extensions
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14583 16af8721-9629-0410-8352-f15c8da7e697
2014-12-09 11:14:33 +00:00
Robert Osfield
ec4f898bce
Moved local Extensions objects to GL2Extensions
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14582 16af8721-9629-0410-8352-f15c8da7e697
2014-12-09 10:37:09 +00:00
Robert Osfield
cceee38727
Moved Texture*::Extensions functionality into GL2Extensions
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14581 16af8721-9629-0410-8352-f15c8da7e697
2014-12-09 10:05:59 +00:00
Robert Osfield
a8804e2366
MOved VertexProgram and FragmentProgram::Extensions into GL2Extensions.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14580 16af8721-9629-0410-8352-f15c8da7e697
2014-12-08 16:08:44 +00:00
Robert Osfield
bc424bc54f
MOved SampleMaski::Extensions into osg::GL2Extensions
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14577 16af8721-9629-0410-8352-f15c8da7e697
2014-12-07 17:31:49 +00:00
Robert Osfield
9b03b3f8ce
Moved TextureCubeMap::Extension functionality into GL2Extensions
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14576 16af8721-9629-0410-8352-f15c8da7e697
2014-12-05 20:05:18 +00:00
Robert Osfield
f634152de0
Moved osg::Drawable::Extensions into osg::GL2Extensions
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14575 16af8721-9629-0410-8352-f15c8da7e697
2014-12-05 17:26:42 +00:00
Robert Osfield
1bcb944ddc
Windows build fix
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14573 16af8721-9629-0410-8352-f15c8da7e697
2014-12-05 09:52:42 +00:00
Robert Osfield
aa090f0f99
From the GLintptr + GLsizeiptr defintions to GL2Extensions header
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14572 16af8721-9629-0410-8352-f15c8da7e697
2014-12-05 08:58:23 +00:00
Robert Osfield
d83e641fad
Moved osg::BlenFunc::Extensions into osg::GL2Extensions
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14571 16af8721-9629-0410-8352-f15c8da7e697
2014-12-04 19:03:16 +00:00
Robert Osfield
d02c0bdc49
Moved GLBufferObject::Extensions structure into osg::GL2Extensions
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14570 16af8721-9629-0410-8352-f15c8da7e697
2014-12-04 18:13:11 +00:00
Robert Osfield
1791ac08a8
Added glMemoryBarrier, glMapBufferRange and glBindBufferBase to GL2Extensions
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14568 16af8721-9629-0410-8352-f15c8da7e697
2014-12-04 17:12:55 +00:00
Robert Osfield
6569f69de1
Moved old GL2Extensions::Get(..) usage across to new osg::State::get<GL2Extensions>() usage
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14567 16af8721-9629-0410-8352-f15c8da7e697
2014-12-04 16:28:32 +00:00
Robert Osfield
66da1328f8
Ported GL2Extentions across to using the new GL extensions approach - cutting code count by 3000 lines!
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14566 16af8721-9629-0410-8352-f15c8da7e697
2014-12-04 16:22:31 +00:00