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

资源层

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

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变成游戏资产

游戏分层原因

通过分层解构复杂度

应对增长的需求

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

迷你游戏引擎项目
相关推荐
徐子竣4 小时前
[学习记录]Unity-Shader-几何着色器
unity·游戏引擎·着色器
森焱森6 小时前
水下航行器外形分类详解
c语言·单片机·算法·架构·无人机
强哥之神11 小时前
英伟达发布 Llama Nemotron Nano 4B:专为边缘 AI 和科研任务优化的高效开源推理模型
人工智能·深度学习·语言模型·架构·llm·transformer·边缘计算
DemonAvenger12 小时前
高性能 TCP 服务器的 Go 语言实现技巧:从原理到实践
网络协议·架构·go
Code季风13 小时前
深入理解微服务中的服务注册与发现(Consul)
java·运维·微服务·zookeeper·架构·go·consul
小马哥编程13 小时前
【iSAQB软件架构】架构决策记录-ADR
数据库·架构·系统架构·设计规范
木鱼时刻13 小时前
容器与 Kubernetes 基本概念与架构
容器·架构·kubernetes
zhuyasen15 小时前
定义即代码!这个框架解决了90%的Go开发者还在低效开发项目的问题
架构·go·gin
LCG元15 小时前
云原生微服务间的异步消息通信:最终一致性与系统容错的架构实战
微服务·云原生·架构
幻世界15 小时前
【Unity智能模型系列】Unity + MediaPipe + Sentis + ArcFace模型:构建高效人脸识别比对系统
unity·游戏引擎