「AGSL」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
(ページの作成:「'''AGSL''' (語源:Android Graphcis Shading Language)とは、Android 13に搭載されたAndroid独自のシェーディング言語および実行環境…」)
 
1行目: 1行目:
 
'''AGSL''' (語源:Android Graphcis Shading Language)とは、[[Android 13]]に搭載された[[Android]]独自の[[シェーディング言語]]および実行環境です。
 
'''AGSL''' (語源:Android Graphcis Shading Language)とは、[[Android 13]]に搭載された[[Android]]独自の[[シェーディング言語]]および実行環境です。
  
大雑把にいえばAGSLは[[RenderScript]]の後続APIです。
+
大雑把にいえばAGSLは[[RenderScript]]の後続[[API]]です。
 
RenderScriptは[[Android 12]]で廃止されて「[[Vulkan]]使え」となっていました。
 
RenderScriptは[[Android 12]]で廃止されて「[[Vulkan]]使え」となっていました。
 
しかし[[Vulkan]]は前準備が[[Direct3D]]や[[Metal]]の比ではないくらい面倒だという致命的な問題を抱えていました。Vulkanを利用するためには初期化処理だけで何百行もの[[ソースコード]]を書かねばならないという頭のおかしさでした。そんなもの誰も使うはずないですね。
 
しかし[[Vulkan]]は前準備が[[Direct3D]]や[[Metal]]の比ではないくらい面倒だという致命的な問題を抱えていました。Vulkanを利用するためには初期化処理だけで何百行もの[[ソースコード]]を書かねばならないという頭のおかしさでした。そんなもの誰も使うはずないですね。

2023年11月6日 (月) 07:25時点における版

AGSL (語源:Android Graphcis Shading Language)とは、Android 13に搭載されたAndroid独自のシェーディング言語および実行環境です。

大雑把にいえばAGSLはRenderScriptの後続APIです。 RenderScriptはAndroid 12で廃止されて「Vulkan使え」となっていました。 しかしVulkanは前準備がDirect3DMetalの比ではないくらい面倒だという致命的な問題を抱えていました。Vulkanを利用するためには初期化処理だけで何百行ものソースコードを書かねばならないという頭のおかしさでした。そんなもの誰も使うはずないですね。

この問題を解決すべくAndroid 13で登場したのがAGSLです。 AGSLはRuntimeShaderクラスにGLSLに似た(簡略化した)ソースコードを流し込むだけで利用できます。 たった1行です。

val shader = RuntimeShader("AGSLのソースコード")

Vulkanで問題になったデバイスの初期化のバカみたいな煩雑さは一切ありません。 そもそもデバイスなどという概念すらありません。  

なお、Android 13以降でしか使えないため、まったく普及していないようです。

外部リンク