From David Callu, "Here an update of osg::Uniform :

- add non square matrix
- add double
- add all uniform type available in OpenGL 4.2
- backward compatibility for Matrixd to set/get an float uniform matrix
- update of IVE / Wrapper ReadWriter

implementation of AtomicCounterBuffer based on BufferIndexBinding

add example that use AtomicCounterBuffer and show rendering order of fragments,
original idea from geeks3d.com."
This commit is contained in:
Robert Osfield
2012-03-29 09:43:12 +00:00
parent 59d6931b59
commit aab27e106c
16 changed files with 2915 additions and 381 deletions

View File

@@ -1,4 +1,5 @@
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
* Copyright (C) 2012 David Callu
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
@@ -1668,6 +1669,11 @@ void PixelDataBufferObject::resizeGLObjectBuffers(unsigned int maxSize)
_mode.resize(maxSize);
}
//////////////////////////////////////////////////////////////////////////////////
//
// UniformBufferObject
//
UniformBufferObject::UniformBufferObject()
{
setTarget(GL_UNIFORM_BUFFER);
@@ -1682,3 +1688,24 @@ UniformBufferObject::UniformBufferObject(const UniformBufferObject& ubo, const C
UniformBufferObject::~UniformBufferObject()
{
}
//////////////////////////////////////////////////////////////////////////////////
//
// AtomicCounterBufferObject
//
AtomicCounterBufferObject::AtomicCounterBufferObject()
{
setTarget(GL_ATOMIC_COUNTER_BUFFER);
setUsage(GL_DYNAMIC_DRAW);
}
AtomicCounterBufferObject::AtomicCounterBufferObject(const AtomicCounterBufferObject& ubo, const CopyOp& copyop)
: BufferObject(ubo, copyop)
{
}
AtomicCounterBufferObject::~AtomicCounterBufferObject()
{
}