「シェーディング言語」の版間の差分

提供:MonoBook
 
(5人の利用者による、間の5版が非表示)
1行目: 1行目:
'''シェーディング言語'''(英語:shading language)とは、[[コンピューターグラフィックス]]における[[シェーダー]]を簡単に扱うことに特化した[[プログラミング言語]]の総称である。
'''シェーディング言語'''([[英語]]:shading language)とは、[[コンピューターグラフィックス]]における[[シェーダー]]を簡単に扱うことに特化した[[プログラミング言語]]の総称である。


== 概要 ==
== 概要 ==
8行目: 8行目:


=== リアルタイムレンダリング ===
=== リアルタイムレンダリング ===
[[リアルタイムレンダリング]]向けのシェーディング言語は、[[GPU]]で実行される[[プログラマブルシェーダー]]を簡単に書けるようにしたものであり、いわゆる[[プログラマー]]が[[GPU]]を直叩きに近い感覚で、かつ[[ハードウェア]]の差異を抽象化して扱えるようにしているものが多い。そのため[[アセンブラ言語]]のようなものから[[C言語]]のようなも、さらには[[C Sharp|C#]]で出来ているものまで存在している。
[[リアルタイムレンダリング]]向けのシェーディング言語は、[[GPU]]で実行される[[プログラマブルシェーダー]]を簡単に書けるようにしたものであり、いわゆる[[プログラマー]]が[[GPU]]を直叩きに近い感覚で、かつ[[ハードウェア]]の差異を抽象化して扱えるようにしているものが多い。そのため[[アセンブラ言語]]のようなものから[[C言語]]のようなもの、さらには[[C Sharp|C#]]で出来ているものまで存在している。


* [[ARBアセンブリ言語]]
* [[ARBアセンブリ言語]]
26行目: 26行目:
* [[SL Sharp|SL#]]
* [[SL Sharp|SL#]]
*: [[C Sharp|C#]]ベースのシェーディング言語である。主に[[Mono]]を用いて[[DirectX]]([[Windows]])と[[OpenGL]]([[Linux]]や[[Mac OS X]]など)に両対応した[[プログラム]]を一発で書きたい場面が想定されており、実行時に動的に[[GLSL]]および[[HLSL]]へ変換するという、他とは一線を画すほど非常に高レベルなシェーディング言語である。
*: [[C Sharp|C#]]ベースのシェーディング言語である。主に[[Mono]]を用いて[[DirectX]]([[Windows]])と[[OpenGL]]([[Linux]]や[[Mac OS X]]など)に両対応した[[プログラム]]を一発で書きたい場面が想定されており、実行時に動的に[[GLSL]]および[[HLSL]]へ変換するという、他とは一線を画すほど非常に高レベルなシェーディング言語である。
* [[WSL (Web Shading Language)]]
*: [[WebGPU]]で採用されているもの。[[HLSL]]がベースになっている。


== 関連項目 ==
== 関連項目 ==
* [[コンピューターグラフィックス]]
* [[コンピューターグラフィックス]]


== 参考文献 ==
{{DEFAULTSORT:しええていんくけんこ}}
{{reflist}}
[[Category:プログラミング言語]]
 
[[Category:シェーディング言語|*]]
{{stub}}
[[category:プログラマブルシェーダー]]

2025年8月1日 (金) 09:11時点における最新版

シェーディング言語英語:shading language)とは、コンピューターグラフィックスにおけるシェーダーを簡単に扱うことに特化したプログラミング言語の総称である。

概要[編集 | ソースを編集]

シェーディング言語は大きくわけて、映画やテレビなどの放送用に用いられれるプロダクションレンダリング向けと、ゲームなどに用いられるリアルタイムレンダリング向けの分類される。

プロダクションレンダリング[編集 | ソースを編集]

プロダクションレンダリング向けのシェーディング言語の多くは芸術家、いわゆるアーティストがプログラミングハードウェアに関する深い知識がなくても扱え、かつ非常に高品質であることを第一としている物が多い。よってレンダリング速度は二の次であり、そこは想像を絶するほど巨大なレンダーファームのパワーを持ってしてでゴリ押しするのが一般的である。

リアルタイムレンダリング[編集 | ソースを編集]

リアルタイムレンダリング向けのシェーディング言語は、GPUで実行されるプログラマブルシェーダーを簡単に書けるようにしたものであり、いわゆるプログラマーGPUを直叩きに近い感覚で、かつハードウェアの差異を抽象化して扱えるようにしているものが多い。そのためアセンブラ言語のようなものからC言語のようなもの、さらにはC#で出来ているものまで存在している。

関連項目[編集 | ソースを編集]