【Unity/ShaderLab】オブジェクトのワールド座標を取得する

ネコニウム研究所

PCを利用したモノづくりに関連する情報や超個人的なナレッジを掲載するブログ

【Unity/ShaderLab】オブジェクトのワールド座標を取得する

2023-2-15 | ,

UnityのShaderLabでオブジェクトのワールド座標を取得したい!

概要

この記事では、UnityのShaderLabでオブジェクトのワールド座標を取得する手順を掲載する。

公式リファレンスにコードが載ってなかったので覚書としてこの記事を残す。

仕様書

環境

  • Unity 2022.2.4f1

手順書

オブジェクトのワールド座標のX軸、Y軸、Z軸をを取得して、float4に格納するサンプル。

float4 objWorldPosition = mul(unity_ObjectToWorld, float4(0, 0, 0, 1));

まとめ(感想文)

「オブジェクトのスケールの値を取得」に関する記事で下記のようなことを書いたんだけども

その後、Shader Graphから生成されるコードをEditorで確認できることを知った私。(ノードの上で右クリック->「Show Generated Code」)

1つのノードだけでもまあまあのボリュームのコードが表示されてるんで、初学者にはちと厳しい感じだった。