public static void DrawGizmos(BGCcCollider3DBox collider3DBox, GizmoType gizmoType)
        {
            if (!collider3DBox.ShowIfNotSelected)
            {
                return;
            }

            collider3DBox.FillChildrenColliders(TempColliders);

            if (TempColliders.Count == 0)
            {
                return;
            }

            BGEditorUtility.SwapGizmosColor(collider3DBox.CollidersColor, () =>
            {
                foreach (var collider in TempColliders)
                {
                    var colliderTransform = collider.transform;

                    var oldMatrix  = Gizmos.matrix;
                    Gizmos.matrix *= Matrix4x4.TRS(colliderTransform.position, colliderTransform.rotation, colliderTransform.lossyScale);
                    Gizmos.DrawWireCube(collider.center, collider.size);
                    Gizmos.matrix = oldMatrix;
                }
            });

            TempColliders.Clear();
        }
Esempio n. 2
0
    public Path(Vector3 pos, GameManager game, int index = 0)
    {
        this.index = index;
        this.game  = game;

        gameObject = new GameObject();
        gameObject.transform.position = pos;

        gameObject.AddComponent <BGCurve>();
        curve = gameObject.GetComponent <BGCurve>();

        gameObject.AddComponent <BGCcCollider3DBox>();
        collider = gameObject.GetComponent <BGCcCollider3DBox>();
        renderer = gameObject.AddComponent <BGCcVisualizationLineRenderer>();

        SetActive();
    }