我的主要研究方向是计算机图形学/游戏开发,可以在 Github 找到我做的个人项目。

Direct3D 12 小引擎

参考了 D3D12 龙书,封装的简易渲染引擎框架。

包含内容:模型加载 + 光照 + 阴影 + 骨骼动画 + 第三人称相机 + 基础的角色控制

点我前往 Github 页面

演示图片:

Vulkan Graphics Engine

基于 Vulkan 的渲染引擎框架。

已实现的内容:

  • 图片库:使用 WIC 和 STBImage,封装了基于 WIC 的立方体图。
  • 模型库:使用 Assimp,可稳定加载的模型格式有 obj(不带动画),fbx(带动画)。
  • 渲染效果:基于 CPU 的简易粒子效果和泛光屏幕特效,基于 PCF 的阴影。
  • GUI:接入了 dear-ImGui,通过修改 OnGUI 方法来更改 GUI 的显示。

点我前往 Github 页面

演示图片:

Soft Renderer

仿图形渲染管线设计的CPU软渲染器。

已实现功能:

  • 基于SDL2的窗口显示和绘制
  • 基础光栅化算法,三维空间内绘制点,线,三角形
  • Camera摄像机自由移动功能
  • 深度缓冲和基于绕序的背面剔除
  • 纹理映射(最近邻过滤和线性过滤)和各种纹理寻址模式
  • 基本的基于Alpha分量的颜色混合
  • 基本的Blinn-Phong和BRDF光照算法
  • 基本的MSAA反走样算法
  • 曲面细分,曲面简化,生成曲线/曲面

待完善功能:

  • 建立完备的数学库
  • 纹理Mipmap
  • 完整的几何细分和LOD支持

点我前往 Github 页面

Unity Custom SRP

用于测试 Unity 自定义渲染管线的项目,参考自 Catlike Unity 教程

点我前往 Github 页面

Verse Engine

现代 C++ 3D 轻量游戏引擎,目前待开发完善。

引擎文档主页:verseengine.net

点我前往 Github 页面

演示图片: