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 时让它弹出去的效果

相关推荐
暴走约伯10 小时前
【VFX工具链源码拆解 02】告别机械劳动(上):一键统改百个子粒子颜色与批量重命名
3d·unity·c#·材质
郝学胜-神的一滴11 小时前
游戏设计:原型与开发 18:Unity入门的第一课
人工智能·程序人生·游戏·ui·unity·游戏引擎
淡海水13 小时前
09-01-内存-Unity资源生命周期全景
unity·c#·游戏引擎·.netcore·gc
Solange__16 小时前
AI世界模型、3D场景生成和游戏引擎怎么选?按5类任务比较交互、物理与导出
开发语言·人工智能·游戏·平面·3d·自然语言处理·游戏引擎
LF男男17 小时前
Flower Defense—UIFacade
unity
呆呆敲代码的小Y17 小时前
【实战精选面试题】Unity精选面试题详细解答,按模块整理汇总
人工智能·游戏·unity·游戏引擎
小贺儿开发1 天前
《流光绘忆》Unity 沉浸式光影互动
科技·unity·ai·程序员·工具·互动·光影
Aman19841 天前
Claude Code做Unity项目移植(一):从零散工具到团队式
unity·游戏开发·vibe coding·claude code·项目迁移
地狱为王1 天前
Unity使用VoxLock实现语音隔离
unity·游戏引擎·音频处理·voxlock
Jmyd01232 天前
博物馆数字展厅系统架构设计:实景采集到云渲染全链路
unity·系统架构·博物馆·数字展厅·博物馆数字化