我正在撰写关于自动可移植性测试的硕士论文,并且想知道当他们开发具有OpenGL和DirectX支持的游戏时是否有任何自动测试软件供游戏开发人员使用?从理论上讲,人们可以在游戏中特定序列的自动运行期间记录屏幕并分析OpenGL和DirectX录音,但是有一些技术方面使得这不可能吗?
答案 0 :(得分:2)
我能想到的最接近的是Wine中的测试,它们沿着这些方向做了一些事情。
不幸的是,这样的正确测试是不可能的;测试过于依赖于系统状态,并且不能保证实现像素相同。 DirectX确实提供了参考实现,可以用于许多测试用途,但我不知道OpenGL等价物。
录制屏幕会引入更多错误,具体取决于其执行方式。我见过的测试会渲染一个图像,然后根据纹理数据工作(类似于屏幕录制,但在单个帧上,可能更精确)。但是,整个事情都容易出现相当多的错误,并且可能很慢。
答案 1 :(得分:1)
从我的问题可以看出,您正在尝试比较OpenGL和DirectX渲染器的渲染结果,渲染相同的场景。
我唯一能想到的就是将场景渲染到两个渲染器中的纹理,并将它们保存为未压缩以供以后比较,或者有一个中间渲染路径,它采用纹理和着色器渲染每像素 - 差异到另一个要在以后评估的纹理。
然而,在我看来,这种比较的有用性是值得商榷的,因为很难自动判断错误是否只是实现中的轻微差异或实际可见的工件,更不用说评估错误的重要性了关于用户的看法。
这已经假定您可以让两个渲染器以完全相同的帧速率和相机位置运行,这是不太可能的。
我猜你的错误图片中会有很多噪音和偏移,以便真正找到任何有用的信息,如果有的话。
答案 2 :(得分:0)
我知道屏幕比较大约15年(?)年前针对不同的图形芯片进行的比较,我猜你需要搜索图像质量指标。