「GLSL」の版間の差分
Administrator (トーク | 投稿記録) 編集の要約なし |
Administrator (トーク | 投稿記録) 編集の要約なし |
||
| (同じ利用者による、間の1版が非表示) | |||
| 4行目: | 4行目: | ||
GLSLには複数のバージョンが存在し、それらはそもそもの構文からして違うため[[互換性]]がない。[[ネット]]上に転がっている[[ソース]]を[[コピペ]]してもまず動かない。これから学習しようという一般的な[[プログラマー]]はコンパイルエラーで悩まされることになる。 | GLSLには複数のバージョンが存在し、それらはそもそもの構文からして違うため[[互換性]]がない。[[ネット]]上に転がっている[[ソース]]を[[コピペ]]してもまず動かない。これから学習しようという一般的な[[プログラマー]]はコンパイルエラーで悩まされることになる。 | ||
このようなグダグダな状況は[[Steam]]で有名な[[Valve]] | このようなグダグダな状況は[[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 | ||
| 27行目: | 27行目: | ||
*[[GLSLのversionディレクティブ一覧]] | *[[GLSLのversionディレクティブ一覧]] | ||
[[category: | [[category: GLSL]] | ||
2025年9月12日 (金) 01:18時点における最新版
GLSL(語源:OpenGL Shading Language)とは、主にOpenGLで使われるシェーディング言語である。
互換性[編集 | ソースを編集]
GLSLには複数のバージョンが存在し、それらはそもそもの構文からして違うため互換性がない。ネット上に転がっているソースをコピペしてもまず動かない。これから学習しようという一般的なプログラマーはコンパイルエラーで悩まされることになる。
このようなグダグダな状況はSteamで有名なValveの中の人により「今週のGLSLバージョン地獄(GLSL version of the week hell)」と命名された。
- https://cpplover.blogspot.com/2014/05/opengl.html
- http://richg42.blogspot.com/2014/05/things-that-drive-me-nuts-about-opengl.html
備考[編集 | ソースを編集]
当初、VulkanでもGLSLを採用していたが、あまりにGLSLがクソすぎるためか途中からGoogleはVulkanでHLSLを使えるようにした。Vulkanは実質的にAndroidでしか使われていないのでGoogleの方針がすべてになるであろう。
前述の互換性問題などを考慮すると、人間が手で書くものではなく、以下のような使い方の方が現実的である。