Unity2018 Tiny Mode 学习笔记(一)

发表于2018-12-25
评论5 2.33w浏览

什么是Tiny Mode? 

 

Unity在2018.3版本中推出的"小游戏模式","高度模块化"运行时(runtime)和编辑模式(Editor Mode) 

 

可以快速的构建轻巧又高速的2D小游戏(HTML5,Games in Messaging)和可交互广告(Playable Ads) 

 

"高度模块化" 可以方便我们去添加或移除相应的模块,目前的Unity在模块化方面做得并不好,打出来的空包就有10多M,引擎的核心库很难继续减小,主要还是不够“模块化”,比如在制作GooglePlay的Instant Game时,会比较麻烦 


(同事最近在做项目的Instant Game版本,很难达压缩到Google的限制要求,有10M的限制,目前还在邮件沟通中,另外一个朋友打算用H5重新写一个简版功能了:)) 

 

随着引擎功能的增加,模块化是要支持的,比如Google Services在很早之前只是一个完整full jar,后来随着功能增多,代码量日益庞大,而我们使用的,通常仅是其中很少的一部分功能,导致冗余的代码很多,资源利用不合理,模块化是技术升级迭代的必经过程。 

 

小包体,即时加载,快速启动,不需要安装 

 

(small in size and have a blazing fast startup on a wide range of mobile devices 

load instantly and without install) 

 

Unity在2018开发者大会上,针对TinyMode宣传的三个关键词: 

 

Smaller.Lighter.Faster  

 

代表着Better Experiences(更好的用户体验) 

 

TinyMode的Core Runtime 压缩后只有72KB,Audio,Animation,Particle,Physics等模块可以根据需求进行添加,引擎的的核心库当然也会随之增大,但即便如此,最终的大小依然很理想,Unity在核心模块做了很多优化,并且还会有继续优化的空间。 

 

 

Tiny Arms Revenge(官方演示Demo) 

 

基于Tiny Mode开发的2D小游戏不例,可直接在浏览器中打开




压缩数据的初始压缩大小为969 KB(162 KB引擎,199 KB游戏代码,597 KB图像)。 另外还有861 KB的音频文件加载,由此整个项目的游戏共需要1.8 MB。 

 

目前Tiny Mode还是预览测试版本,处于收集开发者反馈的阶段,release版本会在2019年发布。 

 

在收集反馈的阶段主要会关注: 

新功能模块,工作流,性能,稳定性等等 

 

在release发布之前,Unity会计划进行多次迭代以完善更多的功能,开发者可以更快的使用到,并有助于反馈的定位 

 

Tiny Mode官方网址: 

 

 

 

上面提到的"Playable Ads": 

 

可交互广告,一种“可以玩的广告”,比如说,我们在观看激励视频广告以后, 

有的广告会紧接着切换到游戏试玩的页面,这个页面中会重现产品中的核心亮点场景,让玩家可以即时的体验游戏(据说Playable Ads的用户转化率达到了移动视频广告的7倍之多) 

 

即时游戏就是Instant Game,比如Facebook Instant Game,可以在Messenger里直接打开网址就可以体验 

 

现在GooglePlay也提供了Try Now功能,即时体验,玩家不需要下载和安装游戏包,通过Try Now 

可以即时体验游戏,从而决定是否购买(下载) 

 

Tiny Mode的特点和功能: 

 

1.面向数据的ECS架构可以实现卓越的性能 

 

(例如:在iPhone 6S上,Tiny运行时可以显示的移动动画精灵数量是其它面向Web的2D引擎的3~4倍,同时还能保持60 帧每秒的运行速度。在类似设备上,需要的引擎加载时间约350-600毫秒。 

 

我估计是这里面肯定对比了国产三剑客-cocos2d,Layabox,Egret,效率上是肯定要高的,技术优势是全方位的,并且我们已经看到了ECS架构在Unity演示Demo中的卓越性能表现,相比目前流行的H5引擎,Tiny Mode会更有优势,更值得期待) 

 

2.暂时仅支持2D,但Unity在未来会支持3D和VR(FAQ中的回答) 

 

3.预览测试版本使用TypeScript语言官方说,未来会支持C#,我们将能够生产更小的代码大小和更好的性能,并明确提到,如果C#支持准备就绪,会将TypeScript移除掉,非常值得期待,另外,对于习惯了强类型语言的开发者而言,更加的友好:) 

 

Tiny Mode安装: 

(官方youtube视频安装教程:https://www.youtube.com/watch?v=d_thpSSbAUE&feature=youtu.be) 

 

图文安装: 

 

1.Tiny Mode以package形式发布,打开Unity2018.3的Package Manager(Windows->Package Manager) 

 

2.开启Preview Packages(Advanced->Show Preview Packages) 

 

3.找到"Tiny Mode"并点击安装 




Tiny Mode在所有的Unity许可版本中均支持:Personal,Plus,Pro 

(It can be used with all Unity licenses – Personal, Plus, Pro) 

 

关于Tiny Mode的用户手册,API文档以及相关示例,均可在preview package预览包中找到 

 

用户手册User Manual: 

 

 

TinyMode的forums讨论: 

 

 

官方提供的Training视频教学,一共9集 

 

 

(Unity GDC2018 主题演讲大会-视频中有提供两款演示的项目,值得一看)  


https://www.youtube.com/watch?v=TvP5XtaAffI



其它参考网址: 

https://mp.weixin.qq.com/s/D6CXVxgKpSpVHVxyGrvZ9w 


这是外国一个帅哥程序员的讲解视频,目前一共2集,可以说灰常的细致了,我都想模仿来录制一个:) 


https://www.youtube.com/watch?v=1sIcmG7xnmU

https://www.youtube.com/watch?v=_b_9dJG0-rg




我会继续关注并跟进Tiny Mode,并将自己的笔记分享出来,技术分享也是一个迭代的过程,所以我并不会每次都追求高质量的分享,但我会去不断的总结,这样,后面的分享质量就会越来越好 

 

感谢您的阅读, 如文中有误,欢迎指正,共同提高 


欢迎关注我的技术分享的微信公众号,Paddtoning帕丁顿熊,期待和您的交流






如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引