【问题标题】:Unity, animation playing repeatedly without inputunity,动画重复播放,无需输入
【发布时间】:2020-04-26 17:59:06
【问题描述】:

我正在尝试在 Unity 中制作游戏。我对编码很陌生,但我有一个角色移动脚本。但是,当我按下播放键时,角色会快速进出蹲下和空闲动画。当我按下蹲下键时,角色蹲下并且故障停止,但只要我松开它就会恢复。这是我的整个脚本。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerMovement : MonoBehaviour
{

    public CharacterController2D controller;
    public Animator animator;

    float horizontalMove = 0f;

    public float runSpeed = 40f;

    bool jump = false;
    bool crouch = false;

    // Update is called once per frame
    void Update()
    {
        horizontalMove = Input.GetAxisRaw("Horizontal") * runSpeed;

        animator.SetFloat("Speed", Mathf.Abs (horizontalMove));

        if (Input.GetButtonDown("Jump"))
        {
            jump = true;
            animator.SetBool("IsJumping", true);
        }

        if (Input.GetButtonDown("Crouch"))
        {
            crouch = true;
        }
        else if (Input.GetButtonUp("Crouch"))
        {
            crouch = false;
        }
    }
    public void OnLanding()
    {
        animator.SetBool("IsJumping", false);
    }

    public void OnCrouching(bool isCrouching)
    {
        animator.SetBool("IsCrouching", isCrouching);
    }
        void FixedUpdate()
        {
            //Move our character
            controller.Move(horizontalMove * Time.fixedDeltaTime, crouch, jump);
        jump = false;

        }
    }

在 Unity 动画师中,动画只是快速启动。如果这是一个简单的解决方法,请原谅我。任何帮助将不胜感激。

编辑- 在动画器中,名为“IsCrouching”的参数会闪烁,无论我是否按下键。

【问题讨论】:

  • 除了你永远不会取消跳转之外,检查你的动画设置,你可以在运行时观看它们,看看设置了什么,看看触发了什么,并检查状态以了解原因

标签: c# unity3d animation


【解决方案1】:

我看到你看了 Brackeys 教程。您可能没有设置正确的转换条件。再次查看此片段中的视频:2D Animation in Unity (Tutorial) - 16:52

【讨论】:

  • 我确实看过那个教程。从新手的角度来看,信息量很大。无论哪种方式,我都一遍又一遍地进出这些设置,甚至重做了几次。起初我以为这也是问题,但我仍然找不到。
【解决方案2】:

转到 Player -> Character Control 2D -> What is Ground 并取消选择 Player。 否则你的玩家会躲在自己下面。

【讨论】:

  • 您能详细说明一下吗?
  • 如果播放器与自身发生碰撞,您会遇到类似这样的奇怪错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-21
  • 1970-01-01
  • 1970-01-01
  • 2022-01-23
  • 2018-06-02
相关资源
最近更新 更多