public void SetDepthStencilState(H1DepthStencilDescription depthStencilDesc) { DepthStencilStateDescription newDepthStencilStateDesc = DepthStencilStateDescription.Default(); newDepthStencilStateDesc.IsDepthEnabled = depthStencilDesc.DepthEnable; newDepthStencilStateDesc.DepthWriteMask = H1RHIDefinitionHelper.ConvertToDepthWriteMask(depthStencilDesc.DepthWriteMask); newDepthStencilStateDesc.DepthComparison = H1RHIDefinitionHelper.ConvertToComparisonFunc(depthStencilDesc.DepthFunc); newDepthStencilStateDesc.IsStencilEnabled = depthStencilDesc.StencilEnable; newDepthStencilStateDesc.StencilReadMask = depthStencilDesc.StencilReadMask; newDepthStencilStateDesc.StencilWriteMask = depthStencilDesc.StencilWriteMask; newDepthStencilStateDesc.FrontFace = new DepthStencilOperationDescription(); newDepthStencilStateDesc.FrontFace.DepthFailOperation = H1RHIDefinitionHelper.ConvertToStencilOp(depthStencilDesc.FrontFace.StencilDepthFailOp); newDepthStencilStateDesc.FrontFace.FailOperation = H1RHIDefinitionHelper.ConvertToStencilOp(depthStencilDesc.FrontFace.StencilFailOp); newDepthStencilStateDesc.FrontFace.PassOperation = H1RHIDefinitionHelper.ConvertToStencilOp(depthStencilDesc.FrontFace.StencilPassOp); newDepthStencilStateDesc.FrontFace.Comparison = H1RHIDefinitionHelper.ConvertToComparisonFunc(depthStencilDesc.FrontFace.StencilFunc); newDepthStencilStateDesc.BackFace = new DepthStencilOperationDescription(); newDepthStencilStateDesc.BackFace.DepthFailOperation = H1RHIDefinitionHelper.ConvertToStencilOp(depthStencilDesc.BackFace.StencilDepthFailOp); newDepthStencilStateDesc.BackFace.FailOperation = H1RHIDefinitionHelper.ConvertToStencilOp(depthStencilDesc.BackFace.StencilFailOp); newDepthStencilStateDesc.BackFace.PassOperation = H1RHIDefinitionHelper.ConvertToStencilOp(depthStencilDesc.BackFace.StencilPassOp); newDepthStencilStateDesc.BackFace.Comparison = H1RHIDefinitionHelper.ConvertToComparisonFunc(depthStencilDesc.BackFace.StencilFunc); m_GraphicsPipelineStateDesc.DepthStencilState = newDepthStencilStateDesc; }