Unity3D 2018.3 Tiny Mode 预览版简介:进击H5小游戏,U3D超轻量内核来了

什么是Tiny Mode

据说轻量版内核只有72KB;
只能发布H5,不能发布原生版(将来可能支持原生发布)
渲染默认使用WebGL,会Fallback到2D Canvas;
暂不支持3D;
必须使用ECS框架编程;
暂时只能用Typescript编程,将来转为支持C#;

适合开发Facebook Instant Game(在Messenger App中玩的那种)、可交互广告Playable、H5小游戏

官网文档(0.13)
https://docs.unity3d.com/Packages/[email protected]/manual/index.html

官网博客
https://blogs.unity3d.com/jp/2018/12/05/project-tiny-preview-package-is-here/

Solution (Instant 2D: Games & Playable Ads)
https://unity.com/solutions/instant-games/2d-games-and-playables

如何体验Tiny Mode

下载Unity Hub,删掉破解版的ulf文件,用正规账号登录,激活,在Unity Hub中选择预览版,下载2018.3

官方demo
https://tiny-match3.storage.googleapis.com/index.html

感想

就意味着老的项目和代码很难快速迁移到Tiny Mode;
从官方demo的性能来看,ios的safari和PC的chrome比较流畅,但是安卓的原生浏览器中运行,感觉不太流畅

Tiny中的ECS框架

面向数据的设计(Data-Oriented Design)
将数据以 Cache 友好的方式组织,可以显著提升程序性能。
测试程序分别以“基于组件的对象设计”和“基于数据的设计”两种方式,对 50000 个 GameObject (或者叫做 Entity) 的 Transform 矩阵进行计算。核心的计算代码都是一样的,最重要的差别就是这些 Transform 数据的内存布局不同。测试的结果十分惊人,在我的电脑上前者要比后者慢 2.8 倍!

虚幻3、4引擎就是一个典型的以面向对象为核心设计思想的多线程架构。现在虚幻4包括主线程、渲染线程、RHI线程、Texture Streamming线程,IO线程、物理线程等等!就拿渲染线程和主线程的交互方式来看,首先你就会发现大量的冗余数据,游戏逻辑层的对象中渲染相关的数据,必须通过 Primitive Proxy 的方式拷贝一份,发送到渲染线程;其次,还是有很多对象是在两个线程上同时要操作的,例如 View 系列的类,想改底层的话,分分钟被锁死!
面向数据的设计,从起点就考虑并行的问题! 在面向数据的设计中,设计的焦点是数据,首先要把数据理清楚,然后把逻辑分离出去。这样做的最大的好处是,每个逻辑模块对数据的读或是写是可以清晰界定的!这样一看,那些计算可以并行,那些是互相依赖的,就一清二楚了!
这方面 Unity3D 的 JobSystem 是很成功的!每一个 Job class 可以通过指定 UpdateAfter/Before Attribute 的方式建立依赖关系图,而引擎根据这个图自动调度任务的并行执行!实际上,我认为UpdateAfter/Before 这个名字起的不好,因为本质上你不是在排序 Job 的执行顺序,而是要思考对 ComponentData 的读写!

与“基于组件的对象设计”不同,ECS 架构中的 Component 只包含数据。例如使用 C++ 编程的话,Component就可以是 POD 类型(Plain Old Data)。Entity 也不是面向对象那样把组件、行为封装起来,而是只对应一个 ID。整个这个机制的设计使得所有组件可以在 World 中统一管理的时候,可以使用连续的内存布局,大大提高 CPU 的 Cache 命中率。
System 对于组件数据的“读写”是可以明确定义的。从这个数据的读写就可以分析出系统之间的依赖关系,形成一个 DAG。基于这种分析也就可以确定那些系统是可以并行执行的!典型的就是 Unity3D 的 JobSystem。

使用流程

Unity3D 2018.3 Tiny Mode 预览版简介:进击H5小游戏,U3D超轻量内核来了_第1张图片

Unity3D 2018.3 Tiny Mode 预览版简介:进击H5小游戏,U3D超轻量内核来了_第2张图片

在这里插入图片描述

Unity3D 2018.3 Tiny Mode 预览版简介:进击H5小游戏,U3D超轻量内核来了_第3张图片

Unity3D 2018.3 Tiny Mode 预览版简介:进击H5小游戏,U3D超轻量内核来了_第4张图片
Unity3D 2018.3 Tiny Mode 预览版简介:进击H5小游戏,U3D超轻量内核来了_第5张图片

Unity3D 2018.3 Tiny Mode 预览版简介:进击H5小游戏,U3D超轻量内核来了_第6张图片

你可能感兴趣的:(Javascript,/,Typescript)