/// <summary> /// 添加“摄像机围绕物体旋转” /// </summary> public MCObjectRatation AddCameraCenterObjectRotation() { ObjectRatation = OperaObject.GetComponent <MCObjectRatation>() ?? OperaObject.AddComponent <MCObjectRatation>(); ObjectRatation.SetOperaType(ObjectOperaType.摄像机围绕物体旋转); ObjectRatation.hideFlags = HideFlags.HideInInspector; return(ObjectRatation); }
/// <summary> /// 添加“物体自身旋转” /// </summary> public MCObjectRatation AddSelfRotation() { ObjectRatation = OperaObject.GetComponent <MCObjectRatation>() ?? OperaObject.AddComponent <MCObjectRatation>(); ObjectRatation.SetOperaType(ObjectOperaType.物体自身旋转); ObjectRatation.hideFlags = HideFlags.HideInInspector; return(ObjectRatation); }
/// <summary> /// 操作状态 /// </summary> /// <param name="operaType"></param> public void OnOperaStatus() { if (features.operaType != features.beforeChange) { switch (features.beforeChange) { case ObjectOperaType.无: features.RemoveNone(); _noneController = null; break; case ObjectOperaType.能抓取: features.RemoveCanGrab(); _cangrabController = null; break; case ObjectOperaType.物体自身旋转: features.RemoveRotation(); _objectRatationController = null; break; case ObjectOperaType.摄像机围绕物体旋转: features.RemoveRotation(); _objectRatationController = null; break; case ObjectOperaType.自定义: features.RemoveCustomize(); _customizeController = null; break; default: break; } features.beforeChange = features.operaType; } switch (features.operaType) { case ObjectOperaType.无: if (_noneController == null) { _noneController = features.AddNone(); } break; case ObjectOperaType.能抓取: if (_cangrabController == null) { _cangrabController = features.AddCanGrab(); } break; case ObjectOperaType.物体自身旋转: if (_objectRatationController == null) { _objectRatationController = features.AddSelfRotation(); } break; case ObjectOperaType.摄像机围绕物体旋转: if (_objectRatationController == null) { _objectRatationController = features.AddCameraCenterObjectRotation(); } break; case ObjectOperaType.自定义: if (_customizeController == null) { _customizeController = features.AddCustomize(); } break; default: break; } }