Recognize cards that expose GLSL 1.30 as DX10 capable even if they don't support EXT_GPU_SHADER4

Stefan Dösinger stefandoesinger at gmail.com
Tue May 27 14:13:44 CDT 2014


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 2014-05-27 17:35, schrieb Stefan Dösinger:
> Am 2014-05-27 16:56, schrieb Andrei Slavoiu:> Yes,
>> GL_ARB_shader_texture_lod is exposed by mesa for all drivers in 
>> both core and compatibility contexts. So should I check for 
>> GL_ARB_shader_texture_lod instead of glsl version?
> No, I'd say use something like if (EXT_gpu_shader4 || ( 
> ARB_shader_texture_lod && glsl_version >= 1.30).
An even nicer solution would be to use the capabilities reported by
the shader backend. See select_shader_backend() and and
shader_backend->shader_get_caps. Unsupported vertex shaders would
match a dx 7 card, VS 1.x dx 8, VS 2/3 dx9 and 4 dx10. For separating
dx6 and and 7 the fixed function fragment pipeline info is needed
(number of supported texture units).

Note that we currently do not support pixel shaders on dx8 cards, and
probably never will. That's because those cards use separate GL
extensions (ATI_fragment_shader and GL_NV_register_combiners +
GL_NV_texture_shader). Thus it's better to look only at vertex shaders
for now to prevent dx8 cards from being reported as dx7.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJThOPoAAoJEN0/YqbEcdMwvvcP/jVwAxed6lqHNdMy9qrfwJ25
sfK2Npf0tiuvdWT5t/pGMhiAF/abWoS9w5qhD8OMEXo4TpYOS4IkLxWSJcJ/adAD
w0cyduvRu0nONy5apHPaR4py6EIYrZB2n4WZmoj/QHJJjWzFSKGeQweuohcr8NvJ
ddc/di9hjyquGuiTUNRU+hHiW3HPYVe4CJNZEH3jXyG6q0e6GgztxS6p10x2RcZY
SlSKnOcSgEZAQvFPlZ50QWz6oElKFGzrkODcQZhuh8OHxfOntqzJyXg8PB5Ft2L0
6cHtVE5eTuXT6thcOds1759aQ1qLO7zOC59wP3N72Wp5L8TU/rN+Gg4ooHnV2ctw
gkBZ0SkgsK7tR2aQ+gc9zU4CUEcX4HRuO3vMgSElUGl4Df6yuSKLteVy/eyKXlrX
pHDcOdO899978tk+NibwQZOHyKo8l5jpzdVpkiOkd72lk3xLicIGlN3zKHZL0Cfw
Esq3bI60boPbOVdYP+yI6X8a/UoBtpIvWxe5dfFQJqzm+gOnkvcEY5QEEx8P9IPd
895BrPcUOIxMCpPlZ26Op7eIGgtKPpRi2TJ7BwYgwWAdgeBNuQnlUcdkCn9FFvSQ
jYvKze39X+q5vYxSAlKVAszhMOOXQM/NC9Vol1WfiL1T6+CFWhrR+cPd0x0So6uD
9u1plWqMoP7rf2QtxAPR
=fZmC
-----END PGP SIGNATURE-----



More information about the wine-devel mailing list