自90年代以来,大多数3D视频游戏都使用了基于多边形的硬件渲染。为什么是多边形?它们在某些事情上工作得很好,但对其他事物就不是那么好了,例如,除非多边形数非常大,否则用多边形表示的人形看起来很糟糕。我猜这是因为它们在硬件渲染方面工作得更好,最擅长做非常简单的操作很多次。(现代显卡可能更灵活,但这个行业早在很久以前就开始使用多边形了。)
假设您想要编写一个软件渲染游戏引擎(比方说,因为您的目标硬件有一个快速的CPU,但是图形芯片非常弱)。多边形还会是前进的路吗?
猜想:如果要在软件中渲染,最好发挥优势,使用更复杂的原语,特别是弯曲的形状。
这是正确的吗?如果是这样的话,对于应该使用什么样的曲线基元,是否有任何已知的结果?
发布于 2017-08-02 07:41:39
大多数软件渲染引擎将参数原语骰子到微多边形,通常是在需要的情况下飞行。本质上,这降低了确定交叉口所需的复杂性。由于每个多边形都小于一个像素,所以表面看起来仍然是光滑的。
这允许
图1: 2003年起使用Renderman对修整的NURBS曲面进行微多边形渲染。没有一个多边形是可见的,因为每个样本或多或少都有一个单独的多边形。
但是,是的,可以用迭代法从隐式公式中求解曲面。它通常用于光线行进的上下文中。整个呈现引擎可以通过这样做来工作--本质上是内存和计算之间的权衡。
https://computergraphics.stackexchange.com/questions/5454
复制