游戏引擎开发技术栈总结(自用)

一:XX上一个2d游戏引擎up的总结

1.不做移动端

2.曲率引擎大佬

3.编辑器用的是electron开发的

4.3d渲染可以考虑three.js

5.长远计划学习C++,rust,

小引擎用js+opngl或者C#+direct

6.用的是html+css+webgl做的引擎(新手向)

7.图像处理没有用任何第三方库,用的是WebGL API,这样就只支持2d

二:XX上的3d游戏引擎博文总结(一)

1.使用visual studio+CMake

2.DirectX,OpenGL这些图形API

Havok,PhysX这些物理引擎

Boost+STL

In-Game GUI+cocos2dx

音频系统:Fmod,wwise

脚本系统

3.数学运算库:DirectXmath,Eigen

C++定义点,向量,矩阵,线性变换,MVP矩阵,万向锁,四元数,

4.内存管理算法:伙伴算法

ptmalloc,tcmalloc,jemalloc

5.使用DX11,......给引擎接入渲染模块,加载模型数据(fbx sdk或者Assimp(这个)),

//为什么不直接用DX12/Vulkan呢

6.Intel GPA,Nsight,RenderDoc(首推)抓帧

7.以达到跨平台的目的,把DX11改为接入OpenGL(GLFW,GLAD这两个非常重要的库),

创建Context,

shader语言:DX11使用HLSL,OpenGL使用GLSL

//博文一直在重构,是原理性学习,跟着不能完成一个引擎

8.过程化天空盒

9.UI模块/UI框架:cocos2dx

10.字体解决方案:bitmap font,Outline font,Stroke-based font,truetype,这里采用的是freetype

11.制作动画:3dmax,blender,maya等

12.地形系统:CPU or GPU

13.完整的物理引擎不是一个人能搞定的,造轮子时间耗费太久,涉及数学矩阵,空间变换,光学,牛顿力学等等

你可能感兴趣的:(游戏引擎,c++,算法)