今週のGLSLバージョン地獄
今週のGLSLバージョン地獄(GLSL version of the week hell)とは、Steamの中の人がGLSLの頻繁な仕様変更に怒り狂った話である。
- https://cpplover.blogspot.com/2014/05/opengl.html
- http://richg42.blogspot.com/2014/05/things-that-drive-me-nuts-about-opengl.html
今なお、Linux、Mac、Android、WebGLなどが「標準でGLSL使えます」と掲げているが、どれも「書式が違う」という凄惨な状況になっている。拾ってきたシェーダーのソースコードをコピペしてもまず動きません。
一般的にGLSLは「GPUのデバイスドライバー」で実行時にコンパイルされるが、「メーカーごとに微妙に挙動が違う」という問題も抱えている。そのせいでGoogleはAndroid向けに「汎用的なGLSLを機種依存のGLSLに変換するツール」まで開発している始末であったりする。