C# 实现精简版的栅格化渲染器

MiniSoftRenderer

精简的软栅格化渲染器,便于学习,实验用

实现超级简单的功能

  • VertexShader - to clip space
  • VertexShader-PostProcessing - Perspective divide & Perspective correct
  • PrimitiveAssembly - only triangle now
  • Simply clip vertex - clip the vertex which out of ndc space[-1,1]
  • Facing cull - culling the back/front
  • Rasterizer and FragmentShader

另一个功能稍微多一些的渲染器

https://github.com/javelinlin/3DSoftRenderer
csdn blog:用C# Bitmap作为画布写个3D软渲染器

Git

MiniSoftRenderer

总结

由于前阵时间打算学习图形基础的内容。
于是写了一些简单的渲染器。
但是写着写着,工程越来越复杂,因为我是当学习用,没注意太多架构合理性。
然后有些BUG出现,也不好改,所以干脆再写一个更简便的迷你渲染器。
主要是为了修复之前渲染器没解决的:纹理投影校正的问题。

该工程非常适合刚学习图形基础的同学。注释很多,代码尽量简洁。

运行效果

在这里插入图片描述

该精简版的渲染器我主要是为了解决:纹理投影校正的问题

如下图,左边的纹理投影校正就有问题
右边绿色圈起来的都没有问题。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/linjf520/article/details/99129344