• opengl


    OpenGL version history
    VersionRelease DateFeatures
    1.1 March 4, 1997 Texture objects
    1.2 March 16, 1998 3D textures, BGRA and packed pixel formats,[23] introduction of the imaging subset useful to image-processing applications
    1.2.1 October 14, 1998 A concept of ARB extensions
    1.3 August 14, 2001 Multitexturing, multisampling, texture compression
    1.4 July 24, 2002 Depth textures, GLSlang[24]
    1.5 July 29, 2003 Vertex Buffer Object (VBO), Occlusion Queries[25]
    2.0 September 7, 2004 GLSL 1.1, MRT, Non Power of Two textures, Point Sprites,[26] Two-sided stencil[25]
    2.1 July 2, 2006 GLSL 1.2, Pixel Buffer Object (PBO), sRGB Textures[25]
    3.0 August 11, 2008 GLSL 1.3, Texture Arrays, Conditional rendering, Frame Buffer Object (FBO)[27]
    3.1 March 24, 2009 GLSL 1.4, Instancing, Texture Buffer Object, Uniform Buffer Object, Primitive restart[28]
    3.2 August 3, 2009 GLSL 1.5, Geometry Shader, Multi-sampled textures[29]
    3.3 March 11, 2010 GLSL 3.30, Backports as much function as possible from the OpenGL 4.0 specification
    4.0 March 11, 2010 GLSL 4.00, Tessellation on GPU, shaders with 64-bit precision[30]
    4.1 July 26, 2010 GLSL 4.10, Developer-friendly debug outputs, compatibility with OpenGL ES 2.0[31]
    4.2 August 8, 2011[32] GLSL 4.20, Shaders with atomic counters, draw transform feedback instanced, shader packing, performance improvements
    4.3 August 6, 2012[33] GLSL 4.30, Compute shaders leveraging GPU parallelism, shader storage buffer objects, high-quality ETC2/EAC texture compression, increased memory security, a multi-application robustness extension, compatibility with OpenGL ES 3.0[34]
    4.4 July 22, 2013[35] GLSL 4.40, Buffer Placement Control, Efficient Asynchronous Queries, Shader Variable Layout, Efficient Multiple Object Binding, Streamlined Porting of Direct3D applications, Bindless Texture Extension, Sparse Texture Extension[35]
    4.5 August 11, 2014[8][36] GLSL 4.50, Direct State Access (DSA), Flush Control, Robustness, OpenGL ES 3.1 API and shader compatibility, DX11 emulation features
    4.6 July 31, 2017[37][38] GLSL 4.60, More efficient geometry processing and shader execution, more information, no error context, polygon offset clamp, SPIR-V, anisotropic filtering

     

    OpenGL 4.1 Release date: July 26, 2010

     Full API compatibility with OpenGL ES 2.0

    OpenGL 4.3 Release date: August 6, 2012

    • Compute shaders leveraging GPU parallelism within the context of the graphics pipeline
    • Shader storage buffer objects, allowing shaders to read and write buffer objects like image load/store from 4.2, but through the language rather than function calls.
    • Image format parameter queries
    • ETC2/EAC texture compression as a standard feature
    • Full compatibility with OpenGL ES 3.0 APIs
    • Debug abilities to receive debugging messages during application development
    • Texture views to interpret textures in different ways without data replication
    • Increased memory security and multi-application robustness

    Hardware support: Nvidia GeForce 400 series and newer, AMD Radeon HD 5000 Series and newer, Intel HD Graphics in Intel Haswell processors and newer.[36]

     

    OpenGL 4.5 Release date: August 11, 2014

    • OpenGL ES 3.1 API and shader compatibility – to enable the easy development and execution of the latest OpenGL ES applications on desktop systems.

    Hardware support: Nvidia GeForce 400 series and newer, AMD Radeon HD 7000 Series and newer, Intel HD Graphics in Intel Broadwell processors and newer, Tegra K1, and Tegra X1.[44][45

     

    QT opengl

    To summarize which API wrapper to use and when, let’s go through the possible options:

    • QOpenGLFunctionsThe number one choice, unless OpenGL 3/4.x features are desired and the world outside the traditional desktop platforms is not interesting to the application. Cross-platform applications intending to run on the widest possible range of systems are encouraged to to stick to this one, unless they are prepared to guard the usage of OpenGL features not in this class with appropriate runtime checks. QOpenGLFunctions is also what Qt Quick and various other parts of Qt use internally.
    • QOpenGLExtraFunctions – Use it in addition to QOpenGLFunctions whenever OpenGL ES 3.0 and 3.1 features are needed.
    • Versioned wrappers (QOpenGLFunctions_N_M_profile) – When an OpenGL 3/4.x core or compatibility profile is needed and targeting OpenGL ES based systems is not desired at all.

    OpenGL ES 3.0

    Supported by:

    Supported by some recent versions of these GPUs:[29][30]

    https://blog.qt.io/blog/2015/09/09/cross-platform-opengl-es-3-apps-with-qt-5-6/

    https://en.wikipedia.org/wiki/OpenGL#OpenGL_4.5

    Vulkan

    GLES 3.1

     

  • 相关阅读:
    训练20191009 2018-2019 ACM-ICPC, Asia East Continent Finals
    [学习笔记] 有上下界网络流
    [HDU4609] 3-idiots
    [HDU1402] A * B Problem Plus
    [HNOI2017] 礼物
    训练20191007 2017-2018 ACM-ICPC Latin American Regional Programming Contest
    [ZJOI2014] 力
    训练20191005 2017-2018 ACM-ICPC Asia East Continent League Final
    [一本通学习笔记] 树链剖分
    [一本通学习笔记] 快速幂
  • 原文地址:https://www.cnblogs.com/Searchor/p/6855296.html
Copyright © 2020-2023  润新知