1. 02 Apr, 2013 1 commit
  2. 18 Feb, 2013 1 commit
  3. 17 Feb, 2013 1 commit
  4. 08 Feb, 2013 1 commit
  5. 06 Jan, 2013 1 commit
  6. 24 Aug, 2012 1 commit
  7. 01 Mar, 2012 1 commit
  8. 28 Feb, 2012 1 commit
  9. 15 Feb, 2012 1 commit
  10. 14 Feb, 2012 2 commits
    • Robert Menzel's avatar
      bd934fce
    • Robert Menzel's avatar
      Automatic consistent attribute location mappings possible · 708174d6
      Robert Menzel authored
      Example:
      SharedLocationMappings globalLocationMappings = SharedLocationMappings( new LocationMappings );
      // now the map could get set by hand, but thats not needed:
      ShaderProgramFileManager::the()->get( ShaderProgramControlFiles("shader1").
                                            externAttributeLocations(globalLocationMappings) );
      // will add all maps from the shader1 to the global map
      ShaderProgramFileManager::the()->get( ShaderProgramControlFiles("shader2").
                                            externAttributeLocations(globalLocationMappings) );
      // will add all maps from shader2, attributes already known will not get changed, no location collitions.
      
      Reloading of the shaders due to changed files will automatically set the locations again.
      708174d6
  11. 09 Feb, 2012 2 commits
    • Robert Menzel's avatar
    • Robert Menzel's avatar
      Moved objects · 6c294ed8
      Robert Menzel authored
      OpenGL/Objects now only contains wrappers of OpenGL objects, all higher-level objects are moved to OpenGL/HiLevelObjects. Also moved LocationMappings to OpenGL/Data.
      OpenGL/Objects.hh still includes the high-level stuff. In the hi-level collection multiple alternative concepts can be collected to achieve similar functionality (Uniform objects instead of UniformBuffers for example) which is fine but should not lead to confusion that just the OpenGL objects in Objects/ are the main building blocks on which the HiLevelObjects/ rely on.
      6c294ed8
  12. 08 Feb, 2012 1 commit
  13. 07 Feb, 2012 3 commits
  14. 05 Feb, 2012 1 commit
  15. 03 Feb, 2012 2 commits
  16. 02 Feb, 2012 3 commits
    • Robert Menzel's avatar
      FBO redone · aa066185
      Robert Menzel authored
      aa066185
    • Robert Menzel's avatar
      cleanups, working on VAOs · 2c552974
      Robert Menzel authored
      2c552974
    • Robert Menzel's avatar
      Moved shared pointer includes · 795bcd09
      Robert Menzel authored
      The shared and weak pointers are now included via ACGL.hh, this way there is one
      one central place to replace the pointers if needed (C++11, TR1, boost, own variant).
      For this, they are placed in a ptr namespace so std:: (C++11) and str::tr1:: (C++98)
      variants as well as boost and own implementations can all get redirected.
      C++11 detection added and correct non-tr1 header include added (should make VS2010
      porting easier).
      795bcd09
  17. 01 Feb, 2012 1 commit
  18. 18 Jan, 2012 1 commit
  19. 01 Dec, 2011 2 commits
  20. 13 Sep, 2011 1 commit
  21. 12 Sep, 2011 2 commits
  22. 06 Sep, 2011 1 commit
    • Robert Menzel's avatar
      Compatibility improvements · 256338d1
      Robert Menzel authored
      * Some GL 2.1 compatibility improvements:
        * On GL 2.1 the shaderfiles are read from a different folder by default
        * 3.0+ functions are not compiled for 2.1 any more
        * The RenderObject is not 2.1 compatible, so it's not compiled for old systems
          atm. A port could be possible.
        * ACGL compiles for GL 2.1 now
      * Added compile warning in case the desired OpenGL version is not defined by
        the build system (which could screw up conditional compile)
      * Minor fixes
      256338d1
  23. 04 Sep, 2011 1 commit
    • Robert Menzel's avatar
      Improved glProgramUniform support · 48e0db85
      Robert Menzel authored
      * OpenGL 4.1 style glProgramUniform functions are provided as mappings
        from an extension or emulation
      * mapping functions now consider OpenGL ES and native support for iOS 5
      * ShaderProgram uses glProgramUniform instead of the EXT version like
        in OpenGL 4.1
      * Easy to query OpenGL version numbers in OpenGL::Tools added
      * clean up in ACGL::init()
      * namespaces in the extension file
      48e0db85
  24. 24 Aug, 2011 2 commits
    • Robert Menzel's avatar
      added comments · 0be9b454
      Robert Menzel authored
      0be9b454
    • 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
  25. 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
  26. 19 Aug, 2011 1 commit
  27. 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
  28. 16 Aug, 2011 1 commit
  29. 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