Я делаю несколько эффектов затенения в проекте wpf_c #, и я не знаю, и я не нашел, как добавить пиксельный шейдер байт-кода (.ps) в качестве ресурса после того, как был скомпилирован целевым / exec. Это мой фрагмент кода csproj:
<ItemGroup>
<AvailableItemName Include="PixelShader"/>
</ItemGroup>
<ItemGroup>
<PixelShader Include="Shaders\BlueToneShader.fx" />
bla bla bla other shaders bla bla
</ItemGroup>
<Target Name="PixelShaderCompile" Condition="@(PixelShader)!=''" BeforeTargets="Build">
<Exec Command=""C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64\fxc.exe" %(PixelShader.Identity) /T ps_3_0 /E main /Fo%(PixelShader.RelativeDir)%(PixelShader.Filename).ps" />
</Target>
Все идет хорошо, и файлы .ps генерируются правильно, например:
PixelShaderCompile:
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64\fxc.exe" Shaders\BlueToneShader.fx /T ps_3_0 /E main /FoShaders\BlueToneShader.ps
Microsoft (R) Direct3D Shader Compiler 10.1 Copyright (C) 2013 Microsoft. All rights reserved.
compilation object save succeeded; see "folder"...
Но сейчас я не знаю, как это добавить. ps файл как 'Ресурс' во время компиляции. Кто-нибудь знает как? Я не нашел чёткой документации.