概述
1. 定义
public enum InputDirection{
NULL,
Right,
Left,
Down,
Up
}
2. 属性
InputDirection m_inputDir = InputDirection.NULL;
bool activeInput = false;
Vector3 m_mousePos;
3. 方法
void GetInputDirection() {
m_inputDir = InputDirection.NULL;
if (Input.GetMouseButtonDown(0)) {
activeInput = true;
m_mousePos = Input.mousePosition;
}
if (Input.GetMouseButton(0) && activeInput) {
Vector3 Dir = Input.mousePosition - m_mousePos;
if (Dir.magnitude > 20) {
if (Mathf.Abs(Dir.x) > Mathf.Abs(Dir.y) & Dir.x > 0)
{
m_inputDir = InputDirection.Right;
}
else if (Mathf.Abs(Dir.x) > Mathf.Abs(Dir.y) & Dir.x < 0)
{
m_inputDir = InputDirection.Left;
}
else if (Mathf.Abs(Dir.x) < Mathf.Abs(Dir.y) & Dir.y > 0)
{
m_inputDir = InputDirection.Up;
}
else if (Mathf.Abs(Dir.x) < Mathf.Abs(Dir.y) & Dir.y < 0)
{
m_inputDir = InputDirection.Down;
}
activeInput = false;
}
}
print(m_inputDir);
}
最后
以上就是畅快玫瑰为你收集整理的Unity3D学习-如何判断鼠标移动方向的全部内容,希望文章能够帮你解决Unity3D学习-如何判断鼠标移动方向所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复