unity如何创建一个角色(实现角色的行走、奔跑)

这篇具有很好参考价值的文章主要介绍了unity如何创建一个角色(实现角色的行走、奔跑)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、首先从资源商店下载导入一个模型,这里选择的是下面这个模型(用了很多,这个比较好用,还是免费的),下载后导入模型。 

unity如何创建一个角色(实现角色的行走、奔跑)

2、创建一个平面,打开刚才导入的模型的预制体,把角色拖到场景中并命名为Player,打开的文件目录如下

unity如何创建一个角色(实现角色的行走、奔跑)

 3、创建一个角色控制器(右键->Create->Animator Controller),命名为boy(可随意命名),打开角色控制器,打开各状态的预制体,打开目录如下

unity如何创建一个角色(实现角色的行走、奔跑)

把需要的状态拖到角色控制器中合适的位置,这里以角色的走和跑为例,首先初始状态为idel,所以先把idel拖入到角色控制器中(这个顺序很重要),接着把run和walk拖进去,然后点击idel,右键选择Make transition,点击run,以下同理,创建结果如下所示

unity如何创建一个角色(实现角色的行走、奔跑) 

4、创建两个布尔变量来控制角色什么时候走,什么时候跑,点击左上角的Parameters,点击加号,选择bool,创建两个变量如下图所示

unity如何创建一个角色(实现角色的行走、奔跑)

 文章来源地址https://www.toymoban.com/news/detail-503528.html

5、点击从idel指向run的箭头,在右边设置参数如下,Has Exit Time一定要把√去掉,否则会有延时,其余参数的设置也是一样的。

unity如何创建一个角色(实现角色的行走、奔跑)

 6,设置完所有参数后,选择场景中的Player,把刚才的角色控制器拖到Animator中controller中,并给角色添加刚体组件

unity如何创建一个角色(实现角色的行走、奔跑)

7、编写脚本CharacterController,并把它赋给角色,代码如下

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

public class charactercontroller : MonoBehaviour
{
    private charactercontroller _character;
    private Animator _animator;
    private int speed = 2;
    // Start is called before the first frame update
    void Start()
    {
        _character = GetComponent<charactercontroller>();
        _animator = GetComponent<Animator>();
    }

    // Update is called once per frame
    void Update()
    {
        speed = 2;
        _animator.SetBool("iswalk", true);
        _animator.SetBool("isrun", false);
        float ho = Input.GetAxis("Horizontal");
        float ve = Input.GetAxis("Vertical");
        Vector3 dir = new Vector3(ho, 0, ve);
        if (dir != Vector3.zero)
        {
            //让人物面向方向
            transform.rotation = Quaternion.LookRotation(dir);
            //让人物朝前方移动
            setstate();
            transform.Translate(Vector3.forward * speed * Time.deltaTime);
        }
        else
        {
            _animator.SetBool("iswalk", false);
            _animator.SetBool("isrun", false);
        }

    }

    void setstate()
    {
        if (Input.GetKey(KeyCode.H))//跑
        {
            speed = 10;
            _animator.SetBool("iswalk", false);
            _animator.SetBool("isrun", true);
        }
    }
}

 

 

到了这里,关于unity如何创建一个角色(实现角色的行走、奔跑)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Unity】简单案例脚本实现 | 鼠标观察/键盘控制移动飞行/行走/碰撞检测

    《Unity5实战-使用C#和Unity开发多平台游戏》第二章-构建一个让你置身3D空间的演示 鼠标观察/键盘控制移动飞行/行走/碰撞检测 Unity版本:2019.4.23f1c1 注意脚本名称和组件添加,不在文章中一一强调 场景模型都是在资源商店选择的免费下载(选择Sort by Price(Low to High)排序)搜索

    2024年02月04日
    浏览(54)
  • VRIK+Unity XR Interaction Toolkit 配置 VR 全身模型(下):实现腿部行走动画

    此教程相关的详细教案,文档,思维导图和工程文件会放入 Spatial XR 社区 。这是一个高质量知识星球 XR 社区,博主目前在内担任 XR 开发的讲师。此外,该社区提供教程答疑、及时交流、进阶教程、外包、行业动态等服务。 社区链接: Spatial XR 高级社区(知识星球) Spatial

    2024年02月10日
    浏览(38)
  • 【unity】制作一个角色的初始状态(左右跳二段跳)【2D横板动作游戏】

            hi~ 大家好!欢迎大家来到我的全新unity学习记录系列。现在我想在2d横板游戏中,实现一个角色的初始状态-闲置状态、移动状态、空中状态。并且是利用 状态机 进行实现的。         本系列是跟着视频教程走的,所写也是作者个人的学习记录笔记。如有错误请联系

    2024年02月04日
    浏览(49)
  • 【unity shader案例】如何实现一个玻璃效果

      原理:玻璃最大的特点当然就是半透明了,如何在游戏中实现这样的效果呢?我这里总体的思路就是先截取整个场景作为一张纹理,然后把玻璃区域的纹理贴到这个玻璃模型上。 下面看具体实现代码 实现效果如下    更进一步,还可以实现毛玻璃的效果,思路就是用一张

    2024年02月16日
    浏览(54)
  • Unity之如何实现一个VR任务(剧情)系统

    最近再做一个VR项目,里面有大量的剧情和VR操作任务。 比如: 1.张三说了什么话,干了什么事,然后,李四又说了什么,做了什么动画,完了之后,场景中某个物体高亮,让我们触摸或者射线点击(pc的话鼠标点击)和其发生交互。 2.我们使用VR手柄或者鼠标与场景中的一个

    2024年02月04日
    浏览(57)
  • Unity开发日记【第三天】——角色动画效果的实现

    目录 一、站立和跑步动画效果 二、跳跃动画 三、对移动过程中的一些优化和修正 本部分我们尝试给我们的角色添加各种动画效果 首先给角色添加组件Animator,我们可以看见该组件要求一个控制器。 接下来在根目录下新建一个文件夹Animation用来存放所有的动画效果,在文件

    2024年02月05日
    浏览(54)
  • 零代码实现Unity2D角色Sprite批量换装

    先看成果  图片上限5M,画质渣没办法o(╥﹏╥)o 思路参考:https://www.youtube.com/watch?v=ZgCB4tifQ_c         2D角色换装的教程不少,但大多都是以套装为主,大批量替换局部装备的似乎没有。研究了很久,这里也算做一个记录。         角色所有部位都需要在PS里面单独分层,

    2024年01月18日
    浏览(61)
  • Unity代码实现角色碰到障碍物,损失血量或死亡

    1、角色设置 在PlayerController脚本中(挂载在角色上)       maxHealth :最大血量,用于约束角色血量不超过最大血量       currentHealth :当前血量,用于记录角色血量变化      在Start函数中设置当前血量为最大血量      编写一个减少血量的函数,参数为碰到障碍与减少

    2024年02月12日
    浏览(61)
  • unity创建第一个脚本

    以下为unity菜鸟关于unity脚本的学习记录。 1.脚本是什么? 什么是脚本,脚本语言?学习了这位博主(ScratKong)的文章自己对脚本有了些大致的理解。 在unity中脚本类似于组件,通过脚本也能像unity内置组件来控制对象的行为、属性等。unity本身支持C#编程语言,C#类似于Java也是一

    2024年04月09日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包