我正在寻找Xbox 360上的XNA的一些见解,主要是因为它可以在其GPU上运行基于矢量的浮点数学?
如果有办法,你能指出我正确的方向吗?
我并不认为自己是这方面的专家,但希望这可以为你指明一个有用的方向.
可能吗?是.您可能已经知道GPU擅长此类计算(因此问题),您确实可以使用XNA控制GPU.它是否适合您的需求是另一回事.
要使用GPU,您可能希望使用HLSL编写着色器.在Reimers的XNA环境中有一个很好的HLSL介绍,你可能想要贯穿它.值得注意的是,该教程侧重于使GPU进行与图形相关的处理,但是您在着色器中编写的内容取决于您.如果基于矢量的浮点数学是为了渲染(因此可以保留在GPU域中),那么你很幸运,可以在这里停下来.
可能在屏幕上渲染不是你想要的.现在,就你的数学运算而言,你在HLSL中有相当大的灵活性.但是,将结果输出到CPU并不是系统的设计方式.这是越来越模糊了我,但肖恩·哈格里夫斯(一XNA开发)各国更比一次是充分利用GPU(比屏幕上呈现的除外)的输出是不平凡的,并会对性能产生影响.检索数据涉及对GetData的调用,这将导致管道停滞.
所以它可以完成.由XNA Framework将让你写了360着色器(支持Shader Model 3.0的加了一些扩展),它是可能得到的结果出来,虽然它可能不适合你的需求是足够的效率.