Graphics Reference
In-Depth Information
// Pixel shader to assign to use
public PixelShader Shader { get; set; }
// Shader resources to bind to pixel shader
public ShaderResourceView[] ShaderResources {get; set;}
/// <summary>
/// Default constructor
/// </summary>
public ScreenAlignedQuadRenderer()
{
}
...
}
4.
Within the overridden function ScreenAlignedQuadRenderer.
CreateDeviceDependentResources , initialize the device resources
as shown in the following snippet:
RemoveAndDispose(ref vertexShader);
RemoveAndDispose(ref vertexLayout);
RemoveAndDispose(ref vertexBuffer);
// Retrieve our SharpDX.Direct3D11.Device1 instance
var device = DeviceManager.Direct3DDevice;
ShaderFlags shaderFlags = ShaderFlags.None;
#if DEBUG
shaderFlags = ShaderFlags.Debug |
ShaderFlags.SkipOptimization;
#endif
// Use our HLSL file include handler to resolve #include
directives in the HLSL source
var includeHandler = new
HLSLFileIncludeHandler(System.IO.Path.Combine
(System.IO.Path.GetDirectoryName(System.Reflection.
Assembly.GetEntryAssembly().Location), "Shaders"));
// Compile and create the vertex shader
using (var vertexShaderBytecode =
ShaderBytecode.CompileFromFile(@"Shaders\SAQuad.hlsl",
"VSMain", "vs_5_0", shaderFlags, EffectFlags.None, null,
includeHandler))
 
Search WWH ::




Custom Search