puerts-unityue下的typescript框架
如果无法正常显示,请先停止浏览器的去广告插件。
1. Puerts
Unity 和 UnrealEngine 里的 Typescript 框架
杨浩 IEG增值业务部 前端开发
2. 1. 什么是 Puerts
目录
3. 01
什么是Puerts?
读作普洱TS
4. 什么是Puerts?
V8 + OS API = Node.js
让 Javascript 可以调用操作系统的任意 API,包括文件、网络
5. 什么是Puerts?
V8 + OS API = Node.js
让 Javascript 可以调用操作系统的任意 API,包括文件、网络
V8 + Unity/Unreal API = Puer.ts
普洱ts 提供的是一套 Javascript 调用 native 语言函数的通道
6. 02
为什么要做 Puerts?
可以用 Typescript 做游戏?
7. Typescript 早就能做游戏了
· Cocos Creator
· Laya
· Egret
微信小游戏
8. Typescript 早就能做游戏了
· Cocos Creator
· Laya
· Egret
· 品类还比较受限
微信小游戏
9. 暂时无法代替的 Unity/Unreal
Unity
Unreal Engine
Unity 在游戏数量上遥遥领先所有竞争者 渲染能力依旧是世界领先,UE5 演示视频让世人惊呼
耳熟能详的代表作:王者荣耀、原神 耳熟能详的代表作:绝地求生(和平精英)
10. 不仅仅是做游戏本体
· Lua 是游戏开发里很好的辅助语言
UI、业务、MOD Lua
核心玩法框架 C#/C++
解释型语言可以提供很多灵活性
· 热更新
不用重新提交应用商店就能修Bug
· 业务分层
顶层逻辑交由策划/外包/玩家实现
引擎
C++/汇编/…
11. 但 Lua
生态荒凉 工具链匮乏
无包管理、无强类型实现 调试麻烦
JIT 实现不好 业界不那么要求虚拟机精简了
安卓上有安全问题 iOS代码段限制由 40M 变为900M
12. 让 Javascript 取代 Lua
Lua Javascript
JIT 弱 成熟
工具链 零散 各种大厂背景的工具
强类型 无 Typescript
生态 荒凉 史上最繁荣的 npm
虚拟机大小 小 V8大、quickJS小
13. 03
现场功能演示
虽然是播视频,但绝对是真人手敲
14. 04
Web技术在游戏行业的意义
不仅仅是Puerts
15. Unity/Unreal 内的 HTML
UI 解决方案 - PixUI
· HTML 前端技术栈,精简标签和标准
· 相当于在引擎里有了一个浏览器环境
一份代码在 Chrome、游戏引擎里效果完全一致
· 基于Unity/Unreal 渲染管线实现
你完全看不出这个 UI 是用 HTML写的
16. PixUI 的落地
· 王者荣耀 – 视频号直播
框架是PixUI团队提供的。
功能是业务团队做的。
游戏部门再合入代码。
17. 元宇宙和 Web
· 感官效果像游戏
· 内容丰富度像Web
18. 元宇宙领军者也逃不开的Lua变革
19. 说回 Puerts
· 使用者
天美工作室、欢乐工作室、西山居、完美世界、数不
清的小开发者……
· 社区
Github 2k+ star、300+ forks、QQ群1k+
群里的游戏开发者正在热心讨论 Javascript 生态的问题
20. Puerts 的未来计划
WebGL支持
Unity 本身就支持生成 WebAssembly 代码包。使用 Puerts 的时候,还可以
让 Javascript 直接运行在浏览器中,与 WebAssembly 通信。
与 npm 更紧密的结合
让游戏行业感受下这个伟大的包管理工具吧
21. 参与进来
github.com/Tencent/puerts
22. 感谢倾听
大会官网