public static bool TransparentShadowsEnabled() { if (!UniversalRenderPipeline.asset) { return(false); } ForwardRendererData main = (ForwardRendererData)GetDefaultRenderer(); return(main ? main.shadowTransparentReceive : false); }
/// <summary> /// Retrieves a ForwardRenderer asset in the project, based on GUID /// </summary> /// <param name="assetName"></param> /// <returns></returns> public static ForwardRendererData GetRenderer(string GUID) { #if UNITY_EDITOR string assetPath = AssetDatabase.GUIDToAssetPath(GUID); ForwardRendererData renderer = (ForwardRendererData)AssetDatabase.LoadAssetAtPath(assetPath, typeof(ForwardRendererData)); return(renderer); #else Debug.LogError("PipelineUtilities.GetRenderer() cannot be called in a build, it requires AssetDatabase. References to renderers should be saved beforehand!"); return(null); #endif }
public static void SelectForwardRenderer() { #if URP if (!UniversalRenderPipeline.asset) { return; } System.Reflection.BindingFlags bindings = System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance; ScriptableRendererData[] m_rendererDataList = (ScriptableRendererData[])typeof(UniversalRenderPipelineAsset).GetField("m_RendererDataList", bindings).GetValue(UniversalRenderPipeline.asset); ForwardRendererData main = m_rendererDataList[0] as ForwardRendererData; Selection.activeObject = main; #endif }