private void CacheReferences() { roadTreeRemovalSystemUnity = World.DefaultGameObjectInjectionWorld.GetExistingSystem <RoadTreeRemovalSystemUnity>(); roadTreeRemovalSystemPozzer = World.DefaultGameObjectInjectionWorld.GetExistingSystem <RoadTreeRemovalSystemPozzer>(); roadTreeRemovalSystem = World.DefaultGameObjectInjectionWorld.GetExistingSystem <RoadTreeRemovalSystem>(); editor = FindObjectOfType <BezierEditor>(); }
void PropertySetup(SerializedProperty property) { if (_object != null) { return; } _object = new SerializedObject(property.objectReferenceValue); _editor = new BezierEditor(_object); }
public static void DrawEditor(Spline spline, bool pathOnly) { for (int i = 0; i < spline.m_beziers.Length; ++i) { BezierEditor.DrawEditor(spline.m_beziers[i], i > 0 ? spline.m_beziers[i - 1] : null, i < (spline.m_beziers.Length - 1) ? spline.m_beziers[i + 1] : null, pathOnly); } GUIStyle style = new GUIStyle(); style.normal.textColor = Color.red; Handles.color = new Color(0.0f, 0.0f, 0.6f, 1.0f); for (int i = 0; i < spline.m_beziers.Length + 1; ++i) { Vector2 normal; if (i == spline.m_beziers.Length) { normal = Bezier.GetBezierNormal(1.0f, spline.m_beziers[i - 1].m_v0, spline.m_beziers[i - 1].m_t0, spline.m_beziers[i - 1].m_v1, spline.m_beziers[i - 1].m_t1); // Spunk these into 3D Vector3 normal3D = new Vector3(normal.x, 0.0f, normal.y); Vector3 v1 = new Vector3(spline.m_beziers[i - 1].m_v1.x, 0.0f, spline.m_beziers[i - 1].m_v1.y); Handles.DrawLine(v1, v1 + (normal3D * spline.m_widthModifiers[i])); Handles.DrawLine(v1, v1 - (normal3D * spline.m_widthModifiers[i])); Handles.Label(v1 + new Vector3(0.0f, 0.0f, 4.0f), i.ToString(), style); } else { normal = Bezier.GetBezierNormal(0.0f, spline.m_beziers[i].m_v0, spline.m_beziers[i].m_t0, spline.m_beziers[i].m_v1, spline.m_beziers[i].m_t1); Vector3 normal3D = new Vector3(normal.x, 0.0f, normal.y); Vector3 v0 = new Vector3(spline.m_beziers[i].m_v0.x, 0.0f, spline.m_beziers[i].m_v0.y); Handles.DrawLine(v0, v0 + (normal3D * spline.m_widthModifiers[i])); Handles.DrawLine(v0, v0 - (normal3D * spline.m_widthModifiers[i])); Handles.Label(v0 + new Vector3(0.0f, 0.0f, 4.0f), i.ToString(), style); } } }
void OnEnable() { _editor = _editor ?? new BezierEditor(serializedObject); }