修复MGS-Camera插件源代码 无法拖动、旋转、缩放、修改位置、锁死
下载链接:https://download.csdn.net/download/qq_29924789/16589782
TestMGS_AroundAlignCamera.cs
/*
* 功能作用:TestMGS_AroundAlignCamera
* 编写作者:bilibili 贪婪龙 QQ513378627
* 编写时间:2021年4月8日
*/
using MGS.UCamera;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class TestMGS_AroundAlignCamera : AroundAlignCamera
{
/// <summary>
/// 初始拖动位置
/// </summary>
[ContextMenu("InitPosition")]
public void InitPosition()
{
currentDirection = init_currentDirection;
}
/// <summary>
/// 设置拖动位置
/// </summary>
[ContextMenu("SetPosition")]
public void SetPosition(Vector3 v3)
{
currentDirection = v3;
}
/// <summary>
/// 初始旋转角度
/// </summary>
[ContextMenu("InitRotation")]
public void InitRotation()
{
targetAngles = init_targetAngles;
}
/// <summary>
/// 设置旋转角度
/// </summary>
[ContextMenu("SetRotation")]
public void SetRotation(Vector3 v2)
{
targetAngles = v2;
}
[Header("现在拖动位置")]
public Vector3 n_currentDirection;
[Header("现在旋转角度")]
public Vector2 n_targetAngles;
[Header("默认拖动位置")]
public Vector3 init_currentDirection;
[Header("默认旋转角度")]
public Vector2 init_targetAngles;
public bool is_bug = true;
public float n_directionOffset;
public float n_directionSpeed;
public float n_distanceOffset;
public float n_distanceSpeed;
public bool is_linearAdsorbent;
public bool is_IsAligning;
private void Start()
{
init_currentDirection = currentDirection;
init_targetAngles = targetAngles;
}
private void Update()
{
n_currentDirection = currentDirection;
n_targetAngles = targetAngles;
if (is_bug)
{
n_directionOffset = directionOffset = Mathf.Clamp(directionOffset, 0.1f, 99999999);
n_directionSpeed = directionSpeed = Mathf.Clamp(directionSpeed, 0.1f, 99999999);
n_distanceOffset = distanceOffset = Mathf.Clamp(distanceOffset, 0.1f, 99999999);
n_distanceSpeed = distanceSpeed = Mathf.Clamp(distanceSpeed, 0.1f, 99999999);
is_linearAdsorbent = linearAdsorbent = true;
is_IsAligning = IsAligning = false;
}
else
{
n_directionOffset = directionOffset;
n_directionSpeed = directionSpeed;
n_distanceOffset = distanceOffset;
n_distanceSpeed = distanceSpeed;
is_linearAdsorbent = linearAdsorbent;
is_IsAligning = IsAligning;
}
}
}
TestMGS_MouseTranslate.cs
/*
* 功能作用:TestMGS_MouseTranslate
* 编写作者:bilibili 贪婪龙 QQ513378627
* 编写时间:2021年4月8日
*/
using MGS.UCamera;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class TestMGS_MouseTranslate : MouseTranslate
{
/// <summary>
/// 初始拖动位置
/// </summary>
[ContextMenu("InitPosition")]
public void InitPosition()
{
targetOffset = init_targetOffset;
}
/// <summary>
/// 设置拖动位置
/// </summary>
[ContextMenu("SetPosition")]
public void SetPosition(Vector3 v3)
{
targetOffset = v3;
}
[Header("现在拖动位置")]
public Vector3 n_targetOffset;
[Header("默认拖动位置")]
public Vector3 init_targetOffset;
[ContextMenu("Reset_New")]
public void Reset_New()
{
areaSettings.width = 0;
areaSettings.length = 0;
areaSettings.center = this.transform.parent.Find("Center");
targetCamera = Camera.main.transform;
}
private void Start()
{
init_targetOffset = targetOffset;
}
protected override void Update()
{
base.Update();
n_targetOffset = targetOffset;
}
}