SRP触る
Unity2019.3.41fで新規にUnity projectを作る。
とりあえずURP v12.1.7を入れる。
com.unity.render-pipelines.core というのがSRPのコアっぽい。
アセット生成メニュー > Rendering からURPアセットが作れる。
URPAssetとURPRendererAssetが作られる。
Player Setting > Graphics でSRPのアセットを指定したらSRPになる。
https://gyazo.com/1865fc44f1bd58c7e28966795b783e21
この時点でデフォルトのキューブにつけられるマテリアルがBuiltinからURPに変わる。
以下の2つを継承するクラスをそれぞれ用意する
UnityEngine.Rendering.RenderPipeline
UnityEngine.Rendering.RenderPipelineAsset
RenderPipelineAssetはScriptableObjectでRenderPipelineを生成する関数をoverrideする。
シリアライズしたいパラメータをAssetの方で持っておいて、Create関数で自分 or パラメータ群をまとめたstructを渡すなどすることが想定されている。
空のToySRPをセットすると、虚無になる。
https://gyazo.com/240232be6fa754aa89bc293a834abeb9
https://gyazo.com/71bb60dee7dedb23e6fc0568f3753835
Pipeline.Render関数
contextとCameraを使ってよしなにする。
とりあえずこいつの持ってる関数を全部読む。