软渲染器(软着色器)_项目进度
该软渲染器的意义在于深入学习渲染管线的流程,在不使用图形API的情况下,实现对三维模型的渲染。
已实现目标
1、透视投影和透视校正每个顶点参数插值。
2、在NDC空间进行背面剔除。
3、采用 Clamp 纹理寻址实现纹理采样。
4、实现Z 缓冲(反转 z)、深度测试,模板缓冲和模板测试。
5、实现 Phong/Blinn-Phong 光照算法。
6、实现平面阴影效果。
![](https://img2022.cnblogs.com/blog/2238682/202207/2238682-20220724182059171-771197283.png)
![](https://img2022.cnblogs.com/blog/2238682/202207/2238682-20220726103533958-1886340417.gif)
待实现目标
1、多重采样抗锯齿(MSAA)。
2、透明度和混合操作。
3、阴影贴图(Shadow Map)的阴影效果+VSSM软阴影。
4、实现多线程渲染。
项目源码地址
1、mshentai/EasySoftRenderer: 一个简单的软渲染器项目。 (github.com)
2、EasySoftRenderer: 一个简单的软渲染器项目 (gitee.com)