Unity横板动作游戏 -为什么我又开始学习Unity,而不是Godot。
Readme
最近开始学习Unity制作2D动作游戏,由于一些操作第一次接触,为了加深印象,准备写这样一篇同步教程的笔记。
之前也接触过Unity,用 Unity 制作过一个非常简单的小游戏 Flappy Bird,并且魔改成了泰拉瑞亚的版本。这一次打算更加深入的学习一下 Unity,首先是一直在学的 Godot 有点遇到了瓶颈。
Godot 瓶颈
学了几个月的 Godot 引擎了,很多功能对我来说都很熟悉。瓦片制作,粒子效果,场景,信号。。。感觉用 Godot 制作游戏开始枯燥起来,一切都在不停的重复。但其实,让我开始尝试 Unity 最根本的原因是 Godot 的教程太少了。在看了很多很多教程后,我发现 Godot 的优质教程真的有,但不多。于是决定"偷窥"一些Unity教程,等学到一些新的技巧后再做决定,决定以后使用哪个引擎。希望接触了 Unity 后能带给我更多的想法和改变。
关于 Unity
这篇 Readme 写在我学习了 Unity 最基本的资源导入和瓦片集之后。有一些简单的对比和感悟(Godot 和 Unity),带给我最大的感受就是 Unity 一切的流程很繁琐,但是就像瑞士军刀一样,功能也很强大。但是我还是觉得,就效率而言,相比 Godot 还是不足。就拿设置地形瓦片来举例子,Godot 可以直接在瓦片图上设置地形掩码,而 Unity 居然需要一个一个的设置,Godot 的可视化设置地形可以节省很多很多时间!就一个简单的草地地形就能至少相差 10 分钟的设置时间差距至少,而且这还只是一个,要知道一般游戏都会有很多地形。
目前在瓦片和资源导入方面感觉 Unity 有点低于我的预期,不是那么好用。
为什么开始学习 Unity
上面讲了很多 Unity 我自我认为的缺点,但是我还是想夸夸 Unity。
想必大家都知道 Unity 社区的厉害,没错,全球最大游戏引擎社区就是这么恐怖。拥有最多的开发者和最多的教程、技术文章。这也是我为什么从 Godot “暂时” 跳槽到 Unity 的第一个原因。
齐次,现在 Godot 对我来说只是一个玩具,学会 Godot 固然做游戏快,效率高,有意思。可惜的是,没有太多的企业使用 Godot 开发大型的项目,所以,为了给以后游戏开发就业留条后路,我还是选择尝试学习 Unity。
当然还有一些小小的原因,我最近在 Godot 开发玩家角色脚本时也发现了一些 Godot 的弱点。在动画的状态转换上,Godot 并没有提供向 Unity 那样强大的可视化动画状态机工具。这导致我在 Godot 中修改角色动画状态不得不使用硬编码的方式,在 Unity 中让我看到了处理这个事情更多的可能性,同时也最初的催生了我学习 Unity 的想法。
相关文章:
Unity横板动作游戏 -为什么我又开始学习Unity,而不是Godot。
Readme 最近开始学习Unity制作2D动作游戏,由于一些操作第一次接触,为了加深印象,准备写这样一篇同步教程的笔记。 之前也接触过Unity,用 Unity 制作过一个非常简单的小游戏 Flappy Bird,并且魔改成了泰拉瑞亚的版本。…...
什么是NIO
NIO(New Input/Output),也称为Java非阻塞IO,是从Java 1.4版本开始引入的一个新的IO API,旨在提供一种比传统的阻塞IO更高效、更灵活的IO操作方式。 一 NIO用法的详细介绍 NIO支持面向缓冲区的、基于通道的IO操作&…...
PHP switch 替代品 match
match 是 PHP 8 中引入的新特性。在 PHP 8 中,match 用作新的类型安全的替代 switch 语句。它提供了更清晰、更简洁的语法,同时还支持表达式作为条件,可以更轻松地处理复杂的条件逻辑。 在 match 表达式中,每个分支都是一个条件和…...
FastAPI(七十四)实战开发《在线课程学习系统》接口开发-- 删除留言
源码见:"fastapi_study_road-learning_system_online_courses: fastapi框架实战之--在线课程学习系统" 之前文章FastAPI(七十三)实战开发《在线课程学习系统》接口开发-- 回复留言,那么我们这次分享删除留言接口的开发…...
面试重点---快速排序
快排单趟 快速排序是我们面试中的重点,这个知识点也很抽象,需要我们很好的掌握,而且快速排序的代码也是非常重要,需要我们懂了还不行,必须要手撕代码,学的透彻。 在研究快速排序之前,我们首先…...
[MIT6.5840]MapReduce
MapReduce Lab 地址 https://pdos.csail.mit.edu/6.824/labs/lab-mr.html 论文地址 https://static.googleusercontent.com/media/research.google.com/zh-CN//archive/mapreduce-osdi04.pdf 工作原理 简单来讲,MapReduce是一种分布式框架,可以用来处理…...
【系统架构设计师】计算机组成与体系结构 ⑯ ( 奇偶校验码 | CRC 循环冗余码 | 海明码 | 模 2 除法 )
文章目录 一、校验码1、校验码由来2、奇偶校验码3、CRC 循环冗余码 ( 重点考点 )4、海明码校验 ( 软考不经常考到 ) 二、CRC 循环冗余码 ( 重点考点 )1、模 2 除法概念2、模 2 除法步骤3、模 2 除法示例4、CRC 循环冗余码示例 15、CRC 循环冗余码示例 2 参考之前的博客 : 【计…...
springboot,service 层统一异常抛出时,throws Exception写在接口上还是实现类上
springboot,service 层统一异常抛出时,throws Exception写在实现接口上,不是直接写在实现类上...
深度学习高效性网络
为了减轻Transformer笨重的计算成本,一系列工作重点开发了高效的Vision Transformer,如Swin Transformer、PVT、Twins、CoAtNet和MobileViT。 1、字节TRT-ViT 兼具CNN的速度、Transformer精度的模型 TRT-ViT(Transformer-based Vision Tra…...
PyQt ERROR:ModuleNotFoundError: No module named ‘matplotlib‘
Solution:打开cmd输入指令下载malplotlib pip install matplotlib...
Flutter Geolocator插件使用指南:获取和监听地理位置
Flutter Geolocator插件使用指南:获取和监听地理位置 简介 geolocator 是一个Flutter插件,提供了一个简单易用的API来访问特定平台的地理位置服务。它支持获取设备的最后已知位置、当前位置、连续位置更新、检查设备上是否启用了位置服务,以…...
网站基本布局CSS
代码 <!DOCTYPE html> <html> <head><meta charset"utf-8"><meta name"viewport" content"widthdevice-width, initial-scale1"><title></title><style type"text/css">body {margi…...
ssm框架整合,异常处理器和拦截器(纯注解开发)
目录 ssm框架整合 第一步:指定打包方式和导入所需要的依赖 打包方法:war springMVC所需依赖 解析json依赖 mybatis依赖 数据库驱动依赖 druid数据源依赖 junit依赖 第二步:导入tomcat插件 第三步:编写配置类 SpringCon…...
古籍双层PDF制作教程:保姆级古籍数字化教程
在智慧古籍数字化项目中,很多图书馆要求将古籍导出为双层PDF,并且确保输出双层PDF底层文本与上层图片偏移量控制在1毫米以内。那么本教程带你使用古籍数字化平台,3分钟把一个古籍书籍转化为双侧PDF。 第1步:上传古籍 点批量上传…...
Git 删除 远端的分支
要删除 Git 远端的分支(例如: V3.2.1.13): 可以执行以下命令 git push origin --delete V3.2.1.13这条命令会向远端的仓库删除名为 V3.2.1.13 的分支。如果这个分支只在远端仓库存在而没有对应的本地分支,那么删除后这…...
PrgogressBar实现原理分析
ProgressBar 是 Android 中用于显示进度条的控件,它可以用来表示任务的完成程度或者加载进度等信息。ProgressBar 有两种主要类型:一种是确定性的(determinate),另一种是不确定性的(indeterminateÿ…...
【HarmonyOS】HarmonyOS NEXT学习日记:七、页面与组件的生命周期
【HarmonyOS】HarmonyOS NEXT学习日记:七、页面与组件的生命周期 页面和组件 组件:用Component装饰的代码称为自定义组件页面:Entry装饰的组件即页面的根节点 组件生命周期 aboutToAppear:在创建自定义组件的新实例后…...
【iOS】——Block循环引用
循环引用原因 如果在Block中使用附有_ _strong修饰符的对象类型自动变量,那么当Block从栈复制到堆时,该对象为Block所持有,这样容易引起循环引用。 HPPerson *person [[HPPerson alloc] init];person.block ^{NSLog("person.age--- …...
shell脚本自动化安装启动各种服务
1、自动化配置dns服务器 A主机:vim dns.sh #!/bin/bash# 自动化部署dns# 1、下载bind# 2、修改配置文件# vim /etc/named.conf # listen-on port 53 { 127.0.0.1;any; }; 修改(定位替换)# allow-query { localhost;any; }; 修改&am…...
Python - 开源库 ReportLab 库合并 CVS 和图像生成 PDF 文档
欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/140281680 免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。 Report…...
【经验贴】运营岗考过CDA数据分析师一级经验分享
终于把CDA一级拿下了!查成绩那一刻真的挺开心的,不是多难,但全程自己一点点学出来,特别有成就感。今天就把我整个备考过程老老实实写出来,给正在准备的小伙伴一个参考。一、备考原因我最开始考CDA,完全是因…...
NaViL-9B效果实测:支持中英文混排表格图像的行列结构识别与内容提取
NaViL-9B效果实测:支持中英文混排表格图像的行列结构识别与内容提取 1. 模型介绍 NaViL-9B是新一代原生多模态大语言模型,专为处理复杂视觉-语言任务设计。与常规视觉模型不同,它不仅能够理解图片内容,还能精准解析表格、文档等…...
贝叶斯岭回归实战:用Python搞定金融数据预测(附完整代码)
贝叶斯岭回归实战:用Python搞定金融数据预测(附完整代码) 金融市场的波动性一直是投资者和分析师关注的焦点。在瞬息万变的股票市场中,能够准确预测价格走势意味着巨大的商业价值。传统的时间序列分析方法如ARIMA虽然经典…...
Debian 12上彻底卸载TigerVNC的5个隐藏步骤(附残留文件清理技巧)
Debian 12上彻底卸载TigerVNC的5个隐藏步骤(附残留文件清理技巧) 作为Linux系统管理员,你是否遇到过TigerVNC卸载后仍然出现端口占用或配置冲突的情况?常规的apt remove往往无法彻底清除所有痕迹。本文将揭示那些鲜为人知的清理技…...
从单变量到多变量:ODE与PDE的核心差异与应用场景解析
1. 从自变量数量看本质差异 第一次接触微分方程时,我也曾被ODE和PDE搞得晕头转向。直到有天导师用了个特别形象的比喻:ODE就像观察单车道上的车流,而PDE则是分析整个立交桥的交通网络。这个比方一下子点醒了我——核心差异就在于自变量数量这…...
网络舆情分析毕业设计:从数据采集到情感识别的技术实现与避坑指南
最近在帮学弟学妹们看网络舆情分析相关的毕业设计,发现大家普遍在几个地方卡壳:要么爬虫被封IP,数据拿不到;要么文本预处理一团糟,模型效果差;要么整个系统耦合在一起,改一处动全身,…...
用格子玻尔兹曼方法 - 浸没边界法模拟圆柱绕流(LBM - IBM in C++)
格子玻尔兹曼方法-浸没边界法模拟圆柱绕流 LBM- IBM (C)在计算流体力学(CFD)的领域里,格子玻尔兹曼方法(Lattice Boltzmann Method, LBM)和浸没边界法(Immersed Boundary Method, IB…...
5大核心功能提升英雄联盟体验:League-Toolkit全场景应用指南
5大核心功能提升英雄联盟体验:League-Toolkit全场景应用指南 【免费下载链接】League-Toolkit 兴趣使然的、简单易用的英雄联盟工具集。支持战绩查询、自动秒选等功能。基于 LCU API。 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit League-T…...
保姆级拆解:MIT-BEVFusion中Swin Transformer如何高效处理多相机图像(附代码逐行分析)
多相机BEV感知中的Swin Transformer实战:从原理到MIT-BEVFusion代码精要 在自动驾驶感知系统中,如何高效处理多相机输入并构建统一的鸟瞰视图(BEV)表征一直是核心挑战。本文将深入探讨Swin Transformer在多相机BEV感知中的创新应用…...
Java响应式编程实战:用Reactor 3.x处理高并发请求(附完整代码示例)
Java响应式编程实战:用Reactor 3.x处理高并发请求(附完整代码示例) 在当今高并发的互联网应用中,传统的同步阻塞式编程模型往往成为性能瓶颈。想象一下,当你的电商系统在秒杀活动中面临每秒数万次的请求时,…...
