【发布时间】:2010-05-20 23:01:17
【问题描述】:
背景:我才刚刚开始。我什至没有接触 Direct3D 11 API,而是着眼于理解管道等。
通过查看漂浮在网络上的文档和信息,应用程序似乎正在处理一些计算。也就是说,计算不是简单地向 GPU 显示要相乘的矩阵,而是由在 CPU 上运行的数学库完成的。我没有任何特定的资源可以指出,尽管我想我可以指出XNA Math Library 或 2 月 DX SDK 中提供的示例。当你看到像mViewProj = mView * mProj; 这样的代码时,这个投影是在 CPU 上计算的。还是我错了?
如果您正在编写一个程序,屏幕上可以有 10 个立方体,您可以在其中移动或旋转立方体以及视点,您会在 CPU 上进行哪些计算?我想我会存储单个立方体的几何图形,然后转换代表实际实例的矩阵。然后似乎我会使用 XNA 数学库或我选择的其他库来转换模型空间中的每个立方体。然后获取世界空间中的坐标。然后将信息推送到 GPU。
这对 CPU 来说是相当多的计算。我错了吗?
- 我是否基于太少的信息和理解得出结论?
- 如果答案是 STFW,我应该用 Google 搜索哪些术语?
- 或者,如果我是对的,为什么不将这些计算也推送到 GPU?
编辑:顺便说一下,我没有使用 XNA,但文档指出 XNA 数学库取代了以前的 DX 数学库。 (我将 SDK 中的 XNA 库视为纯粹的模板库)。
【问题讨论】:
标签: graphics rendering direct3d