游戏引擎分层架构与总体管线

资源层

管理游戏引擎生态的资源池分配 每个资产的实时生命周期

Resource 各种文件格式的资源 转换importing Asset 资产(高效数据)

引擎中最重要的是资产之间的关联 reference

GUID :游戏资产的唯一识别号

运行中资产管理器 Runtime Asset Manager :读取路径文件,handle system管理文件关联

资产管理生命周期:不同资产有不同生命周期,有限的内存需要释放资源,垃圾回收和延迟加载时很严峻的特征

功能层

一个tick里,先Tick logic 逻辑

再Tick render 绘制

多核并行架构,dependency管理

未来的引擎一定是多核并行架构

核心层

数学库

Real time application 导致引擎对效率要求很高

需要重写数学库

SIMD

SSE CPU并行向量计算

数据结构和容器

STL在高频增删数据时,会出现大量空洞,以及内存不受管理

需要自己重写数据结构

内存管理

平台层

掩盖平台差异度

RHI Render Hardware Interface:重新定义图形api,封装硬件SDK

工具层

允许别人创造游戏的内容

DCCDigital Content Creation数字内容创造

外部编辑工具资产与引擎的编辑工具通过asset conditionning pipeline变成游戏资产

游戏分层原因

通过分层解构复杂度

应对增长的需求

越往上灵活性越强,往下稳定

迷你游戏引擎项目
相关推荐
周杰伦_Jay6 小时前
【Spring Cloud Alibaba】微服务组件详解:电商场景落地实践
微服务·云原生·架构
老前端的功夫8 小时前
Vue 3 性能深度解析:从架构革新到运行时的全面优化
javascript·vue.js·架构
90后小陈老师11 小时前
Unity教学 项目2 2D闯关游戏
游戏·unity·游戏引擎
噗噗夹的TA之旅12 小时前
Unity Shader 学习20:URP LitForwardPass PBR 解析
学习·unity·游戏引擎·图形渲染·技术美术
nnsix12 小时前
Unity ReferenceFinder插件 多选资源查找bug解决
unity·游戏引擎·bug
O***p60413 小时前
前端的“复杂性红线”:如何在超大型应用时代构建可持续演进的前端架构?
前端·架构
狗哥哥13 小时前
🚀 拒绝重复造轮子!在 Vue3 项目中打造一套企业级“统一上传服务”(支持分片、秒传、断点续传)
vue.js·架构
gzroy13 小时前
Unity Shader Graph实现全息瞄准器
unity·游戏引擎
min18112345615 小时前
分公司组织架构图在线设计 总部分支管理模板
大数据·人工智能·信息可视化·架构·流程图
码界奇点15 小时前
基于微服务架构的悟空人力资源管理系统设计与实现
spring cloud·微服务·云原生·架构·毕业设计·源代码管理