Unity ProjectTiny将GitHub上的DotsRogue转成纯ECS的试玩演示

原项目地址https://github.com/sarkahn/dots-roguelike。原作者用Unity的Hybrid ECS实现的一个类似控制台字符Roguelike小游戏,主要功能都是用ECS实现的,但Mesh的渲染和一小部分接口用的还是UnityEngine里的。

这篇文章相当于是前几篇的文章的总结,用那几个功能把代码里各个UnityEngine的API替换掉,移植到Unity的ProjectTiny(这个是纯ECS环境)并打包到安卓上。原项目也可以打包到安卓,但是不支持按钮控制,当然可以在原项目上用UGUI做个按钮控制,这个我没试过。

主要进行的功能替换:
将UnityEngine的Mesh换成ProjectTiny的DynamicMesh。
替换成ECS支持的Shader,Shader那篇跟跃动的小球那篇中的一些小技巧可以解决ProjectTiny的顶点颜色传入问题。
用ECS实现一个Button系统,支持上下左右键和ABCDIG键(原项目支持更多按键,但手机屏幕放不下这么多,就只加了主要功能的按键控制),Button那篇进行了一个最简单的演示,后面完善了下,有Down、Up、Click事件,并且按钮点击会有缩放反馈。
用ProjectTiny的ScreenToWorld接口替换原项目中的Camera的ScreenToWorldPoint这个屏幕坐标转世界坐标的接口,因为ProjectTiny的Camera也是纯ECS,用法跟MonoBehavior的有点区别。

移植到ProjectTiny的一点好处就是,原项目打包安卓有19M多,移植后打包安卓只有2.2M,启动游戏没有Unity闪屏,启动速度很快。然后可以

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值