[vlc-devel] [PATCH] Direct3D: implement HLSL pixel shading in the rendering pipeline

Felix Abecassis felix.abecassis at gmail.com
Tue Jan 28 13:43:05 CET 2014

2014-01-28 Rafaël Carré <funman at videolan.org>:
> Do you want to add these to mingw-w64 ?
> It is very easy and I will gladly guide you through the process.
> In fact it might be as easy as pointing it out to jacek (caban) who's
> working
> on DirectX in wine (among other things).
Sure, that would be great.

> Can you reorganize the order of functions in the file to not need these?
I wanted to be consistent with the rest of the file but I agree it
adds unnecessary noise at the beginning of the file. I've reorganized
the functions definition as you suggested.

>> +    char *shader_file = Direct3DGetShaderFile();
> memleak
Indeed, thanks.

> msg_Err ?
Not using shaders is not a fatal error for the module so I think
msg_Warn should be used.

> nit picking: no need to set sys->d3dx_shader if it's already NULL
I think both way are fine, but still I prefer to do:
if (A)
if (B)

Instead of:
if (A) {
    A = NULL;
if (B) {
Direct3DDestroy() uses the former.

> What's shaderPasses value here?
A technique can have several passes, right now we only have only one
pass in the provided shaders but we could have more. For instance the
grayscale shader:
technique Grayscale
    pass p1
        PixelShader = compile ps_2_0 grayscale();

> hd3d9x_dll is always non NULL
No, see first line :).

>> +static HINSTANCE Direct3DLoadShaderLibrary()
> (void)?
I think it's only needed when declaring a prototype.

Thanks for your feedback.

Félix Abecassis

More information about the vlc-devel mailing list