public void Sketch(Matrix4x4[] transformations, Color color) { UltiDraw.Begin(); if (transformations.Length != Bones.Length) { Debug.Log("Number of given transformations does not match number of bones."); } else { Action <Bone> recursion = null; recursion = new Action <Bone>((bone) => { Matrix4x4 current = transformations[bone.Index]; if (bone.GetParent() != null) { Matrix4x4 parent = transformations[bone.GetParent().Index]; UltiDraw.DrawLine(parent.GetPosition(), current.GetPosition(), color); } UltiDraw.DrawCube(current.GetPosition(), current.GetRotation(), 0.02f, color); for (int i = 0; i < bone.Childs.Length; i++) { recursion(bone.GetChild(i)); } }); foreach (Bone bone in GetRootBones()) { recursion(bone); } } UltiDraw.End(); }
public void Draw(Color color) { float max = Distances.Max(); float[] distances = new float[Distances.Length]; for (int i = 0; i < distances.Length; i++) { distances[i] = Distances[i].Normalize(0f, max, 1f, 0f); } Vector3 position = Pivot.GetPosition(); Quaternion rotation = Pivot.GetRotation(); UltiDraw.Begin(); Vector3 step = GetStep(); if (Size != Vector3.zero) { UltiDraw.DrawWireCuboid(position, rotation, Size, color); for (int i = 0; i < Points.Length; i++) { if (distances[i] > 0f) { UltiDraw.DrawCuboid(References[i], rotation, step, Color.Lerp(UltiDraw.None, color, distances[i])); } } } UltiDraw.End(); }
void OnRenderObject() { for (int i = 0; i < Values.Length; i++) { Values[i].Dequeue(); Values[i].Enqueue(NN.Model.GetTensor("BY").GetValue(i, 0)); } UltiDraw.Begin(); Vector2 center = new Vector2(X, Y); float border = 0.0025f; UltiDraw.DrawGUIRectangle( center, new Vector2(W + 2f * border / Screen.width * Screen.height, H + 2f * border), UltiDraw.Black.Transparent(0.5f)); UltiDraw.DrawGUIRectangle( center, new Vector2(W, H), UltiDraw.White.Transparent(0.5f)); Color[] colors = UltiDraw.GetRainbowColors(Values.Length); for (int i = 0; i < colors.Length; i++) { DrawControlPoint(center.x - W / 2f, center.y + H / 2f, W, H, Values[i], colors[i]); } //for(int i=0; i<colors.Length; i++) { // Vector2 start = center - new Vector2(width/2f, -height/2f); // UltiDraw.DrawGUIRectangle(start + (float)i/(float)(colors.Length-1)*new Vector2(width, 0f), new Vector2(0.025f, 0.025f), colors[i]); //} UltiDraw.End(); }
void OnRenderObject() { if (Root == null) { Root = transform; } /* * UnityGL.Start(); * UnityGL.DrawGUICircle(0.5f, 0.85f, 0.075f, Utility.Black.Transparent(0.5f)); * Quaternion rotation = Quaternion.AngleAxis(-360f * Phase / (2f * Mathf.PI), Vector3.forward); * Vector2 a = rotation * new Vector2(-0.005f, 0f); * Vector2 b = rotation *new Vector3(0.005f, 0f); * Vector3 c = rotation * new Vector3(0f, 0.075f); * UnityGL.DrawGUITriangle(0.5f + a.x/Screen.width*Screen.height, 0.85f + a.y, 0.5f + b.x/Screen.width*Screen.height, 0.85f + b.y, 0.5f + c.x/Screen.width*Screen.height, 0.85f + c.y, Utility.Cyan); * UnityGL.Finish(); */ if (ShowTrajectory) { if (Application.isPlaying) { UltiDraw.Begin(); UltiDraw.DrawLine(Trajectory.Points[RootPointIndex].GetPosition(), Trajectory.Points[RootPointIndex].GetPosition() + TargetDirection, 0.05f, 0f, UltiDraw.Red.Transparent(0.75f)); UltiDraw.DrawLine(Trajectory.Points[RootPointIndex].GetPosition(), Trajectory.Points[RootPointIndex].GetPosition() + TargetVelocity, 0.05f, 0f, UltiDraw.Green.Transparent(0.75f)); UltiDraw.End(); Trajectory.Draw(10); } } if (!Application.isPlaying) { Character.FetchTransformations(Root); } Character.Draw(); if (ShowVelocities) { if (Application.isPlaying) { UltiDraw.Begin(); for (int i = 0; i < Joints.Length; i++) { Character.Segment segment = Character.FindSegment(Joints[i].name); if (segment != null) { UltiDraw.DrawArrow( Joints[i].position, Joints[i].position + Velocities[i] * 60f, 0.75f, 0.0075f, 0.05f, UltiDraw.Cyan.Transparent(0.5f) ); } } UltiDraw.End(); } } }
public void Draw(Color color, bool references = false, bool distribution = false) { if (Size == 0f) { return; } Vector3 position = Pivot.GetPosition(); Quaternion rotation = Pivot.GetRotation(); float height = GetHeight(); UltiDraw.Begin(); UltiDraw.DrawWireCylinder(position + rotation * new Vector3(0f, 0.25f * height, 0f), rotation, new Vector3(Size, 0.5f * height, Size), UltiDraw.Black); if (references) { Color reference = UltiDraw.Black.Opacity(0.05f); for (int i = 0; i < Points.Length; i++) { UltiDraw.DrawSphere(References[i], Quaternion.identity, 2f * Radius[i], reference); } } for (int i = 0; i < Points.Length; i++) { if (Occupancies[i] > 0f) { UltiDraw.DrawSphere(References[i], rotation, 2f * Radius[i], Color.Lerp(UltiDraw.None, color, Occupancies[i])); } } if (distribution) { UltiDraw.PlotFunction(new Vector2(0.5f, 0.15f), new Vector2(0.8f, 0.2f), Occupancies, yMin: 0f, yMax: 1f, backgroundColor: UltiDraw.White, lineColor: color); } UltiDraw.End(); }
void Draw() { UltiDraw.Begin(); float window = 0.25f; MotionData.Frame[] frames = GetEditor().Data.GetFrames(Mathf.Clamp(GetEditor().GetState().Timestamp - window / 2f, 0f, GetEditor().Data.GetTotalTime()), Mathf.Clamp(GetEditor().GetState().Timestamp + window / 2f, 0f, GetEditor().Data.GetTotalTime())); List <float[]> values = new List <float[]>(); for (int i = 0; i < States.Count; i++) { values.Add(new float[frames.Length]); } for (int i = 0; i < frames.Length; i++) { float[] stateVector = GetStateVector(frames[i]); for (int j = 0; j < States.Count; j++) { values[j][i] = stateVector[j]; } } UltiDraw.DrawGUIFunctions(0.5f * Vector2.one, Vector2.one, values, 0f, 1f, UltiDraw.DarkGrey, UltiDraw.GetRainbowColors(States.Count)); UltiDraw.End(); }
void OnRenderObject() { if (!Application.isPlaying) { return; } if (!Visualise) { return; } if (!Setup()) { return; } if (Background.GetSize() != Vector2.zero) { UltiDraw.Begin(); UltiDraw.DrawGUIRectangle(Background.GetPosition(), Background.GetSize(), Color.white); UltiDraw.End(); } switch (Mode) { case MODE.Function: DrawFunction(); break; case MODE.Graph: DrawGraph(); break; } }
private void DrawControlPoint(float x, float y, float width, float height, Queue <float> values, Color color) { int _index = 0; float _x = 0f; float _xPrev = 0f; float _y = 0f; float _yPrev = 0f; foreach (float value in values) { _x = x + (float)(_index) / (float)(Frames - 1) * width; _y = y - height + value * height; if (_index > 0) { UltiDraw.DrawGUILine( new Vector2(_xPrev, _yPrev), new Vector2(_x, _y), 0.002f, color ); } _xPrev = _x; _yPrev = _y; _index += 1; } }
protected override void OnRenderObjectDerived() { RootSeries.DrawScene = DrawDebug; StyleSeries.DrawScene = DrawDebug; DribbleSeries.DrawScene = DrawDebug; ContactSeries.DrawScene = DrawDebug; PhaseSeries.DrawScene = DrawDebug; RootSeries.Draw(GetCamera()); StyleSeries.Draw(GetCamera()); DribbleSeries.Draw(GetCamera()); ContactSeries.Draw(GetCamera()); PhaseSeries.Draw(GetCamera()); if (DrawDebug) { if (Carrier && Controller.QueryLogic("Hold") && !Controller.QueryLogic("Move")) { UltiDraw.Begin(); int resolution = 100; for (int i = 0; i < resolution; i++) { Vector3 target = ToHoldTarget(Quaternion.AngleAxis(360f * (float)i / (float)resolution, Vector3.up) * Vector3.forward); UltiDraw.DrawSphere(target.GetRelativePositionFrom(transform.GetWorldMatrix(true)), Quaternion.identity, 0.05f, Color.cyan); } UltiDraw.DrawSphere(ToHoldTarget(Controller.QueryRightJoystickVector()).GetRelativePositionFrom(transform.GetWorldMatrix(true)), Quaternion.identity, 0.1f, Color.black); UltiDraw.End(); } } //Debug Collider // UltiDraw.Begin(); // UltiDraw.DrawWireCylinder(Collider.transform.position + new Vector3(0f, Collider.height/4f, 0f), Collider.transform.rotation, 2f*Collider.radius, Collider.height/2f, UltiDraw.Black); // UltiDraw.End(); }
public void Sketch(Matrix4x4[] transformations, Color color) { if (Bones.Length == 0) { return; } UltiDraw.Begin(); if (transformations.Length != Bones.Length) { for (int i = 0; i < transformations.Length; i++) { UltiDraw.DrawCube(transformations[i], 0.02f, color); } } else { Action <Bone> recursion = null; recursion = new Action <Bone>((bone) => { if (bone.GetParent() != null) { UltiDraw.DrawLine(transformations[bone.GetParent().Index].GetPosition(), transformations[bone.Index].GetPosition(), color); } UltiDraw.DrawCube(transformations[bone.Index], 0.02f, color); for (int i = 0; i < bone.Childs.Length; i++) { recursion(bone.GetChild(i)); } }); recursion(Bones[0]); } UltiDraw.End(); }
protected override void DerivedDraw(MotionEditor editor) { UltiDraw.Begin(); Color[] colors = UltiDraw.GetRainbowColors(Sensors.Length); if (ShowSensors) { for (int i = 0; i < Sensors.Length; i++) { for (int j = 0; j < Sensors[i].Bones.Length; j++) { Quaternion rot = editor.GetActor().FindTransform(Sensors[i].GetBoneName(j)).rotation; Vector3 pos = editor.GetActor().FindTransform(Sensors[i].GetBoneName(j)).position + rot * Sensors[i].Offset; UltiDraw.DrawCube(pos, rot, 0.025f, UltiDraw.Black); UltiDraw.DrawWireSphere(pos, rot, 2f * Sensors[i].Threshold, colors[i].Opacity(0.25f)); if (Sensors[i].GetContact(editor.GetCurrentFrame(), editor.Mirror) == 1f) { UltiDraw.DrawSphere(pos, rot, 2f * Sensors[i].Threshold, colors[i]); } else { UltiDraw.DrawSphere(pos, rot, 2f * Sensors[i].Threshold, colors[i].Opacity(0.125f)); } } } } UltiDraw.End(); }
void OnRenderObject() { UltiDraw.Begin(); if (Selected != null && Collider != null) { if (Collider is BoxCollider) { BoxCollider c = (BoxCollider)Collider; if (Input.GetKey(Translate)) { UltiDraw.DrawWiredCuboid(c.bounds.center, c.transform.rotation, Vector3.Scale(c.transform.lossyScale, c.size), UltiDraw.Black.Transparent(0.25f), UltiDraw.Purple); UltiDraw.DrawTranslateGizmo(c.bounds.center, c.transform.rotation, c.size.magnitude); } if (Input.GetKey(Rotate)) { UltiDraw.DrawWiredCuboid(c.bounds.center, c.transform.rotation, Vector3.Scale(c.transform.lossyScale, c.size), UltiDraw.Black.Transparent(0.25f), UltiDraw.Purple); UltiDraw.DrawRotateGizmo(c.bounds.center, c.transform.rotation, c.size.magnitude); } } } else { Collider collider = Utility.GetSelectedCollider(); if (collider.gameObject == gameObject) { if (collider is BoxCollider) { BoxCollider c = (BoxCollider)collider; UltiDraw.DrawWireCuboid(c.bounds.center, c.transform.rotation, Vector3.Scale(c.transform.lossyScale, c.size), UltiDraw.Black.Transparent(0.5f)); } } } UltiDraw.End(); }
public void Draw(bool gui = true) { UltiDraw.Begin(); if (gui) { List <float[]> functions = new List <float[]>(); for (int i = 0; i < Actions.Length; i++) { float[] function = new float[TimeSeries.Samples.Length]; for (int j = 0; j < function.Length; j++) { function[j] = Values[TimeSeries.Samples[j].Index][i]; } functions.Add(function); } UltiDraw.DrawGUIFunctions(new Vector2(0.875f, 0.875f), new Vector2(0.2f, 0.1f), functions, 0f, 1f, 0.0025f, UltiDraw.DarkGrey, UltiDraw.GetRainbowColors(Actions.Length), 0.0025f, UltiDraw.Black); UltiDraw.DrawGUIRectangle(new Vector2(0.875f, 0.875f), new Vector2(0.005f, 0.1f), UltiDraw.White.Transparent(0.5f)); } for (int i = 0; i < TimeSeries.KeyCount; i++) { // if(i == TimeSeries.KeyCount-1) { float size = Utility.Normalise((float)i / (float)(TimeSeries.KeyCount - 1), 0f, 1f, 0.5f, 1f); Matrix4x4 transformation = Transformations[TimeSeries.GetKey(i).Index]; UltiDraw.DrawWiredSphere(transformation.GetPosition(), Quaternion.LookRotation(transformation.GetForward(), Vector3.up), size * 0.2f, UltiDraw.Magenta.Transparent(0.5f), UltiDraw.Black); UltiDraw.DrawTranslateGizmo(transformation.GetPosition(), Quaternion.LookRotation(transformation.GetForward(), Vector3.up), size * 0.4f); // } } UltiDraw.End(); }
public void DrawSimple(Color color, Matrix4x4[] transformations) { UltiDraw.Begin(); if (DrawSkeleton) { Action <Bone> recursion = null; recursion = new Action <Bone>((bone) => { if (bone.GetParent() != null) { UltiDraw.DrawLine(transformations[bone.GetParent().Index].GetPosition(), transformations[bone.Index].GetPosition(), color); } UltiDraw.DrawCircle(transformations[bone.Index].GetPosition(), 0.02f, Color.Lerp(color, UltiDraw.Black, 0.25f)); for (int i = 0; i < bone.Childs.Length; i++) { recursion(bone.GetChild(i)); } }); if (Bones.Length > 0) { recursion(Bones[0]); } } UltiDraw.End(); }
protected override void DerivedDraw(MotionEditor editor) { DepthMap sensor = GetDepthMap(editor.GetCurrentFrame(), editor.Mirror); sensor.Draw(); if (ShowImage) { UltiDraw.Begin(); UltiDraw.DrawGUIRectangle(Vector2.one / 2f, Vector2.one, UltiDraw.Mustard); Vector2 size = new Vector2(0.5f, 0.5f * Screen.width / Screen.height); for (int x = 0; x < sensor.GetResolution(); x++) { for (int y = 0; y < sensor.GetResolution(); y++) { float distance = Vector3.Distance(sensor.Points[sensor.GridToArray(x, y)], sensor.Pivot.GetPosition()); float intensity = 1f - distance / sensor.GetDistance(); UltiDraw.DrawGUIRectangle( Vector2.one / 2f - size / 2f + new Vector2((float)x * size.x, (float)y * size.y) / (sensor.GetResolution() - 1), size / (sensor.GetResolution() - 1), Color.Lerp(Color.black, Color.white, intensity) ); } } UltiDraw.End(); } }
void OnRenderObject() { if(Application.isPlaying) { if(NN.Parameters == null) { return; } if(ShowTrajectory) { UltiDraw.Begin(); UltiDraw.DrawLine(Trajectory.Points[RootPointIndex].GetPosition(), Trajectory.Points[RootPointIndex].GetPosition() + TargetDirection, 0.05f, 0f, UltiDraw.Red.Transparent(0.75f)); UltiDraw.DrawLine(Trajectory.Points[RootPointIndex].GetPosition(), Trajectory.Points[RootPointIndex].GetPosition() + TargetVelocity, 0.05f, 0f, UltiDraw.Green.Transparent(0.75f)); UltiDraw.End(); Trajectory.Draw(10); } if(ShowVelocities) { UltiDraw.Begin(); for(int i=0; i<Actor.Bones.Length; i++) { UltiDraw.DrawArrow( Actor.Bones[i].Transform.position, Actor.Bones[i].Transform.position + Velocities[i], 0.75f, 0.0075f, 0.05f, UltiDraw.Purple.Transparent(0.5f) ); } UltiDraw.End(); } UltiDraw.Begin(); UltiDraw.DrawGUIHorizontalBar(new Vector2(0.5f, 0.74f), new Vector2(0.25f, 0.025f), UltiDraw.DarkGrey.Transparent(0.5f), 0.0025f, UltiDraw.Black, Trajectory.Points[RootPointIndex].GetVelocity().magnitude / 4f, UltiDraw.DarkGreen); UltiDraw.End(); } }
void Draw() { UltiDraw.Begin(); UltiDraw.SetCurvature(0f); UltiDraw.SetDepthRendering(false); UltiDraw.DrawWiredQuad(new Vector3(0f, 1.5f, 1f), Quaternion.identity, 4.25f, 4.25f, UltiDraw.DarkGrey, UltiDraw.White); UltiDraw.SetCurvature(0.5f); for (int i = 0; i < 5; i++) { UltiDraw.DrawWireSphere(new Vector3(0f, 1.5f, 0f), Quaternion.identity, i * 0.25f, UltiDraw.White); } UltiDraw.DrawSphere(new Vector3(0f, 1.5f, 0f), Quaternion.identity, 2.625f, UltiDraw.Grey.Transparent(0.5f)); UltiDraw.DrawSphere(new Vector3(0f, 1.5f, 0f), Quaternion.identity, 1.95f, UltiDraw.Mustard.Transparent(0.5f)); UltiDraw.DrawSphere(new Vector3(0f, 1.5f, 0f), Quaternion.identity, 1.125f, UltiDraw.Cyan); for (int i = 0; i < 10; i++) { UltiDraw.DrawWireCube(new Vector3(0f, 1.5f, 0f), Quaternion.Euler(0f, 0f, i * 36f + 45f), 1.5f, UltiDraw.White); } UltiDraw.End(); }
public override void GUI(Camera canvas = null) { if (DrawGUI) { UltiDraw.Begin(canvas); UltiDraw.OnGUILabel(Rect.GetCenter() + new Vector2(Rect.W / 2f, Rect.H + 0.04f), Rect.ToScreen(new Vector2(1f, 0.25f)), 0.02f, "Phases", UltiDraw.Black); float xMin = Rect.X; float xMax = Rect.X + Rect.W; float yMin = Rect.Y; float yMax = Rect.Y + Rect.H; for (int b = 0; b < Bones.Length; b++) { float w = (float)b / (float)(Bones.Length - 1); float vertical = w.Normalize(0f, 1f, yMax, yMin); float height = 0.95f * (yMax - yMin) / (Bones.Length - 1); float border = 0.025f * (yMax - yMin) / (Bones.Length - 1); if (!Active[b]) { UltiDraw.OnGUILabel(new Vector2(0.5f * (xMin + xMax), vertical), new Vector2(xMax - xMin, height), 0.015f, "Disabled", UltiDraw.White, UltiDraw.None); } } UltiDraw.End(); } }
void Draw() { UltiDraw.Begin(); UltiDraw.SetCurvature(0f); UltiDraw.DrawQuad(new Vector3(0f, 1f, 3f), Quaternion.identity, 10f, 10f, UltiDraw.DarkGrey); UltiDraw.SetCurvature(0.25f); UltiDraw.SetFilling(1f); UltiDraw.DrawCube(new Vector3(-2f, 1f, 2f), Quaternion.identity, 1f, UltiDraw.Cyan); UltiDraw.SetFilling(0f); UltiDraw.DrawCube(new Vector3(0f, 1f, 2f), Quaternion.identity, 1f, UltiDraw.Cyan); UltiDraw.SetFilling(1f); UltiDraw.DrawSphere(new Vector3(-2f, 1f, 0f), Quaternion.identity, 1f, UltiDraw.Cyan); UltiDraw.SetFilling(0f); UltiDraw.DrawSphere(new Vector3(0f, 1f, 0f), Quaternion.identity, 1f, UltiDraw.Cyan); UltiDraw.End(); Gizmos.color = UltiDraw.Cyan; Gizmos.DrawCube(new Vector3(2f, 1f, 2f), Vector3.one); Gizmos.DrawSphere(new Vector3(2f, 1f, 0f), 0.5f); }
public void Draw(Color boneColor, Color jointColor, float alpha) { UltiDraw.Begin(); if (DrawRoot) { UltiDraw.DrawTranslateGizmo(GetRoot().position, GetRoot().rotation, 0.1f); UltiDraw.DrawSphere(GetRoot().position, GetRoot().rotation, 0.025f, UltiDraw.Black); UltiDraw.DrawLine(Bones[0].Transform.position, GetRoot().position, UltiDraw.Mustard); } if (DrawSkeleton) { Action <Bone> recursion = null; recursion = new Action <Bone>((bone) => { if (bone.GetParent() != null) { //if(bone.GetLength() > 0.05f) { UltiDraw.DrawBone( bone.GetParent().Transform.position, Quaternion.FromToRotation(bone.GetParent().Transform.forward, bone.Transform.position - bone.GetParent().Transform.position) * bone.GetParent().Transform.rotation, 12.5f * BoneSize * bone.GetLength(), bone.GetLength(), boneColor.Transparent(alpha) ); //} } UltiDraw.DrawSphere( bone.Transform.position, Quaternion.identity, 5f / 8f * BoneSize, jointColor.Transparent(alpha) ); for (int i = 0; i < bone.Childs.Length; i++) { recursion(bone.GetChild(i)); } }); if (Bones.Length > 0) { recursion(Bones[0]); } } if (DrawTransforms) { Action <Bone> recursion = null; recursion = new Action <Bone>((bone) => { UltiDraw.DrawTranslateGizmo(bone.Transform.position, bone.Transform.rotation, 0.05f); for (int i = 0; i < bone.Childs.Length; i++) { recursion(bone.GetChild(i)); } }); if (Bones.Length > 0) { recursion(Bones[0]); } } UltiDraw.End(); }
public void Draw(Color boneColor, Color jointColor, float alpha) { UltiDraw.Begin(); if (DrawSkeleton) { Action <Segment, Segment> recursion = null; recursion = new Action <Segment, Segment>((segment, parent) => { if (segment == null) { return; } if (parent != null) { UltiDraw.DrawSphere( parent.GetTransformation().GetPosition(), Quaternion.identity, 5f / 8f * BoneSize, jointColor.Transparent(alpha) ); float distance = Vector3.Distance(parent.GetTransformation().GetPosition(), segment.GetTransformation().GetPosition()); if (distance > 0.05f) { UltiDraw.DrawBone( parent.GetTransformation().GetPosition(), Quaternion.FromToRotation(parent.GetTransformation().GetForward(), segment.GetTransformation().GetPosition() - parent.GetTransformation().GetPosition()) * parent.GetTransformation().GetRotation(), 4f * BoneSize, distance, boneColor.Transparent(alpha) ); } } parent = segment; for (int i = 0; i < segment.GetChildCount(); i++) { recursion(segment.GetChild(Hierarchy, i), parent); } }); recursion(GetRoot(), null); } if (DrawTransforms) { Action <Segment> recursion = null; recursion = new Action <Segment>((segment) => { //UltiDraw.DrawArrow(segment.GetTransformation().GetPosition(), segment.GetTransformation().GetPosition() + 0.05f * (segment.GetTransformation().GetRotation() * Vector3.forward), 0.75f, 0.005f, 0.025f, Color.blue); //UltiDraw.DrawArrow(segment.GetTransformation().GetPosition(), segment.GetTransformation().GetPosition() + 0.05f * (segment.GetTransformation().GetRotation() * Vector3.up), 0.75f, 0.005f, 0.025f, Color.green); //UltiDraw.DrawArrow(segment.GetTransformation().GetPosition(), segment.GetTransformation().GetPosition() + 0.05f * (segment.GetTransformation().GetRotation() * Vector3.right), 0.75f, 0.005f, 0.025f, Color.red); UltiDraw.DrawTranslateGizmo(segment.GetTransformation().GetPosition(), segment.GetTransformation().GetRotation(), 0.05f); for (int i = 0; i < segment.GetChildCount(); i++) { recursion(segment.GetChild(Hierarchy, i)); } }); recursion(GetRoot()); } UltiDraw.End(); }
public override void GUI(Camera canvas = null) { if (DrawGUI) { UltiDraw.Begin(canvas); UltiDraw.OnGUILabel(Rect.GetCenter() + new Vector2(0f, 0.13f), Rect.GetSize(), 0.0175f, "Contacts", UltiDraw.Black); UltiDraw.End(); } }
void OnDrawGizmos() // visualise the joint location { if (Visualise) { UltiDraw.Begin(); UltiDraw.DrawSphere(transform.position, Quaternion.identity, 0.25f, UltiDraw.Cyan.Transparent(0.5f)); UltiDraw.End(); } }
void OnRenderObject() { UltiDraw.Begin(); UltiDraw.DrawArrow(transform.position, parentJoint.position, 0.75f, 0.0075f, 0.05f, UltiDraw.Purple.Transparent(0.5f)); UltiDraw.End(); }
void OnGUI() { if (Draw) { UltiDraw.Begin(Camera); UltiDraw.OnGUILabel(Rect.GetCenter() + new Vector2(0f, 0.175f), new Vector2(0f, 0.2f), 0.02f, "Expert Activation", Color.black); UltiDraw.End(); } }
void OnRenderObject() { if (IsInvalid()) { return; } if (HasChanged()) { for (int i = 0; i < ControlPoints.Length; i++) { ControlPoints[i].position = Utility.ProjectGround(ControlPoints[i].position, LayerMask.GetMask("Ground")); } Create(); } Trajectory.Draw(10); UltiDraw.Begin(); if (Positions.Count > 1) { for (int i = 1; i < Positions.Count; i++) { UltiDraw.DrawLine(Positions[i - 1], Positions[i], 0.025f, UltiDraw.DarkGreen.Transparent(0.75f)); } } UltiDraw.End(); if (Visualise) { UltiDraw.Begin(); for (int i = 10; i < Trajectory.Points.Length - 60; i += 10) { UltiDraw.DrawLine(Trajectory.Points[i - 10].GetPosition(), Trajectory.Points[i].GetPosition(), 0.075f, UltiDraw.Magenta); } //for(int i=0; i<ControlPoints.Length; i++) { // UnityGL.DrawSphere(ControlPoints[i].position, 0.05f, Utility.Cyan.Transparent(0.75f)); //} UltiDraw.End(); } /* * Trajectory.Point pivot = GetClosestTrajectoryPoint(Target.transform.position); * Trajectory.Point[] future = GetFutureTrajectory(pivot); * UnityGL.Start(); * UnityGL.DrawSphere(pivot.GetPosition(), 0.05f, Utility.DarkRed.Transparent(0.75f)); * for(int i=0; i<future.Length; i++) { * UnityGL.DrawSphere(future[i].GetPosition(), 0.025f, Utility.DarkGreen.Transparent(0.75f)); * } * UnityGL.Finish(); */ for (int i = 0; i < ControlPoints.Length; i++) { ControlPoints[i].hasChanged = false; } }
public override void Draw(Camera canvas = null) { if (DrawGUI) { UltiDraw.Begin(canvas); UltiDraw.PlotFunctions(Rect.GetCenter(), Rect.GetSize(), Values, UltiDraw.Dimension.Y, yMin: 0f, yMax: 1f, thickness: 0.0025f); // UltiDraw.GUIRectangle(new Vector2(0.875f, 0.685f), new Vector2(0.005f, 0.1f), UltiDraw.White.Opacity(0.5f)); UltiDraw.End(); } }
void OnDrawGizmos() // visualise the joint location { if (Visualise) { UltiDraw.Begin(); UltiDraw.DrawSphere(transform.position, Quaternion.identity, 0.25f, UltiDraw.Purple.Transparent(0.5f)); UltiDraw.DrawArrow(transform.position, transform.position + (directionToCheck.normalized * distanceToCheck), 0.8f, 0.02f, 0.1f, UltiDraw.Cyan.Transparent(0.5f)); UltiDraw.End(); } }
void OnDrawGizmos() { if (Visualise) { UltiDraw.Begin(); UltiDraw.DrawSphere(transform.position, Quaternion.identity, 0.25f, UltiDraw.Cyan.Transparent(0.5f)); UltiDraw.DrawArrow(GetPivotPosition(), GetPivotPosition() + 0.25f * (transform.rotation), 0.8f, 0.02f, 0.1f, UltiDraw.Cyan.Transparent(0.5f)); UltiDraw.End(); } }
public void Draw() { UltiDraw.Begin(); UltiDraw.DrawTranslateGizmo(Pivot.GetPosition(), Pivot.GetRotation(), 0.1f); for (int i = 0; i < Points.Length; i++) { UltiDraw.DrawLine(Pivot.GetPosition(), Points[i], UltiDraw.DarkGreen.Transparent(0.1f)); UltiDraw.DrawCircle(Points[i], 0.025f, UltiDraw.Orange.Transparent(0.5f)); } UltiDraw.End(); }