三、Unity2D游戏制作——角色制作
1.导入角色图片并切片
新建文件夹player-将角色图片拖动至该文件夹内-选中图片文件后点击检查器内sprite editor按钮打开编辑器-点击切片按钮-切片方式选择自动-点击应用。
2.创建行走动画
分别选中所有面向前方后方等四个方向切片拖动至层级对话框内,保存文件至player子文件夹walk中,命名为Walk_U等四个文件,完成后删除层级框内刚新建的四个动画对象文件及walk文件夹内四个动画器文件。
这里我的窗口布局改为了默认布局
3.创建静止动画
打开walk文件夹-复制并粘贴Walk_D.admin等四个文件-于unity项目对话框内一次将其重命名为Idle_U等。
双击Walk_D打开动画编辑器-选中第一张动画复制-点击Idle_D切换到Idle_D动画粘贴,将另外三个也做同样处理。
4.建立角色静止动画规则
选中层级内Player对象-拖动项目对话框内Walk_D文件至检查器对话框内添加组件处以创建player动画器。
双击player打开动画器-删除动画器内已存在的Walk_D-右击动画器窗口空白处选择创建状态-新混合树并重命名为Idle,添加两个float类型参数Input_x、Input_y,一个bool类型参数iswalking。
双击打开Idle,检查器内混合类型修改为2D Freeform Cartesian,添加四个运动域-将参数改为Input_x、Input_y-将空运动换为Idle_D、Idle_U等,参数如图。
对此我的理解为:
假设player所在位置设为原点,当player面向Pos点方向时调用前面的motion,例如player往上时,也就是往Y轴正方向,那么pos即为(0,+)可以为(0,1)(0,0.1)(0,2)等,需要调用的动画为Idle_U。
5.建立角色移动动画规则
复制粘贴一份Idle更名为walking,将motion改为对应的walking动画。
6.建立过度条件
右键动画器内Idle创建过渡-取消退出时间-添加条件iswalking-值设为true,同理建立iswalking到idle过渡,设置iswalking为false。
7.创建移动控制脚本
选中层级内player对象,点击添加组件,选择New script
打开新建的脚本文件,编辑代码。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class BehaviourScript : MonoBehaviour
{Rigidbody2D rbody; //定义变量Animator anim;// Start is called before the first frame updatevoid Start(){rbody = GetComponent<Rigidbody2D>(); //初始化anim = GetComponent<Animator>();}// Update is called once per framevoid Update(){Vector2 vector = new Vector2(Input.GetAxisRaw("Horizontal"), Input.GetAxisRaw("Vertical")); //定义向量,获取水平竖直方向值 使用GetAxisRaw可以兼容方向键游戏手柄等。if (vector!=Vector2.zero) //判断是否在移动{anim.SetBool("iswalking", true); anim.SetFloat("Input_x", vector.x);anim.SetFloat("Input_y", vector.y);}elseanim.SetBool("iswalking", false);rbody.MovePosition(rbody.position + vector * Time.deltaTime * 100); //移动player}
}
注意:
当脚本文件报无法加载关联的脚本时有两种情况,判断方法新建脚本文件不修改文件名若仍然报错则为第二种:1.类名与文件名不一致,解决方案修改类名或文件名。2.环境问题,解决方案删除项目窗口内SuperTiled2Unity文件夹并重新安装,若仍未解决则重装unity。
8.绑定摄像机
新建c#脚本文件,绑定到Main Camera,代码如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class CameraAuto : MonoBehaviour
{public Transform targer; //定义变量 public float m_moveSpeed = 0.03f;Camera mycamera;// Start is called before the first frame updatevoid Start(){mycamera = GetComponent<Camera>(); //初始化}// Update is called once per framevoid Update(){//mycamera.orthographicSize = (Screen.height / 0.6f) / 4f; //设置摄像机范围if(targer){transform.position = Vector3.Lerp(transform.position, targer.position, m_moveSpeed); //移动摄像机}}
}
保存后选中Main Camera,将Player拖动到Targer即可。
注意:
脚本文件中的public变量会显示在unity脚本组件下拉菜单中,如上图中的targer、movespeed。
三、Unity2D游戏制作——角色制作相关推荐
- 次世代游戏建模角色制作全流程,入门太需要这个了
现在3D建模都在往次世代建模技术发展,不像手绘建模,一个低模加上贴图就搞定了. 在生活质量的提高,电子设备也越来越高档的今天,人们的审美也越来越高.次世代建模技术之所以是目前最流行的技术,在于讲究的一 ...
- Unity2D游戏入门Sunnyland制作记录:01安装软件、导入素材
01安装软件 点击链接进入Unity官网:Unity官网 ①点击下载Unity ②选择要下载的版本(我使用的是2020.3.14f1c1版本,建议把Hub也下载下来,VS2019也需要下载) ③下载成 ...
- Unity2D游戏入门Sunnyland制作记录:02编辑素材、Tilemap
编辑素材 ①设置背景图片 下方依次点击: Assets–>Sunnyland–>artwork–>Environment 选择back图片 ②将back图片的每单位像素改为16,使画 ...
- # 使用Scratch 3.0制作弹球游戏(三)——游戏关卡及难度设计
目录 使用Scratch 3.0制作弹球游戏(三)--游戏关卡及难度设计 1.第一关 1.1第一关游戏角色需求 1.2第一关游戏玩法设计 1.3角色设计--球 1.4角色设计--接球平台 1.5背景设 ...
- 游戏角色制作行业标准?深度技术好文,建模新手必看!
今天给大家带来佩德兰-卡里姆法兹利,关于游戏角色制作,测试,以及衣服和皮革相关的经验分享.今天还是朋友帮忙翻译的一篇好文,感谢感谢! 自我介绍 大家好,我叫佩德兰-卡里姆法兹利,是一位来自于瑞典的角色 ...
- 【游戏开发实战】使用Unity制作像天天酷跑一样的跑酷游戏——第三篇:跑酷地面制作
文章目录 一.前言 二.导入地面素材 三.制作地面预设 四.使用脚本控制地面移动 五.起始和结束位置 六.复制多个地面预设 七.运行效果 一.前言 嗨,大家好,我是新发,今天是大年初三,大家牛年快乐, ...
- 游戏制作 RPGDreamer (三)--格斗游戏(拳皇素材)
其实格斗类游戏我玩得不多,只玩过街霸,由于技术菜,实在不舍得把宝贵的游戏币投入到格斗游戏中,花一块币玩个十几二十分钟的过关类游戏不香吗?这个格斗游戏用了些拳皇的素材,但手感和操作性肯定不是能和拳皇比的 ...
- 什么是次世代游戏?科普次世代游戏角色制作过程
一.什么是次世代游戏 次世代这个名字源自日语,即下一个时代,未来的时代.既然说它来自最先进的时代,那么次世代游戏肯定相比传统游戏画质更高,品质更好呀.与传统游戏相比,次世代游戏能够以精简的面数表达出高 ...
- 游戏角色制作行业标准? 快来看看吧
大家周末愉快,今天给大家带来佩德兰-卡里姆法兹利,关于游戏角色制作,测试,以及衣服和皮革相关的经验分享.今天还是朋友LMC帮忙翻译的一篇好文,感谢感谢! 自我介绍 大家好,我叫佩德兰-卡里姆法兹利,是 ...
最新文章
- 人工智能的影响调查_调查报告|文科大学生群体对于人工智能影响 就业的认知程度:基于访谈的质性研究...
- mysql填加序列号(仿照oracle row_number函数)
- chrome items hidden by filters
- idea学生认证用了一年后过期了怎么办?
- c 后台输出easyui html,EasyUI——实现展示后台数据代码
- 利用ArcGIS Python批量拼接裁剪遥感影像(arcpy batch processing)
- python反转一个整数、123变成321_python整数反转算法
- cmder 基本配置和使用
- Android学习笔记:短信控制手机之“短信开启定位”
- 机器学习之SVM调参实例
- kafka架构、基本术语、消息存储结构
- SQL Server2019 Express下载安装教程-——孟师傅
- android源码中国地图,Android 绘制中国地图
- 【基于51】红外寻迹智能小车-硬件篇
- golang使用gomonkey和monkey来mock方法或者函数时报panic: permission denied [recovered]
- 加权随机采样 (Weighted Random Sampling)
- JavaScript监听键盘事件,组合键事件
- 清华“姚班”大佬豆瓣征婚被网暴
- 服务器屏幕不全屏显示,服务器窗口显示不全屏
- 用于 CPX、CPX-VF 和 CRX-VF 探针台的新手提箱选项
热门文章
- DLL线程中坑爹的Synchronize?
- python辗转相除_python(四):辗转相除
- 数据结构:渐进记法详解
- 微信小程序云开发:使用excel-export导出excel
- Java:在不同界面样式下JPopupMenu与鼠标事件mousePressed表现的结果不同!
- spring全集 - - - 第五章RESTful开发
- oppo服务器暂时不可用,oppo手机网络连接不可用是怎么回事
- IDM安装与下载百度云文件
- base64图片去白底
- 黑群辉安装php,黑群晖从装机到使用全过程 篇五:群晖安装VirtualBox虚拟机