This page describes the features and status of Mesa's support for the
`OpenGL Shading Language <https://opengl.org/documentation/glsl/>`__.
-Contents
-
-- `Environment variables <#envvars>`__
-- `GLSL 1.40 support <#support>`__
-- `Unsupported Features <#unsup>`__
-- `Implementation Notes <#notes>`__
-- `Programming Hints <#hints>`__
-- `Stand-alone GLSL Compiler <#standalone>`__
-- `Compiler Implementation <#implementation>`__
-- `Compiler Validation <#validation>`__
-
.. _envvars:
Environment Variables
Notably, this captures linked GLSL shaders - with all stages together -
as well as ARB programs.
-.. _support:
-
GLSL Version
------------
- GL_ARB_fragment_coord_conventions
- GL_ARB_shader_bit_encoding
-.. _unsup:
-
Unsupported Features
--------------------
All other major features of the shading language should function.
-.. _notes:
-
Implementation Notes
--------------------
These issues will be addressed/resolved in the future.
-.. _hints:
-
Programming Hints
-----------------
float x = inversesqrt(y);
-.. _standalone:
-
Stand-alone GLSL Compiler
-------------------------
any header or separator
- **--version** - [Mandatory] define the GLSL version to use
-.. _implementation:
-
Compiler Implementation
-----------------------
(see prog_execute.c) or translated into a specific hardware architecture
(see drivers/dri/i915/i915_fragprog.c for example).
-.. _validation:
-
Compiler Validation
-------------------