前阵子,我用C++编写的3D游戏引擎成功的运行了一个小游戏demo,在此将会分享我的学习与搭建历程。
该3D引擎是跟着书籍《手把手教你架构3D游戏引擎》学习搭建的,由浅入深的讲解以及范例,令我受益匪浅。
介绍
底层运用c++编写,图形接口为GDI(windows下的图形接口,不可跨平台。),模型材质运用的3D max制作,用通用的shader语法解析模型,渲染管线的一些列流程利用了矩阵的数学知识。
项目结构分为三部分:ECore核心模块,EEngine功能模块,EGame游戏模块。
本地化操作
书籍中的编辑器是VS2013版,而我在学习的时候使用的是最新版的VS2019,跟着作者学习编写了所有代码,亲测可用,大家可以放心的编写学习啦。
材质地形编辑器
书籍中对于材质地形编辑器的描述相当的少,我会在后期详细的描述材质地形是如何编辑的。
个人提升
写本博客是必不可少的会重新过一遍书籍以及整合自身所学知识,算是对自己的再一次沉淀和查漏补缺。
收获
对数据结构的理解上升了,图形学算法也有查找资料与编写demo的过程中有所了解和应用,学会了进行场景渲染以及物体的材质渲染,对于渲染管线以及传说中的shader不再陌生,也因此具备了宏观上的一些架构能力,对游戏的整体架构有了一定的认识。最重要的是也因此对我自身工作中所用的unity引擎有了更深层次的了解。