Unity(①基础)

添加角色预制体

Prefabs(预制体)Assets/Prefabs/文件夹中找到 PlayerRobot.prefab

将 PlayerRobot.prefab 拖到场景中,放置在地面上。

添加角色控制器

确保你的角色有一个 CharacterController 组件。如果没有,可以在 PlayerRobot 上点击 Add Component,然后搜索并添加 CharacterController 。

调整 CharacterController 的参数,例如 Height 和 Radius ,以适配角色的模型。

设置动画控制器

如果你想让角色有动画,可以使用 Assets/SourceFiles/StarterAssets/ThirdPersonController/Character/Animations 文件夹中的动画。

创建一个 Animator Controller ,并将这些动画设置为角色的动画状态。

在 Unity 的 Assets 文件夹中,右键点击空白处,选择 Create > Animator Controller

给新创建的 Animator Controller 命名,例如 PlayerAnimatorController

双击刚刚创建的 PlayerAnimatorController ,打开 Animator 窗口

将你的动画文件(例如 Idle , Walk_N , Run_N , JumpStart , JumpLand )从 StarterAssets/ThirdPersonController/Character/Animations 文件夹中拖到 Animator 窗口中

右键点击 Idle 动画,选择 Set as Layer Default State

在 Animator 窗口中,右键点击 Idle 动画,选择 Make Transition,然后将箭头拖到 Walk_N 动画

点击每个过渡箭头,在 Inspector 窗口中设置条件(例如速度参数

编写移动脚本

创建一个新的脚本,例如 PlayerMovement.cs ,并将其附加到 PlayerRobot 。

cs 复制代码
using UnityEngine;

public class PlayerMovement : MonoBehaviour
{
    public float speed = 5f;
    private CharacterController controller;

    void Start()
    {
        controller = GetComponent<CharacterController>();
    }

    void Update()
    {
        float horizontal = Input.GetAxis("Horizontal");
        float vertical = Input.GetAxis("Vertical");

        Vector3 direction = new Vector3(horizontal, 0, vertical).normalized;

        if (direction.magnitude >= 0.1f)
        {
            controller.Move(direction * speed * Time.deltaTime);
        }
    }
}

选择 PlayerRobot 对象在场景层级中,点击 PlayerRobot

添加 Animator 组件在 Inspector 窗口中,点击 Add Component 按钮,搜索 Animator ,然后点击添加

设置 Controller 字段添加 Animator 组件后,你会看到一个名为 Controller 的字段。将你创建的 PlayerAnimatorController 拖动到这个字段中

测试角色动画确保你的 PlayerAnimatorController 已正确设置动画状态,并运行场景测试角色动画

机器人碰撞到 Cube 时让它弹出去的效果

相关推荐
Avalon7121 小时前
Unity3D响应式渲染UI框架UniVue
游戏·ui·unity·c#·游戏引擎
风酥糖2 小时前
Godot游戏练习01-第33节-新增会爆炸的敌人
游戏·游戏引擎·godot
ellis19703 小时前
Unity UI性能优化一之插件【Unity UI Optimization Tool】
unity·性能优化
Zik----5 小时前
Unity基础学习笔记(B站视频课整理)
unity·vr
郑寿昌15 小时前
UE5与UE6在Lumen和Nanite的差异解析
游戏引擎·图形渲染·着色器
郝学胜-神的一滴19 小时前
罗德里格斯旋转公式(Rodrigues‘ Rotation Formula)完整推导
c++·unity·godot·图形渲染·three.js·unreal
郑寿昌1 天前
UE6 AI加速Lumen光线追踪降噪技术解析
人工智能·游戏引擎
晴夏。1 天前
GAS下的网络同步的全面分析【超级全面】
游戏引擎·ue·gas·网络同步
田鸡_1 天前
Unity新输入系统(Input System)教学篇
unity·游戏引擎·游戏程序
EQ-雪梨蛋花汤1 天前
【Unity笔记】Unity 音游模板与免费资源:高效构建节奏游戏开发全指南
笔记·unity·游戏引擎