我正在使用 Opsive 的第三人称控制器资产。它是一个相当复杂的第三人称控制器,可以控制动画、损坏、移动、输入等。 http://opsive.com/assets/ThirdPersonController/documentation.php
我想更新 ControllerHandler.cs 脚本以使角色朝着角色所面对的方向移动,而不管相机方向如何。(以旧生化危机游戏的风格)
在原始脚本中,角色将相对于相机所面对的方向向前移动。
我收到了一些建议来更改脚本中的一行,但是随着更改,角色会朝着一个固定的方向前进。(EG:当我用 D 键向右转,然后按 W 向前移动时,角色会回到原来面对的方向并朝那个方向移动。)
这是脚本的原始部分:
#if ENABLE_MULTIPLAYER
if ( isLocalPlayer) {
#endif
if (m_Controller.Movement == RigidbodyCharacterController.MovementType.Combat || m_Controller.Movement == RigidbodyCharacterController.MovementType.Adventure) {
m_LookRotation = m_CameraTransform.rotation;
这是有人告诉我将其更改为:
#if ENABLE_MULTIPLAYER
if ( isLocalPlayer) {
#endif
if (m_Controller.Movement == RigidbodyCharacterController.MovementType.Combat || m_Controller.Movement == RigidbodyCharacterController.MovementType.Adventure) {
m_LookRotation = Quaternion.Euler(PlayerInput.GetAxisRaw(Constants.YawInputName), 0, 0);
不幸的是,这并没有达到我想要的结果。
任何帮助将不胜感激。谢谢!
这是控制器脚本的链接: https ://docs.google.com/document/d/1B4sstqtCqRMCLuHuxEuA9I7tO_3W4aHqEZwr73uFDjY/edit?usp=sharing