Temaran / UnrealEngineShaderPluginDemo

A tutorial project that shows how to implement HLSL Pixel and Compute shaders in UE4
MIT License
896 stars 236 forks source link

How to pass a texture input to a compute shader? #16

Open theodox opened 4 years ago

theodox commented 4 years ago

Thanks for setting this up. The vanilla examples work for me and I've been able to tweak the USFs and that works as well. However I can't see how to pass a texture input to the compute shader. I added a Texture2D input to the usf and added this to the parameter macros:

    SHADER_PARAMETER_TEXTURE(Texture2D, TestTexture)

In the RunComputeShader_RenderThread example, I pass that along:

     PassParameters.TestTexture = DrawParameters.TestTexture->Resource->TextureRHI->GetTexture2D();

However I always hit a check exception:

 Assertion failed: Bindings.StructureLayoutHash == ParametersMetadata->GetLayoutHash() 

Any suggestions on where I should look? The UE documentation is of course entirely nonexistent :(

Chomusuky commented 4 years ago

I have the same error. Did you find a solution ? It looks like Epic hates developpers :'(

sasmaster commented 3 years ago

Anybody solved this one?