diff options
author | chai <chaifix@163.com> | 2022-04-20 10:50:04 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2022-04-20 10:50:04 +0800 |
commit | b18eb9e8b28fc56438760bc7f1823fdeabe979db (patch) | |
tree | b0361b56dc09495d45e7f165971ff70849db4721 /AlienSurvival/Assets/Scripts/Physics | |
parent | ba49cb4da7cae683585cc34b7adba46429c22af9 (diff) |
* topdown transform
Diffstat (limited to 'AlienSurvival/Assets/Scripts/Physics')
-rw-r--r-- | AlienSurvival/Assets/Scripts/Physics/Editor/TopDownTransformInspector.cs | 10 | ||||
-rw-r--r-- | AlienSurvival/Assets/Scripts/Physics/TopDownTransform.cs | 9 |
2 files changed, 16 insertions, 3 deletions
diff --git a/AlienSurvival/Assets/Scripts/Physics/Editor/TopDownTransformInspector.cs b/AlienSurvival/Assets/Scripts/Physics/Editor/TopDownTransformInspector.cs index b1139f2..b1ceaab 100644 --- a/AlienSurvival/Assets/Scripts/Physics/Editor/TopDownTransformInspector.cs +++ b/AlienSurvival/Assets/Scripts/Physics/Editor/TopDownTransformInspector.cs @@ -32,14 +32,18 @@ public class TopDownTransformInspector : Editor //https://answers.unity.com/questions/463207/how-do-you-make-a-custom-handle-respond-to-the-mou.html private void OnSceneGUI() { + Vector3 pos3d = m_TopDownTransform.Get3DPosition(); + + float arrowSize = 2f; + Handles.color = Handles.xAxisColor; - m_TopDownTransform.x = EditorHandlesHelper.ScaleValue(m_TopDownTransform.x, m_TopDownTransform.Get3DPosition(), Vector3.right, 1f, Handles.ConeHandleCap, Quaternion.Euler(0, 90, 0), 1f, 0.1f); + m_TopDownTransform.x += EditorHandlesHelper.PositionArrow(pos3d, Vector3.right, 1f, arrowSize).x; Handles.color = Handles.yAxisColor; - m_TopDownTransform.y = EditorHandlesHelper.ScaleValue(m_TopDownTransform.y, m_TopDownTransform.Get3DPosition(), Vector3.up, 1f, Handles.ConeHandleCap, Quaternion.Euler(-90, 0, 0), 1f, 0.1f); + m_TopDownTransform.y -= EditorHandlesHelper.PositionArrow(pos3d, Vector3.up, 1f, arrowSize).y; Handles.color = Handles.zAxisColor; - m_TopDownTransform.z = EditorHandlesHelper.ScaleValue(m_TopDownTransform.z, m_TopDownTransform.Get3DPosition() + new Vector3(0, -1.1f, 0), Vector3.up, 1f, Handles.ConeHandleCap, Quaternion.Euler(-90, 0, 0), 1f, 0.1f); + m_TopDownTransform.z -= EditorHandlesHelper.PositionArrow(pos3d + new Vector3(0, -m_TopDownTransform.z - 0.1f, 0), Vector3.up, m_TopDownTransform.z, arrowSize, true).y; } diff --git a/AlienSurvival/Assets/Scripts/Physics/TopDownTransform.cs b/AlienSurvival/Assets/Scripts/Physics/TopDownTransform.cs index 3bb51b1..d93a453 100644 --- a/AlienSurvival/Assets/Scripts/Physics/TopDownTransform.cs +++ b/AlienSurvival/Assets/Scripts/Physics/TopDownTransform.cs @@ -91,6 +91,15 @@ public class TopDownTransform : MonoBehaviour return pos; } + public Vector3 GetGround3DPosition() + { + Vector3 pos = new Vector3(); + pos.x = m_LocalPosition.x; + pos.y = m_LocalPosition.y ; + pos.z = transform.position.z; + return pos; + } + #if UNITY_EDITOR private void OnDrawGizmos() { |