本文主要是介绍[方法] 《鸣潮》/《原神》呼出与锁定光标的功能细节,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
本方法适用于Cinemachine - FreeLook。
1. 锁定与呼出光标的功能实现
// 锁定光标
private void LockMouse() {// 将光标锁定在屏幕中间Cursor.lockState = CursorLockMode.Locked;// 隐藏光标Cursor.visible = false;
}// 呼出光标
private void UnLockMouse() {// 释放光标Cursor.lockState = CursorLockMode.Confined;// 显示光标Cursor.visible = true;
}
2. Alt键对光标控制
2.1 基本逻辑
private void MouseControl() {if (Input.GetKeyDown(KeyCode.LeftAlt)) {// 在游戏中仅使用光标UseMouseCursorOnly();} else if (Input.GetKeyUp(KeyCode.LeftAlt)) {// 在游戏中关闭光标CloseMouseCursor();}
}
2.2 《鸣潮》/《原神》中的细节
public void UseMouseCursorOnly() {UnLockMouse(); // 释放光标inputControl.Disable(); // 关闭键盘输入 (鸣潮是这样,但原神不是)// 停止利用鼠标转动镜头 FreeLook_Camera.m_XAxis.m_InputAxisName = "";FreeLook_Camera.m_YAxis.m_InputAxisName = "";FreeLook_Camera.m_XAxis.m_InputAxisValue = 0;FreeLook_Camera.m_YAxis.m_InputAxisValue = 0;
}public void CloseMouseCursor() {LockMouse(); // 锁定光标inputControl.Enable(); // 启动键盘输入// 重新启动鼠标对镜头的控制FreeLook_Camera.m_XAxis.m_InputAxisName = "Mouse X";FreeLook_Camera.m_YAxis.m_InputAxisName = "Mouse Y";
}
这篇关于[方法] 《鸣潮》/《原神》呼出与锁定光标的功能细节的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!