Opengl CPU/GPU在3d程序中处理哪些任务?

Opengl CPU/GPU在3d程序中处理哪些任务?,opengl,gpu,cpu,render,mode,Opengl,Gpu,Cpu,Render,Mode,在3d建模界面中旋转场景时,CPU负责该任务的哪一部分,GPU负责哪一部分?(网格垂直移动、着色、跟踪UV坐标-可能会偏移它们、照亮三角形并正确渲染透明度) 通过此类建模程序(实时)通常使用哪种渲染模式?即时还是保留 这个问题真的很模糊。 一般来说,无论发生什么,因为这实际上取决于节目和制作人。旧的程序大多都是CPU,因为GPU不存在或太弱,无法处理大量场景。 然而,如今GPU强大到足以处理大规模场景,程序创建者可以提供各种解决方案,但它通常是一个抽象系统,您可以在其中拥有数据和视图,因此它们允

在3d建模界面中旋转场景时,CPU负责该任务的哪一部分,GPU负责哪一部分?(网格垂直移动、着色、跟踪UV坐标-可能会偏移它们、照亮三角形并正确渲染透明度)


通过此类建模程序(实时)通常使用哪种渲染模式?即时还是保留

这个问题真的很模糊。 一般来说,无论发生什么,因为这实际上取决于节目和制作人。旧的程序大多都是CPU,因为GPU不存在或太弱,无法处理大量场景。 然而,如今GPU强大到足以处理大规模场景,程序创建者可以提供各种解决方案,但它通常是一个抽象系统,您可以在其中拥有数据和视图,因此它们允许您在编辑视口中指定所需内容:实时/即时、预处理、高细节或低细节。程序通常会牺牲准确性以提高速度,因此您可以轻松编辑

例如,3ds max使用渲染设备、视口处理程序和渲染器。渲染器处理生产质量输出,但今天,它们并不局限于CPU,因为它们可以利用GPU(仅考虑OpenCL或CUDA),同时保持质量并减少渲染时间。第二,任何人都可以制作插件来实现他们想要的视口渲染器——可以是CPU、GPU或混合渲染器。 因此,抽象在建模工具中很常见,场景信息被输入到视口渲染器中,该渲染器通常与游戏引擎的渲染器非常相似。如果你想一想,因为它是一个工具,有一个用户界面和各种系统,它需要处理这个问题,尝试通过在GPU上做尽可能多的渲染工作来尽可能减轻CPU的负担,因此编辑在“通用”数据结构中的内存中进行,而不是在显示给你的数据结构中进行,我不确定,但我认为他们也可以使用图形api(让它是OpenGL或DirectX)来进行拾取(选择)

渲染模式正如我所说的“按需”渲染,通常在需要时进行渲染,因此在“实时预览”处于禁用状态的场景中,仅当您修改某些内容或移动摄影机时,渲染模式才会进行渲染,并且只要您执行需要不断更新的操作,渲染模式就会准确地进行渲染


除此之外,还有一些混合方法,用户希望获得类似于产品的质量,即使到目前为止,GPU也很难做到这一点,因此他们决定使用一个快速淡化的真实渲染器版本,以尽可能接近产品质量。一个简单的例子是3dsMax的“真实”视口,它没有环境光遮挡“实时“但它的速度足够快,所以它实际上很有用。在更高级的情况下,他们会制作特殊的扩展卡来处理快速光线跟踪,以便能够生成快速/高质量的图形,但即使在这些情况下,主要的事情还是一样的,他们以通用的内部格式存储可编辑的数据,并将其输入某种输出的渲染器,不一定与您从非常高质量的离线渲染器获得的效果相同,但它仍然提供了一个很好的轮廓。首先,GPU负责将点、线和三角形放到屏幕上。然而,这涉及到一定数量的计算

通常的管道是,对于每个顶点(它是属性的组合,通常包括但不限于位置、法线、纹理坐标等),顶点位置从模型局部空间转换为规范化设备坐标。在大多数实现中,这是一个三阶段的过程

  • 从模型局部空间到视图的转换=眼睛空间–眼睛空间坐标稍后将用于照明计算等
  • 从视图空间到剪辑空间的转换,也称为投影;这取决于视图空间的哪一部分稍后将在视口中可见;这也是仿射透视法被引入的地方
  • 通过坐标均匀化映射到标准化设备坐标(如果使用仿射投影,后面的步骤实际上会创建透视图)
  • 上述计算通常由GPU执行

    在3d建模界面中旋转场景时,CPU负责该任务的哪一部分,GPU负责哪一部分

    那要看你指的是什么样的旋转。如果您指的是视口的更改,但场景中的任何输入数据实际上都没有更改。唯一需要更改的是在第一个转换步骤中使用的参数。该参数通常为4×4矩阵。旋转视口时,将在CPU上计算新的modelview变换矩阵。然后将该矩阵传递给GPU,并重新绘制整个场景

    然而,如果一个模型实际上是在建模器中修改的,那么计算通常是在CPU上进行的

    (网格垂直移动、着色、跟踪UV坐标-可能会偏移它们、照亮三角形并正确渲染透明度)

    在在线渲染器中,这通常主要由GPU完成,但某些部分可能由CPU预先计算


    不可能做出明确的声明,因为工作负载的共享方式取决于实际应用程序。

    立即/保留的区别与仅光栅化的图形处理器一样陈旧。自从硬件T&L正式引入我们的词汇表以来,任何利用硬件渲染编写的新建模软件都将尽可能多地将这些东西推到GPU上。非交互式高质量渲染可能由专有软件渲染器处理,但您看到的实时预览将使用现代API完成,这排除了im