我目前的问题如下:我尝试创建一个带有集成的Primtive-Rendering(Sprite和PrimtiveBatch合二为一)的SpriteBatch。
目前,Visual Studio 11的调试器显示已呈现一条线。 IA-Stage是正确的,因此VertexShader-Stage是。但我没有得到任何输出。
我使用调试器运行它并发现,着色器具有异常的巨大值。
我传递了两个顶点:20,20(位置)和80,80(位置)都是黑色的。 ConstantBuffer有三个矩阵:World(用于手动对象转换),View和Projection。
在代码中,它们都是正确的: M11 = 0.00215749722,依此类推。 在着色器中,它看起来像这样:
位置= x = 200000.000000000,y = 200000.000000000,z = 0.000000000,w = 0.000000000 (#1顶点的位置)
Projection[0] = x = 22.000000000, y = 0.000000000, z = 0.000000000, w = 0.000000000
Projection[1] x = 0.000000000, y = -45.000000000, z = 0.000000000, w = 0.000000000
Projection[2] x = 0.000000000, y = 0.000000000, z = 10000.000000000, w = 0.00000 0000
Projection[3] x = 0.000000000, y = 0.000000000, z = 0.000000000, w = 10000.000000000
最后,XYZW的输出结果(位置)为0。 之前它是413,-918或类似的东西。我不知道为什么,但现在结果总是0 ......
这很奇怪,我完全陷入困境: - /
由于 [R