On 10/13/22 06:39, Nikolay Sivov (@nsivov) wrote:
Nikolay Sivov (@nsivov) commented about dlls/mfmediaengine/tests/mfmediaengine.c:
+static void test_playback_on_d3d_device(void) +{
- static const char ps_input[] = "Texture2D<float4> tex : register(t0);\n"
"SamplerState smp : register(s0);\n"
"\n"
//"float4 main(in float4 p : SV_POSITION, in float2 texcoord : TEX_COORD) : SV_TARGET {\n"
"float4 main(in float2 texcoord : TEX_COORD) : SV_TARGET {\n"
"texcoord.y = 1 - texcoord.y;\n" /* We get the image horizontally flipped so we transform it back. */
"return tex.Sample(smp, texcoord);\n"
"}";
- static const char vs_input[] = "float4 main(out float2 texcoord : TEX_COORD, in uint vid : SV_VERTEXID) : SV_POSITION {\n"
"texcoord = float2(float(vid & 1) * 2.0f, float(vid & 2));\n"
"return float4(-1.0f + 2.0f * texcoord, 0.0f, 1.0f);\n"
"}";
We usually put precompiled shaders in such cases. Is current wine capable to compile this? What about missing compiler library on Windows?
I believe Wine is capable of compiling those, although I haven't checked.
(Incidentally, there's a stray comment line in one of them.)
Compiler availability is more of a concern, though. As far as I can tell from my VMs, windows 7 ships d3dcompiler_43 but not 47, but windows 10 ships d3dcompiler_47 but not 43. All of our testbot machines have 47 on them (manually installed, I guess), and all but the win11 machines have 43 as well.
There's also the option of putting vkd3d-compiler in our build system, though that gets more complicated.