shader - ntuf/Tips GitHub Wiki

シェーダー

■WebGL
ウェブブラウザで3次元コンピュータグラフィックスを表示させるための標準仕様

■GLSL(OpenGL Shader Language)
OpenGLのシェーディング言語

■HLSL(High Level Shading Language)
DirectXのシェーディング言語

ウェブでは『GLSL』が
Unityでは『HLSL』が使われる
『シェーダー』言語自体は少し書き方が違うだけ、のようです。

Unityで使うのはshaderファイル
言語は以下で記載
・Cg言語(C for Graphics)
・HLSL
他にも、GLSL言語にも互換性をもった変換ができる


■UnityとGLSL,Processing,p5.jsの関連

・UnityでGLSLを動かせるか?
GLSLのファイルをアセットで指定する。

・UnityとProcessing
→Unicessing というアセットがあって、Processingのコードを
Unityに移植することができるらしい。

・Unityとp5.js
→p5.jsからは直接移植は無理っぽいので、
processingに書き換えてUnicessingで変換したほうがいいのかも

・Processingからp5.jsへ移植するには
 java(っぽい言語)をjavascriptに変換する。
Processing にはPythonで記述することもできる。

・Processing でGLSLを動かせるか?
 GLSLを別ファイルにして呼び出す様にすれば使える。
 
Processing や p5.jsでもGLSLを使うことができる。

■p5.js
クリエイティブ・コーディング用のJavaScriptライブラリ

ーーー

OpenGL1.1
OpenGL1.5 2003年
OpenGL2.x 2004年 GLSL1.0に対応。
OpenGL3.x 2008年 
OpenGL3.2 2009年 ジオメトリシェーダ対応
OpenGL4.0 2010年 テッセレーションシェーダ
OpenGL4.3 2012年 GPGPU演算シェーダ
OpenGL4.7 2017年 

DirectX 1.0 1995年
DirectX 9.0 2002年 HLSL導入
DirectX 10.0 2007年 ジオメトリシェーダー対応
DirectX 11.0 2009年 コンピュートシェーダ、テッセレーション等
DirectX 12 2015年

OpenGL 2.x ・・ Direct3D 9 ・・プレステ3レベル
OpenGL 3.x ・・ Direct3D 10
OpenGL 4.x ・・ Direct3D 11 ・・プレステ4レベル
Direct3D ・・・ DirectXの一部。3Dグラフィックスを描画するAPI

頂点処理

⚠️ **GitHub.com Fallback** ⚠️