コード例 #1
0
        private void CreateFirst2Segments()
        {
            CreateNewSegment();
            CreateNewSegment();

            PenultimateSegment.SetFirstStackBasePosition(_startObjectHierarchyWorldOrientedBox.Center);
            PenultimateSegment.SetExtensionDirection(_pathExtensionPlane.LookAxis);
            PenultimateSegment.Extend(1);
            AdjustHeightForEntireSegment(PenultimateSegment);
        }
        private void CreateFirst2Segments()
        {
            CreateNewSegment();
            CreateNewSegment();

            Vector3 camLookAxis           = SceneViewCamera.Camera.transform.forward;
            Vector3 penultimateSegmentDir = _pathExtensionPlane.LookAxis;

            if (Mathf.Abs(Vector3.Dot(camLookAxis, _pathExtensionPlane.LookAxis)) <
                Mathf.Abs(Vector3.Dot(camLookAxis, _pathExtensionPlane.RightAxis)))
            {
                penultimateSegmentDir = _pathExtensionPlane.RightAxis;
            }

            PenultimateSegment.SetFirstStackBasePosition(_startObjectHierarchyWorldOrientedBox.Center);
            PenultimateSegment.SetExtensionDirection(penultimateSegmentDir);
            PenultimateSegment.Extend(1);
            AdjustHeightForEntireSegment(PenultimateSegment);
        }