Universal RP環境では、そのPipeline Assetを切り替えることでレンダリングの性質を変化させることが出来ます。変更する場合はいくつかの点に注意する必要があります。
目次
ポイントはQuality Settings
自分が試していて一番気になったのはProject Settings>Graphicsのアセットを切り替えても反応しなかったという点です。
手動で切り替える
手動で切り替える場合、選択中のQuality Settingsのアセットを変更する必要があります。
Graphicsで設定されているアセットが有効の様に思えますが、実際は現在のQualityで指定されたアセットになります。
例えばPCで作業している場合などはQualityはHigh Fidelityが選択されていることが多く、その時のRender Pipeline Assetがセットされている部分のアセットを変更してあげることで表示に反映されます。
Graphics側の設定を反映したい場合
なんらかの環境でGraphics側のアセットを変更し、反映させたい場合は選択されるQuality Settingsのアセットをnoneにします。
こちらが未選択の場合はGrahpics側の設定が反映されます。Qualityごとの設定が無視されることになるので利用する場合は注意してください。
プログラムで変更する方法
変更する場合には下記2パターンが考えられます
- Graphic Settings側を変える
- Quality Settings側を変える
下記スクリプトでは1キーと2キーでそれぞれ変えられるようにしてます。設定状況に応じて使い分けてください
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Rendering;
public class AssetChanger : MonoBehaviour
{
public RenderPipelineAsset renderPipelineAsset;
private void Update()
{
if (Input.GetKeyDown(KeyCode.Alpha1))
{
GraphicsSettings.renderPipelineAsset = renderPipelineAsset;
}
if (Input.GetKeyDown(KeyCode.Alpha2))
{
QualitySettings.renderPipeline = renderPipelineAsset;
}
}
}
コメント