summaryrefslogtreecommitdiffstats
path: root/tests/auto/other/d3dcompiler
Commit message (Collapse)AuthorAgeFilesLines
* d3dcompiler_qt: Remove directory creation inside the proxy libraryAndrew Knight2013-12-191-8/+21
| | | | | | | | | | | Use of mkpath/mkdir is removed in order to make the proxy less invasive when there is no compiler service running. Creation of the directory structure is fully the service's responsibility. Service availability is now only checked once, at the first invocation of D3DCompile, as it is expected to be started before the application. Change-Id: Ib8c4f062c418497c2253daf524654e1db30dae47 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Introducing d3dcompiler_qtAndrew Knight2013-12-092-0/+363
d3dcompiler_qt is a DLL for use with ANGLE which replaces d3dcompiler_XX at runtime to proxy shader compilation calls. This is useful for: - Loading the newest D3D compiler DLL found, instead of loading the version specified when Qt was compiled - Reporting better debug information when the compiler cannot be loaded - Caching shader blobs for later use - Returning cached shader blobs - Deferring compilation to another mechanism, such as a D3D compilation service running on a host debugging machine * The above use cases are especially important for Windows Store apps, as they are not allowed to ship the d3dcompiler. On Windows Phone, where there is no runtime compiler, this is essential for handling QtQuick apps which require runtime shader compilation. * This requires a separate service which monitors a directory for shader source files, compiles these files into D3D bytecode, and places the bytecode in the qtd3dcompiler cache directory. This directory is monitored by qtd3dcompiler, which is then able to then load the blob. Change-Id: I9889c8d66d2ddbe5a7a1dc44bfe5d8ad229b0e43 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>