仅编辑器功能,用于访问和修改探针位置。
探针位置相对于父对象在本地空间中指定。
在运行时,此函数将返回一个空的 Vector3 数组,设置它将不会有任何效果。
using UnityEngine; using UnityEditor;
public class ExampleScript : EditorWindow { private LightProbeGroup lightProbes = null;
[MenuItem("Example/Set Probe Positions")] static void Init() { var window = GetWindowWithRect<ExampleScript>(new Rect(0, 0, 350, 50)); window.Show(); }
void OnGUI() { lightProbes = (LightProbeGroup)EditorGUILayout.ObjectField( "Find Dependency", // string lightProbes, // Object typeof(LightProbeGroup), // Type true);
if (lightProbes) { if (GUILayout.Button("Set Probe Positions")) { Vector3[] positions = new Vector3[4]; positions[0] = new Vector3(0.0f, 0.0f, 0.0f); positions[1] = new Vector3(1.0f, 0.0f, 0.0f); positions[2] = new Vector3(0.0f, 1.0f, 0.0f); positions[3] = new Vector3(1.0f, 1.0f, 1.0f); lightProbes.probePositions = positions; } } else { EditorGUILayout.LabelField("Missing:", "Please select an object first!"); } } }