[Mesa-dev] Direct3D 9 state tracker

Stefan Dösinger stefandoesinger at gmail.com
Mon Jul 22 09:48:50 PDT 2013


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

Am 2013-07-22 15:39, schrieb Jose Fonseca:
> It seems to me that this would be more useful if the state tracker
> targeted not the D3D9 API, but the WDDM D3D9 DDI [2].  Targeting
> the DDI would allow, e.g., to share more code with rest of WINE
> (the API->DDI runtime layer);
Fwiw, Wine does not use Microsoft's DDI in any way. We use our own
interface to abstract between d3d versions, which is a mix of d3d9 and
d3d10, with some ddraw-specific extras.

Our main d3d module (wined3d.dll) has some internal abstraction layers
for shader translation and fixed function pipeline implementations.
Right now we have implementations based on GLSL, ARB_program,
ATI_fragment_shader, NV_texture_shader and ARB_texture_env_combine, as
well as code to handle OpenGL fixed function vertex processing. Adding
a gallium-based backend should be a "relatively" easy challenge. The
bigger problem would be resource creation and loading (buffers,
textures) because there's no abstraction for that yet.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.20 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJR7WJyAAoJEN0/YqbEcdMwjVcP/ihUVZd66dRr2X8f49j23muX
biuF1KbcFsB1+LeTtH50iuDn8gdnPiTJWdrwju3wfs4IRsmA8IfQSxeBElIuEyEZ
o+2keEmsR9/aDZvI4uilfzVmtcaNzCZWnzKkVOctDHaxVaW52fH2OaB01weQXL/r
gT5dMFhkVc8vN6BFiawrnvZDArewIFa8XDBhdyz7tWpamel8UF922otBzrVDoK0o
pFQqcZLrdvtCSVq5uHVzKqc/jRP2FuNCVlvKrrwTrjWIO/q3F5oB0SJDUXd8xp1K
zJRSVB1U4MzVRE5jf5X+s+nMrsLEME0DBQCNYtsh3veLFDS98UCkoWDAGC7IPgrX
0zfeXITeq6dm0CvN7cGUFCmm+GO+vlwRTsFiAmAp5tvhOBIcyUTPO36LBcxMxtQQ
p+KubboWMCDTPWnidPh3LpbXE+y2JVfsfpviVykRdNAgxiI28lcVuHMSkyLahQ9s
fbLGc4fR+WbGwBVAkWE9HZ3y9kr3O+aUK+m70d7mwYEwV0ZhJEGRZibLnK2JHHNf
B0NJJ9YmU64LmDOfUGzHU4rhbQfURk6SSh+ys3+iNPUSL2iCNGRf4QS01qAeoW0/
RITNPENBWlzQJWgkED2yLp28q/ZB3YCGn92/TpU7IHucd1eZzF+IPY5M+MKRPWXm
JZ1TJlKvmP12YUAXgBNV
=JxrZ
-----END PGP SIGNATURE-----


More information about the mesa-dev mailing list