1. 24 Aug, 2011 1 commit
    • Robert Menzel's avatar
      Added support for direct state access · d3706471
      Robert Menzel authored
      * Added support for direct state access based uniform setting in the ShaderProgram
      * functions from the EXT_direct_state_access extension can get emulated if the extension is not present
        in this case ACGL will map the simulated versions automatically to the *EXT function pointers
        so a programmer can just call the *EXT versions and doesn't have to care if the machine the code
        will get run on does support this extension (as long a simulated version already exists)
      * not all functions have emulated version right now, so check if an alternative exists before relying on
        functions from this extension in ACGL lib or implement the missing simulation function to support
        machines without this extension
      * all glProgramUniform functions can be emulated (plus some others that were quick to implement)
      * dummy functions for all other simulation functions exist
      d3706471
  2. 23 Aug, 2011 1 commit
    • Lars Krecklau's avatar
      -Created the RenderObject from the State. The RenderObject now only composes... · d9ad3dcc
      Lars Krecklau authored
      -Created the RenderObject from the State. The RenderObject now only composes VBOs, SPOs and FBOs and automatically creates the right mappings between them.
      -Removed the pre processor from the shader class, since we now only work with the gl getters to retrieve any locations (uniform, attribute, fragdata).
      -The ShaderProgram controllers have the possibility to define the order of the attributes manually (so the programmer can work with conventions).
      d9ad3dcc
  3. 19 Aug, 2011 1 commit
  4. 18 Aug, 2011 1 commit
    • Andreas Neu's avatar
      Added the class State to the framework in order to manage combinations of... · 269a6c27
      Andreas Neu authored
      Added the class State to the framework in order to manage combinations of VertexBuffer, FrameBuffer and ShaderProgram.
      The class automatically creates a mapping between the attributes of vertexbuffers and shaders.
      Furthermore a mapping between FragDatas of shaders and rendertargets of framebuffers are created.
      269a6c27
  5. 16 Aug, 2011 1 commit
  6. 12 Aug, 2011 2 commits
    • Lars Krecklau's avatar
      Started to constify everything. The FileManager now returns a... · 177f61b8
      Lars Krecklau authored
      Started to constify everything. The FileManager now returns a ConstSharedResource to prevent changes.
      177f61b8
    • Lars Krecklau's avatar
      Removed static contexts from the opengl object. In future, this has to be... · 21585e94
      Lars Krecklau authored
      Removed static contexts from the opengl object. In future, this has to be handled by our opengl wrapper, which will hold a copy of the gl state on cpu side.
      Made all opengl contexts not copyable.
      Created a macro for the shared typedefs which directly creates a const version of the pointer.
      Started to change some opengl object functions to be non-const although they might not change any class members, because the function still might change something on gpu side. Therfore, returning the context of any opengl object is also non-const now!
      Changed the renderbuffer constructor to just create the context and moved the rest to its corresponding controller.
      Removed own type enums in opengl objects => ONLY use the orginial GLenums here!
      21585e94
  7. 11 Aug, 2011 1 commit
    • Andreas Neu's avatar
      Usage of static GL Contexts in basic OpenGL Objects incorporated. · 1bc851f7
      Andreas Neu authored
      Until now only the class Texture used it. Now it has been added to ElementArrayBuffer, ArrayBuffer, FrameBuffer and ShaderProgram.
      Static class members have to be initialized outside the header, so the file ElementArrayBuffer.cc had to be added.
      Unbind calls e.g. glBindBuffer(GL_ARRAY_BUFFER, 0) outside of the specific class are not useful anymore, because it
      would not reset the static context variable and thus lead to bugs/crashes.
      1bc851f7
  8. 10 Aug, 2011 2 commits
  9. 04 Aug, 2011 1 commit
  10. 01 Aug, 2011 1 commit
  11. 27 Jul, 2011 1 commit