graphics-snippets

Resources

Tutorials

LearnOpenGL opengl-tutorial Learning OpenGL with Python

GLSL - OpenGL Shading Language

OpenGL Shading Language 4.60 Specification
HTML - The OpenGL Shading Language, Version 4.60.6

OpenGL ES Shading Language 3.20 Specification
[Core Language (GLSL)][https://www.khronos.org/opengl/wiki/Core_Language_(GLSL)]

GLSL OpenGL Version preprocessor Release Date Specification
1.10 2.0 #version 110 2004-09-07 OpenGL Shading Language 1.10 Specification
1.20 2.1 #version 120 2006-07-02 OpenGL Shading Language 1.20 Specification
1.30 3.0 #version 130 2008-08-11 OpenGL Shading Language 1.30 Specification
1.40 3.1 #version 140 2009-03-24 OpenGL Shading Language 1.40 Specification
1.50 3.2 #version 150 2009-08-03 OpenGL Shading Language 1.50 Specification
3.30 3.3 #version 330 2010-02-12 OpenGL Shading Language 3.30 Specification
4.00 4.0 #version 400 2010-03-11 OpenGL Shading Language 4.00 Specification
4.10 4.1 #version 410 2010-07-26 OpenGL Shading Language 4.10 Specification
4.20 4.2 #version 420 2011-08-08 OpenGL Shading Language 4.20 Specification
4.30 4.3 #version 430 2012-08-06 OpenGL Shading Language 4.30 Specification
4.40 4.4 #version 440 2013-07-22 OpenGL Shading Language 4.40 Specification
4.50 4.5 #version 450 2014-08-11 OpenGL Shading Language 4.50 Specification
4.60 4.6 #version 460 2017-07-03 OpenGL Shading Language 4.60 Specification

OpenGL Shading Language 4.60 Specification (HTML)

OpenGL ES Shading Language

GLSL OpenGLES Version preprocessor Release Date Specification
1.00 ES 2.0 #version 100 es 2007-03-05 OpenGL ES Shading Language 1.00 Specification
3.00 ES 3.0 #version 300 es 2012-08-06 OpenGL ES Shading Language 3.00 Specification
3.10 ES 3.1 #version 310 es 2014-03-17 OpenGL ES Shading Language 3.10 Specification
3.20 ES 3.2 #version 320 es 2015-08-10 OpenGL ES Shading Language 3.20 Specification

OpenGL

OpenGL Wiki
General OpenGL
Category:General OpenGL
OpenGL Loading Library

History of OpenGL
Legacy OpenGL

OpenGL specification - Khronos OpenGL registry
OpenGL 4.6 API Core Profile Specification
OpenGL 4.6 API Compatibility Profile Specification

OpenGL Extension

OpenGL ES

OpenGL ES Specification - Khronos OpenGL ES Registry
OpenGL ES 3.2 Specification

OpenGL SC

Khronos OpenGL SC Registry

WebGL

WebGL Specifications

WebGL 1.0 Specification

This specification describes an additional rendering context and support objects for the HTML 5 canvas element. This context allows rendering using an API that conforms closely to the OpenGL ES 2.0 API.

WebGL 2.0 Specification

This specification describes an additional rendering context and support objects for the HTML 5 canvas element. This context allows rendering using an API that conforms closely to the OpenGL ES 3.0 API.

WebGL and OpenGL Differences

WebGPU

WebGPU

Hardware

NVIDIA Optimus
AmdPowerXpressRequestHighPerformance and Selecting the Best Graphics Device to Run a 3D Application
Selecting the Best Graphics Device to Run a 3D Intensive Application

// Enabling High Performance Graphics Rendering on Optimus Systems (NVIDIA version)
extern "C" { _declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001; }

// Enabling High Performance Graphics Rendering on Enduro Systems (AMD/ATI version)
extern "C" { _declspec(dllexport) DWORD AmdPowerXpressRequestHighPerformance = 0x00000001; }