private static Transform CreateFakeTrackers(string suffix, EmbodyTransformDebugSnapshot snapshot) { if (snapshot == null) { return(null); } var go = new GameObject(_embodyDebugPrefix + suffix); go.transform.SetParent(SuperController.singleton.worldScaleTransform, false); go.transform.position = snapshot.position; go.transform.eulerAngles = snapshot.rotation; VisualCuesHelper.Cross(Color.white).transform.SetParent(go.transform, false); return(go.transform); }
public void Update(Vector3 offset, Vector3 size) { gameObject.transform.localPosition = offset; _xAxis.localScale = new Vector3(size.x - _width * 2, _width * 0.25f, _width * 0.25f); _zAxis.localScale = new Vector3(_width * 0.25f, _width * 0.25f, size.z - _width * 2); _frontHandle.localScale = new Vector3(_width * 3, _width * 3, _width * 3); _frontHandle.transform.localPosition = Vector3.forward * size.z / 2; _leftHandle.localScale = new Vector3(_width * 3, _width * 3, _width * 3); _leftHandle.transform.localPosition = Vector3.left * size.x / 2; _rightHandle.localScale = new Vector3(_width * 3, _width * 3, _width * 3); _rightHandle.transform.localPosition = Vector3.right * size.x / 2; VisualCuesHelper.DrawEllipse(_ellipse, new Vector2(size.x / 2f, size.z / 2f)); }
private LineRenderer CreateHandVisualCue(List <GameObject> visualCueLinePointIndicators) { var lineGo = new GameObject(); var line = VisualCuesHelper.CreateLine(lineGo, Color.yellow, 0.002f, VisualCueLineIndices.Count, true); _cues.Add(lineGo); for (var i = 0; i < VisualCueLineIndices.Count; i++) { var p = VisualCuesHelper.CreatePrimitive(null, PrimitiveType.Cube, Color.yellow); p.transform.localScale = new Vector3(0.02f, 0.02f, 0.02f); visualCueLinePointIndicators.Add(p); } return(line); }
public ControllerAnchorPointVisualCue(Transform parent, Color color) { var go = new GameObject(); _xAxis = VisualCuesHelper.CreatePrimitive(go.transform, PrimitiveType.Cube, Color.red).transform; _zAxis = VisualCuesHelper.CreatePrimitive(go.transform, PrimitiveType.Cube, Color.blue).transform; _frontHandle = VisualCuesHelper.CreatePrimitive(go.transform, PrimitiveType.Cube, color).transform; _leftHandle = VisualCuesHelper.CreatePrimitive(go.transform, PrimitiveType.Cube, color).transform; _rightHandle = VisualCuesHelper.CreatePrimitive(go.transform, PrimitiveType.Cube, color).transform; _ellipse = VisualCuesHelper.CreateEllipse(go, color, _width); if (_ellipse == null) { throw new NullReferenceException("Boom"); } gameObject = go; gameObject.transform.parent = parent; gameObject.transform.localPosition = Vector3.zero; gameObject.transform.localRotation = Quaternion.identity; }
public void Update(Vector3 offset, Vector3 scale) { gameObject.transform.localPosition = offset; var size = new Vector2(_baseCueSize * scale.x, _baseCueSize * scale.z); _xAxis.localScale = new Vector3(size.x - _width * 2, _width * 0.25f, _width * 0.25f); _zAxis.localScale = new Vector3(_width * 0.25f, _width * 0.25f, size.y - _width * 2); _frontHandle.localScale = new Vector3(_width * 3, _width * 3, _width * 3); _frontHandle.transform.localPosition = Vector3.forward * size.y / 2; _leftHandle.localScale = new Vector3(_width * 3, _width * 3, _width * 3); _leftHandle.transform.localPosition = Vector3.left * size.x / 2; _rightHandle.localScale = new Vector3(_width * 3, _width * 3, _width * 3); _rightHandle.transform.localPosition = Vector3.right * size.x / 2; if (_ellipse == null) { throw new NullReferenceException("Bam"); } VisualCuesHelper.DrawEllipse(_ellipse, new Vector2(size.x / 2f, size.y / 2f)); }