public override void Redraw(EditorSpatialGizmo gizmo)
    {
        gizmo.Clear();
        var spatial = gizmo.GetSpatialNode();

        var lines = new List <Vector3>();

        lines.Add(new Vector3(0, 1, 0));
        // lines.Add(new Vector3(0, spatial.my_custom_value, 0));

        var handles = new List <Vector3>();

        handles.Add(new Vector3(0, 1, 0));
        //handles.Add(new Vector3(0, spatial.my_custom_value, 0));

        gizmo.AddLines(lines.ToArray(), GetMaterial("main", gizmo), false);
        gizmo.AddHandles(handles.ToArray(), GetMaterial("handles", gizmo));
    }
Example #2
0
    public override void Redraw(EditorSpatialGizmo gizmo)
    {
        if (!Engine.EditorHint)
        {
            return;
        }

        return;

        gizmo.Clear();

        var spatial = gizmo.GetSpatialNode() as VehicleRigidWheel;
        var t       = spatial.GlobalTransform;

        var p1 = t.origin + t.basis.y * VehicleRigidWheel.k_ExtraRayLength;
        var p2 = t.origin - t.basis.y * (spatial.RayLength - VehicleRigidWheel.k_ExtraRayLength);

        var lines = new List <Vector3>();

        lines.Add(spatial.ToLocal(p1));
        lines.Add(spatial.ToLocal(p2));


        int skip = 10;

        gizmo.AddLines(lines.ToArray(), GetMaterial("front", gizmo), false, Colors.Red);
        lines.Clear();

        for (int ix = 0; ix < 360; ix += skip)
        {
            var ra = Mathf.Deg2Rad(ix);
            var rb = Mathf.Deg2Rad(ix + skip);

            var a = new Vector2(Mathf.Sin(ra), Mathf.Cos(ra)) * spatial.radius;
            var b = new Vector2(Mathf.Sin(rb), Mathf.Cos(rb)) * spatial.radius;

            lines.Add(new Vector3(0, a.x, a.y));
            lines.Add(new Vector3(0, b.x, b.y));
        }


        gizmo.AddLines(lines.ToArray(), GetMaterial("front", gizmo), false, Colors.Yellow);
    }