(Graphics Real-time Rendering Pipeline)
fragments (片元)
这个流程都在硬件层面实现了,显卡和 GPU 都做好了。但是同时这个流程也是可编程的。
比如 OpenGL 就是可以用来写 Shader 的,有分为 Vertex / Fragment (i.e. Pixel-level) 等不同级别的着色器。
比如上面是渲染漫反射的方法。
norm: 法线,lightDir: 光源方向
有 Geometry Shader 动态产生三角形等等。 Compute Shader 还可以实现渲染以外的通用计算。比如 DirectX 12 等等。
shadertoy.com :你尽管写着色器,我让你在网页上可以实时渲染。
Unreal 支持经典算法的实现:阴影、实时全局光照、预计算等等。让用户不用特别关注图形背后的算法。
GPU (Graphics Process Unit) 的发展,显卡可以处理 100’s of thousands to millions of triangles in a scene
独立 GPU、集成 GPU。
GPU:高度并行化。核心数量可以理解成可以并行的线程的数量。