Попытка получить поле камеры путем отражения от: https://github.com/Unity-Technologies/UnityCsReference/blob/master/Editor/Mono/Inspector/PreviewRenderUtility.cs/#L158
Раньше это работало, просто делая это:
p_Camera = (Camera)p_Instance.GetType().GetField("m_Camera").GetValue(p_Instance);
Поскольку оно помечено как устаревшее предлагается использовать камеру вместо m_Camera , но она не работает, и они оба возвращают ноль
Весь код:
Type preview = Type.GetType("UnityEditor.PreviewRenderUtility,UnityEditor");
BindingFlags bindingAttr = BindingFlags.Instance | BindingFlags.Public |
BindingFlags.NonPublic;
// Bind method
beginPreview = preview.GetMethod("BeginPreview", bindingAttr);
endPreview = preview.GetMethod("EndPreview", bindingAttr);
// Create a preview
p_Instance = Activator.CreateInstance(preview);
// Get the camera
p_Camera = (Camera)p_Instance.GetType().GetField("m_Camera").GetValue(p_Instance);
Как правильно отразить это? Можно ли как-то получить доступ к полям этого?