DirectXTk GeometricPrimitive 纹理坐标

DirectXTk GeometricPrimitive texture coordinates

我正在为某些场景元素使用 GeometricPrimitive,但它的 Draw() 调用始终使用 0-1 的 TX 坐标,没有机会(我认为)更改它。

如果我只是更改 DirectXTk 代码本身的纹理坐标,我可以通过使用更大的纹理坐标来使纹理重复;很明显,虽然我不想依赖破解工具包代码。

因此,由于 Draw() 提供了 lambda 回调,我想知道是否有任何机会通过更新纹理坐标来解决这个问题。

我也在使用 BasicEffect 进行渲染。

他们使用可公开访问的 VertexPositionNormalTexture。如果这以某种方式为我提供了一种遍历他们的顶点缓冲区并更新 TX 坐标的方法,那将对我有用。我想知道我是否可以 Map() 或以其他方式访问它们的缓冲区、遍历顶点、更新 TX 坐标,并希望一切顺利。

这是最好的(唯一的)方法还是有更好的 GeometricPrimitive 方法?

我最终编写了自己的着色器来渲染图元并添加了 UV 变换。这让我可以通过 XMMatrixScaling(10,10,10) 来缩放坐标并获得更大的重复。