awesome-opengl
      
    
    
      
    
    A curated list of awesome OpenGL libraries, debuggers and resources.
    Contents
    
    Articles
    OpenGL articles (non-tutorials)
    
    Books
    Popular books about OpenGL
    
      - 
        A Trip Down the Graphics Pipeline
        by Jim Blinn - Popular book that contains wealth
        information about the graphics pipeline, and of the best sources to
        learn the core concepts of Computer Graphics.
      
 
      - 
        Computer Graphics by
        John F. Hughes, et al. - Computer Graphics is indeed a
        must for anyone being involved in the design and implementation of
        Computer Graphics algorithms. However, this is not a OpenGL focused
        book, but contains valuable demonstrations of the technology.
      
 
      - 
        Interactive Computer Graphics
        by Edward Angel and Dave Shreiner - It provides several
        examples using OpenGL and it covers several aspects at once, but if you
        are trying to learn OpenGL on your own you might not find this helpful.
      
 
      - 
        OpenGL ES 3.0 Programming Guide
        by Dan Ginsburg, et al. - It presents all the necessary
        information to use the OpenGL ES 3.0 API in a clear manner.
      
 
      - 
        OpenGL Insights by
        Patrick Cozzi, Christophe Riccio - Rich and
        comprehensive resource to learn techniques and tips, covering several
        advanced topics of OpenGL.
      
 
      - 
        OpenGL Programming Guide
        by Dave Shreiner, et al. - It does a good job covering
        the basics and providing clear reference of the API.
      
 
      - 
        OpenGL Shading Language
        by Randi J. Rost, et al. - Very clear and well written
        book about Shading Language. Also, it provides several explanations of
        writing shaders.
      
 
      - 
        OpenGL SuperBible by
        Richard S. Wright, et al. - It covers the basic
        concepts of computer graphics and provides clear examples using OpenGL.
        Definitely, it is a must for beginners.
      
 
      - 
        Real-Time Rendering by
        Tomas Akenine-Moller, Eric Haines and Naty Hoffman - It
        does a good job at explaining concepts for game engine, basis for game
        client programming as well as the necessary knowledge for understanding
        DirectX and OpenGL.
      
 
    
    Debug
    Debugging and profiling libraries
    
      - 
        apitrace - Tools for tracing
        OpenGL, Direct3D, and other graphics APIs.
      
 
      - 
        CodeXL - AMD’s
        tool suite that includes debugger, profiler and frame/shader analysis.
      
 
      - 
        GL-SL Debugger - Tool for
        debugging OpenGL programs.
      
 
      - 
        GLIntercept -
        OpenGL function call interceptor for Windows.
      
 
      - 
        Intel-GPA - Intel’s
        OpenGL Graphics Performance Analyzer.
      
 
      - 
        NVIDIA® Nsight™
        - Development platform for graphics applications.
      
 
      - 
        RenderDoc - RenderDoc
        is a stand-alone graphics debugging tool.
      
 
      - 
        tracy - A real time
        remote telemetry frame profiler for games and other applications.
      
 
      - 
        vogl - OpenGL
        capture and playback debugger developed by Valve.
      
 
    
    GLSL Editors
    Online GLSL Editors
    
    Libraries
    Useful libraries for OpenGL applications
    
      - 
        assimp - Portable library
        to import 3D models in a uniform manner.
      
 
      - 
        Bullet - It provides
        state of the art collision detection, soft body and rigid body dynamics.
      
 
      - 
        fltk - C++ Toolkit to generate UI
        widgets portably. LGPLv2
      
 
      - 
        freeGLUT - Mature library
        that allows to create/manage windows containing OpenGL contexts.
      
 
      - 
        GLFW - Modern library for
        creating/interact windows with OpenGL contexts.
      
 
      - 
        GLFM - Supplies an OpenGL
        ES context and input events for mobile devices and the web.
      
 
      - 
        glm - Mathematics
        library for graphics software based on the GLSL specifications.
      
 
      - 
        Magnum - It is a 2D/3D
        graphics engine for modern OpenGL.
      
 
      - 
        MathFu - C++ math library
        developed primarily for games focused on simplicity and efficiency.
      
 
      - 
        Newton - It is
        a cross-platform life-like physics.
      
 
      - 
        OGLplus - Collection of libraries which
        implement an object-oriented facade over OpenGL.
      
 
      - 
        SDL - Designed to provide low level
        access to multimedia and graphics hardware.
      
 
      - 
        SFML - Simple interface to ease
        the development of games and multimedia applications.
      
 
      - 
        SOIL - Tiny C library
        used primarily for uploading textures into OpenGL. (see
        SOIL2)
      
 
      - 
        Pangolin -
        Lightweight portable rapid development library for managing OpenGL
        display / interaction and abstracting video input.
      
 
    
    Profile Loaders
    Profile loaders for OpenGL
    
      - 
        gl3w - Simple OpenGL core
        profile loader.
      
 
      - 
        glad - Multi profile
        loader-generator based on the official specs.
      
 
      - 
        glbindify - Command
        line tool to generate C bindings for OpenGL, wgl, and glX.
      
 
      - 
        glbinding -
        Profile loader leveraging C++11 features to provide type safety.
      
 
      - 
        GLEW - Mature cross-platform
        library to load OpenGL extensions.
      
 
    
    References
    OpenGL references
    
    Talks
    
      OpenGL related talks *
      Approaching Zero Driver Overhead in OpenGL
      -
      Slides
      -
      AMA Reddit
      by
      Cass Everitt, Tim Foley, John McDonald, Graham Sellers
      [1:15:54] *
      How Modern OpenGL Can Radically Reduce Driver Overhead
      by Cass Everitt, John McDonald [51:13] *
      Moving Your Games to OpenGL
      by
      Rich Geldreich, Dan Ginsburg, Peter Lohrmann, Jason Mitchell
      [54:45]
    
    Videos
    OpenGL video tutorials
    
      - 
        Jamie King
        - Comprehensive tutorials about modern OpenGL and Qt.
      
 
      - 
        MakingGamesWithBen
        - Video tutorials (step-by-step) about OpenGL and game development.
      
 
      - 
        SIGGRAPH
        - Popular conference about computer graphics.
      
 
      - 
        TheChernoProject
        - Introduction to OpenGL in C++
      
 
      - 
        thebennybox
        - Videos tutorials about OpenGL and game development.
      
 
      - 
        ThinMatrix
        - Video tutorials about OpenGL and game development using Java.
      
 
      - 
        sentdex
        - Videos tutorials about OpenGL (immediate mode) using Python.
      
 
      - 
        Sonar Systems
        - Learn about the new and modern OpenGL 3.0+.
      
 
    
    Websites
    OpenGL tutorial websites
    
    
    
      Similar awesome lists *
      awesome - A curated
      list of awesome lists. *
      awesome-computer-vision
      - A curated list of awesome computer vision resources. *
      awesome-webgl - A
      curated list of awesome WebGL libraries, resources and much more. *
      awesome-vulkan - A
      curated list of awesome Vulkan projects and ecosystem. *
      gamedev - A
      awesome list about game development. *
      graphics-resources
      - A list of graphic programming resources.
    
    License
    
      
    
    
      This work is licensed under a
      Creative Commons Attribution 4.0 International License.
    
    Contributing
    
      Please see
      CONTRIBUTING
      for details.