网站首页 > 博客文章 正文
Unity游戏开发涉及C#代码编写,不是我的强项。目前我只想试试能不能用Unity做一些简单的2D小游戏。对于Unity我是纯正萌新,教程如有问题欢迎指出错误。
上次在朋友圈吐槽C#难学之后,不少朋友推荐了playmaker插件(不需要编程就可以做游戏的神器),等我啃完Unity基础之后再去研究playmaker吧~学会了我再写教程。
将角色导入Unity
首先需要在Aseprite里面设计好角色,然后100%尺寸导出SpriteSheet,放大角色在Unity里面完成。
将存好的char.png图片(图片名称在Aseprite导出的时候可以自己设置)直接拖入Unity Assets/Sprites目录(如果是新建的project需要自己建目录)。
选中char.png图片,在Unity右侧属性面板,将Sprite Mode 改为Multiple(如果是单张图片则不需要改),然后点击Sprite Editor来切图。
在弹出的Sprite Editor窗口中,点击Slice,Type选Grid By Cell Size,Pixel Size填入角色的尺寸14X31(这是每一个序列帧的尺寸大小),点击Slice切图完成。切完图以后点击Sprite Editor窗口属性条右边的Apply,如果不点退出的时候Unity也会提醒你Apply。
切图完成以后,每一个切片会被命名为“图片名_0“,如果一张图片上有多个动作,就需要选中每一个切片重命名。如果需要导入的图片太多,是不是挺烦的?
以前介绍过一个像素画免费导入插件AnimationImporter,挺好用的。现在学会了使用Unity导入资源,才知道插件到底牛在哪。不管插件多么好用,我建议还是要学会Unity的导入方法,一步一个脚印才好。
将角色添加到场景
在Assets/Sprites目录选中char.png,然后在右侧属性窗口设置Pixels Per Unit 为20(100的话,需要放大角色,效果不好);Filter Mode设为Point;Compression设为None。然后将char_0拖入场景。
使镜头跟随角色
在Assets目录新建Scripts目录,然后新建c#文件。
将c#文件内的代码替换为:
using UnityEngine; using System.Collections; ? public class CameraLerpToTransform : MonoBehaviour { ? public Transform camTarget; public float trackingSpeed; public float minX; public float minY; public float maxX; public float maxY; ? void FixedUpdate() { if (camTarget != null) { var newPos = Vector2.Lerp(transform.position, camTarget.position, Time.deltaTime * trackingSpeed); var camPosition = new Vector3(newPos.x, newPos.y, -10f); var v3 = camPosition; var clampX = Mathf.Clamp(v3.x, minX, maxX); var clampY = Mathf.Clamp(v3.y, minY, maxY); transform.position = new Vector3(clampX, clampY, -10f); } } }
然后选中c#文件,拖到Main Camera摄像机镜头上。然后选中Main Camera,将场景中的char_0拖到Cam Target里面,这样就实现镜头跟随角色拉。
成功以后,摄像机会显示在角色身上,而不是在场景中间。
完。
本账号系网易新闻-网易号“各有态度”签约账号
猜你喜欢
- 2024-09-09 大厂面试难,进不去?你要找的Unity的答案都在这儿了
- 2024-09-09 灵活运用拍摄技巧,免于来自女朋友的皮肉之苦(Unity-摄像机)
- 2024-09-09 【免费教程】解锁创意图片新玩法:黏土与瓷娃娃风格滤镜
- 2024-09-09 Unity自学笔记(1)2d场景的创建及人物移动
- 2024-09-09 Unity引擎2018版发布 渲染品质可媲美电影级别
- 2024-09-09 Unity功能知识点以及功能介绍(unity 介绍)
- 2024-09-09 耐克 Pegasus Turbo Next Nature "Together"官方图片
- 2024-09-09 人工智能写的unity照片滚动播放(unity图片动画)
- 2024-09-09 UNITY这些纹理动画,你值得拥有!(unity2019地形纹理)
- 2024-09-09 Unity:从平铺到设计,ArtEngine帮助设计师更好的利用动画资产
你 发表评论:
欢迎- 07-08Google Cloud Platform 加入支持 Docker 的容器引擎
- 07-08日本KDDI与Google Cloud 签署合作备忘录,共探AI未来
- 07-08美国Infoblox与Google Cloud合作推出云原生网络和安全解决方案
- 07-08GoogleCloud为Spanner数据库引入HDD层,将冷存储成本降低80%
- 07-08谷歌推出Cloud Dataproc,缩短集群启动时间
- 07-08Infovista与Google Cloud携手推进射频网络规划革新
- 07-08比利时Odoo与Google Cloud建立增强合作,扩大全球影响力
- 07-08BT 和 Google Cloud 通过 Global Fabric 加速 AI 网络
- 最近发表
-
- Google Cloud Platform 加入支持 Docker 的容器引擎
- 日本KDDI与Google Cloud 签署合作备忘录,共探AI未来
- 美国Infoblox与Google Cloud合作推出云原生网络和安全解决方案
- GoogleCloud为Spanner数据库引入HDD层,将冷存储成本降低80%
- 谷歌推出Cloud Dataproc,缩短集群启动时间
- Infovista与Google Cloud携手推进射频网络规划革新
- 比利时Odoo与Google Cloud建立增强合作,扩大全球影响力
- BT 和 Google Cloud 通过 Global Fabric 加速 AI 网络
- NCSA和Google Cloud合作开发AI驱动的网络防御系统,加强泰国网络空间的安全性
- SAP将在沙特阿拉伯 Google Cloud 上推出BTP服务
- 标签列表
-
- ifneq (61)
- 字符串长度在线 (61)
- googlecloud (64)
- messagesource (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)