我需要知道为什么OpenGL没有圆形或曲线功能,这与函数内置的矩形和多边形不同。
答案 0 :(得分:4)
因为GPU通常不具有用于实时渲染的那些形状的硬件加速概念。图形硬件是围绕用于渲染三角形的管道设计的,三角形是原始图形几何体(并且通过扩展通常可以创建夸张的四边形等等)。任何其他形状(曲线,广义网格等)都取决于您创建并转换为GPU 可以渲染的内容。
因此,“允许”您构建,例如圆圈自己允许您控制几何体的复杂程度。当你需要一个“圆圈”时,你不希望GL为你决定要产生多少东西 - 这将取决于你正在做什么,你需要多少细节/平滑度等等。
由于保持重新发明轮子(har)并不好玩,因此您可能最终会使用许多更高级别的图形库,可以轻松地为您创建这些几何图形。但它们在纯GL之上运作。
答案 1 :(得分:0)
我认为在计算机图形加速的早期阶段,加速器马力有点弱,所以任何非线性都被认为是昂贵的。在大多数情况下,曲线恰好是非线性的。