「GLSL」を編集中

ナビゲーションに移動 検索に移動

警告: ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。ログインまたはアカウントを作成すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。

この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。

最新版 編集中の文章
1行目: 1行目:
 
'''GLSL'''(語源:OpenGL Shading  Language)とは、主に[[OpenGL]]で使われる[[シェーディング言語]]である。
 
'''GLSL'''(語源:OpenGL Shading  Language)とは、主に[[OpenGL]]で使われる[[シェーディング言語]]である。
  
==互換性==
+
== 互換性 ==
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
 
*http://richg42.blogspot.com/2014/05/things-that-drive-me-nuts-about-opengl.html
 
  
==備考==
+
* https://cpplover.blogspot.com/2014/05/opengl.html
当初、[[Vulkan]]でもGLSLを採用していたが、あまりにGLSLがクソすぎるためか途中から[[Google]]は[[Vulkan]]で[[HLSL]]を使えるようにした。[[Vulkan]]は実質的に[[Android]]でしか使われていないので[[Google]]の方針がすべてになるであろう。
+
* http://richg42.blogspot.com/2014/05/things-that-drive-me-nuts-about-opengl.html
  
*[[DirectX Shader CompilerでSPIR-Vを出力する]]
+
== 備考 ==
 +
あまりにGLSLがクソすぎて[[Google]]は[[Vulkan]]で[[HLSL]]を使えるようにした。[[Vulkan]]は実質的に[[Android]]でしか使われていないので[[Google]]の方針がすべてになるであろう。
  
前述の[[互換性]]問題などを考慮すると、人間が手で書くものではなく、以下のような使い方の方が現実的である。
+
* [[DirectX Shader CompilerでSPIR-Vを出力する]]
  
*[[HLSL]]で書いて
+
前述の互換性問題などを考慮すると、人間が手で書くものではなく、以下のような使い方の方が現実的である。
*[[SPIR-V]]に[[コンパイル]]して
 
*[[GLSL]]に[[逆コンパイル]]する
 
  
[[逆コンパイラ]][[Vulkan]]の中の人が開発してくれている。
+
* [[HLSL]]で書いて
 +
* [[SPIR-V]]に[[コンパイル]]して
 +
* [[GLSL]]に[[逆コンパイル]]する
  
*[[SPIR-VからGLSLを生成する]]
+
逆コンパイラはVulkanの中の人が開発してくれている。
*[[SPIR-VからHLSLを生成する]]
 
  
==関連項目==
+
* [[SPIR-VからGLSLを生成する]]
*[[GLSLのversionディレクティブ一覧]]
 
  
[[category: コンピューター・グラフィックス]]
+
* [[SPIR-VからHLSLを生成する]]
[[category: 3DCG]]
+
 
[[category: シェーディング言語]]
+
== 関連項目 ==
 +
 
 +
* [[GLSLのversionディレクティブ一覧]]

MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細はMonoBook:著作権を参照)。 著作権保護されている作品は、許諾なしに投稿しないでください!

このページを編集するには、下記の確認用の質問に回答してください (詳細):

取り消し 編集の仕方 (新しいウィンドウで開きます)