3D应用与游戏开发实战_开发网页游戏( 四 )


讲了那么多技术点 , 我们总要看一下业界真正做游戏的人是怎么做的 。我大概探索了一两年 , 发现 Playcanvas 引擎是 Web 世界上最健全的游戏引擎 。它的引擎代码是开源的 , 但是编辑器不开源 。我分析了一下它的引擎源码 , 大概有几部分组成:
ECS 的架构 , Unity 也是采用这样的设计模式 。PBR , 基于物理的渲染模型 , 看起来更像真实世界的渲染 。物理引擎也是很重要的 , 还有输入设备 , 比如说你的游戏手柄、手机都是输入设备 。Playcanvas 和 Threejs 有什么区别?
Threejs 只是一个 3D 渲染库 。游戏还有一个非常重要的东西叫编辑器 , 这是 Playcanvas 在线的编辑器 , 我看了这个游戏之后就觉得一定要做编辑器 , 因为编辑器是引擎的载体 。如果没有编辑器 , 我们每次开发游戏要注意的工程和技术问题太多 。
编辑器架构
最后讲一下我们团队思考的编辑器的架构 , 现在只是一张工程架构图 。
游戏最后发布的内容是什么?就是一堆资源 , 图片、模型、音频、脚本 , 在 Web 开发环境中最后都要发上 CDN。
游戏里的大部分资源如音频、全景图、模型这些都是第三方软件输入的 , 模型资源的序列化、减面、合并、烘培等操作我们暂时可能不会去做(还是交给 Unity 做) , 中间 GUI 部分就是编辑器的面板操作 , 最后 Script 组件和 Shader 可以通过 Vscode 来编辑 。这张图是我一两年的心得 , 大家可以留言区交流~
【3D应用与游戏开发实战_开发网页游戏】作者:徐乾伟(烧鹅)