summaryrefslogtreecommitdiff
path: root/src/gl/README
diff options
context:
space:
mode:
Diffstat (limited to 'src/gl/README')
-rw-r--r--src/gl/README16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/gl/README b/src/gl/README
new file mode 100644
index 0000000..9e7aed4
--- /dev/null
+++ b/src/gl/README
@@ -0,0 +1,16 @@
+This directory defines an idiomatic C++ interface to parts of OpenGL.
+
+This library requires OpenGL 3.2 with the following extensions:
+ - ARB_texture_storage (or OpenGL >=4.2)
+ - ARB_direct_state_access (or OpenGL >=4.5)
+
+OpenGL is an inherently thread-hostile interface (it uses thread-local state).
+By default, this library will throw if it detects it is being used in a
+thread-unsafe way. However, this checking does carry a performance cost, so
+defining GLPLANET_DISABLE_GL_THREAD_SAFETY_CHECKS disables these checks.
+
+By default, this library throws OpenGL errors as soon as they occur. This makes
+debugging easier, since it associates errors more closely with the operations to
+which they correspond. However, this bookkeeping carries a performance cost;
+defining GLPLANET_DISABLE_AGGRESSIVE_ERROR_CHECKING will reduce it to the
+absolute minimum required for correctness.