个人项目

下列是我的一些个人项目

显示2个关于OpenGL的项目。

CUDA Flocking (2020)

这个项目利用CUDA来实现了Boid集群运动的模拟。Boid是一种模拟鱼类或鸟类的植群行为的人工生命程序。在简单的暴力破解算法之外,该项目还可以利用空间网格数据结构来大幅加速运算。模拟的数据最终被传给OpenGL来实现可视化。

OpenGL草地渲染器 (2019)

这个项目实现了是对论文Responsive Real-Time Grass Rendering for General 3D Scenes的复现。它使用贝塞尔曲线(Bézier curve)来表示单根草的数据,然后使用细分曲面着色器(tessellation shader)来从曲线动态生成草地的几何模型。同时,它使用了计算着色器(compute shader)来实现基于欧拉法的草地物理模拟,计算着色器同时使用了各种culling的技术来减少每帧所需要画的三角数量。