「GLSL」の版間の差分

提供:MonoBook
編集の要約なし
4行目: 4行目:
GLSLには複数のバージョンが存在し、それらはそもそもの構文からして違うため[[互換性]]がない。[[ネット]]上に転がっている[[ソース]]を[[コピペ]]してもまず動かない。これから学習しようという一般的な[[プログラマー]]はコンパイルエラーで悩まされることになる。
GLSLには複数のバージョンが存在し、それらはそもそもの構文からして違うため[[互換性]]がない。[[ネット]]上に転がっている[[ソース]]を[[コピペ]]してもまず動かない。これから学習しようという一般的な[[プログラマー]]はコンパイルエラーで悩まされることになる。


このようなグダグダな状況は[[Steam]]で有名な[[Valve]]の中の人により「今週のGLSLバージョン地獄( GLSL version of the week hell)」と命名された。
このようなグダグダな状況は[[Steam]]で有名な[[Valve]]の中の人により「今週のGLSLバージョン地獄(GLSL version of the week hell)」と命名された。
*https://cpplover.blogspot.com/2014/05/opengl.html
*https://cpplover.blogspot.com/2014/05/opengl.html
*http://richg42.blogspot.com/2014/05/things-that-drive-me-nuts-about-opengl.html
*http://richg42.blogspot.com/2014/05/things-that-drive-me-nuts-about-opengl.html

2024年8月26日 (月) 03:04時点における版

GLSL(語源:OpenGL Shading Language)とは、主にOpenGLで使われるシェーディング言語である。

互換性

GLSLには複数のバージョンが存在し、それらはそもそもの構文からして違うため互換性がない。ネット上に転がっているソースコピペしてもまず動かない。これから学習しようという一般的なプログラマーはコンパイルエラーで悩まされることになる。

このようなグダグダな状況はSteamで有名なValveの中の人により「今週のGLSLバージョン地獄(GLSL version of the week hell)」と命名された。

備考

当初、VulkanでもGLSLを採用していたが、あまりにGLSLがクソすぎるためか途中からGoogleVulkanHLSLを使えるようにした。Vulkanは実質的にAndroidでしか使われていないのでGoogleの方針がすべてになるであろう。

前述の互換性問題などを考慮すると、人間が手で書くものではなく、以下のような使い方の方が現実的である。

逆コンパイラVulkanの中の人が開発してくれている。

関連項目