3 #if SILICONSTUDIO_PARADOX_GRAPHICS_API_DIRECT3D
6 namespace SiliconStudio.
Paradox.Graphics
11 public partial class DepthStencilState
19 private DepthStencilState(GraphicsDevice device, DepthStencilStateDescription depthStencilStateDescription)
22 Description = depthStencilStateDescription;
24 CreateNativeDeviceChild();
28 protected internal override void OnDestroyed()
36 protected internal override bool OnRecreate()
40 CreateNativeDeviceChild();
44 private void CreateNativeDeviceChild()
46 SharpDX.Direct3D11.DepthStencilStateDescription nativeDescription;
48 nativeDescription.IsDepthEnabled = Description.DepthBufferEnable;
49 nativeDescription.DepthComparison = (SharpDX.Direct3D11.Comparison)Description.DepthBufferFunction;
50 nativeDescription.DepthWriteMask = Description.DepthBufferWriteEnable ? SharpDX.Direct3D11.DepthWriteMask.All : SharpDX.Direct3D11.DepthWriteMask.Zero;
52 nativeDescription.IsStencilEnabled = Description.StencilEnable;
53 nativeDescription.StencilReadMask = Description.StencilMask;
54 nativeDescription.StencilWriteMask = Description.StencilWriteMask;
56 nativeDescription.FrontFace.FailOperation = (SharpDX.Direct3D11.StencilOperation)Description.FrontFace.StencilFail;
58 nativeDescription.FrontFace.DepthFailOperation = (SharpDX.Direct3D11.StencilOperation)Description.FrontFace.StencilDepthBufferFail;
59 nativeDescription.FrontFace.Comparison = (SharpDX.Direct3D11.Comparison)Description.FrontFace.StencilFunction;
61 nativeDescription.BackFace.FailOperation = (SharpDX.Direct3D11.StencilOperation)Description.BackFace.StencilFail;
63 nativeDescription.BackFace.DepthFailOperation = (SharpDX.Direct3D11.StencilOperation)Description.BackFace.StencilDepthBufferFail;
64 nativeDescription.BackFace.Comparison = (SharpDX.Direct3D11.Comparison)Description.BackFace.StencilFunction;
66 NativeDeviceChild =
new SharpDX.Direct3D11.DepthStencilState(NativeDevice, nativeDescription);
StencilOperation
TODO Comments