我刚刚阅读了direct3D中的“参考设备”设备类型。
http://msdn.microsoft.com/en-us/library/windows/desktop/bb219625(v=vs.85).aspx
这是否意味着我可以在任何旧硬件上开发和测试(不是性能,只是视觉效果)Direct3D 11应用程序,包括花哨的ShaderLevel5内容?
是否有OpenGL的等价物?
答案 0 :(得分:1)
是有效的,这是参考驱动程序的作用。具体而言,它可以与硬件渲染进行比较。如果硬件渲染不等于引用,那么这可以指示驱动程序错误(或“优化”)。
据我所知,不幸的是,OpenGL没有参考驱动程序。
答案 1 :(得分:1)
这是否意味着我可以在任何旧硬件上开发和测试(不是性能,只是视觉效果)Direct3D 11应用程序,包括花哨的ShaderLevel5内容?
是。但是,你应该期待绝对可怕的表现。对于复杂的像素着色器(directx 9参考设备),您可以获得大约1帧每分钟,并且它可能需要更长的时间。毋庸置疑,同样的着色器可以通过硬件加速实时工作。参考设备不是为了提高性能,如果我没记错的话,DirectX SDK说明(某处)参考设备的主要目的是让开发人员看看他们的场景是否应该是它应该的方式,并且没有意外的驱动程序错误。 / p>
另一个问题是,如果您正在运行winxp,则不会有DirectX 10或11,参考设备。
是否有OpenGL的等价物?
没有。最近的事情是mesa3d,但它不是OpenGL认证的。 1。2年前,当涉及GLSL着色器时,它可能会显示非常不同的画面。它还可能在具有流量控制的着色器上崩溃。我从那以后就没用过它。但是,在没有GLSL着色器的情况下使用时,mesa3d非常快,可以与OpenGL相媲美,并且在DirectX 9中显着更快的han参考设备。
答案 2 :(得分:0)
Mesa3d有一个软件光栅化器。他们最近添加了GL 3.0支持。