예제 #1
0
        public void SetStencilWriteMask(MgStencilFaceFlagBits face, uint mask)
        {
            var glFaces = (StencilFace)0;

            switch (face)
            {
            case MgStencilFaceFlagBits.BACK_BIT:
                glFaces = StencilFace.Back;
                break;

            case MgStencilFaceFlagBits.FRONT_BIT:
                glFaces = StencilFace.Front;
                break;

            case MgStencilFaceFlagBits.FRONT_AND_BACK:
                glFaces = StencilFace.FrontAndBack;
                break;

            default:
                throw new NotSupportedException();
            }

            GL.StencilMaskSeparate(glFaces, mask);

            {
                var error = GL.GetError();
                if (error != ErrorCode.NoError)
                {
                    Debug.WriteLine("SetStencilWriteMask : " + error);
                }
            }
        }
예제 #2
0
 public void CmdSetStencilWriteMask(MgStencilFaceFlagBits faceMask, UInt32 writeMask)
 {
     Interops.vkCmdSetStencilWriteMask(this.Handle, (VkStencilFaceFlags)faceMask, writeMask);
 }
예제 #3
0
 public void CmdSetStencilReference(MgStencilFaceFlagBits faceMask, UInt32 reference)
 {
     Interops.vkCmdSetStencilReference(this.Handle, (VkStencilFaceFlags)faceMask, reference);
 }
예제 #4
0
 public void SetStencilWriteMask(MgStencilFaceFlagBits face, uint mask)
 {
 }
예제 #5
0
 public void CmdSetStencilCompareMask(MgStencilFaceFlagBits faceMask, UInt32 compareMask)
 {
     Interops.vkCmdSetStencilCompareMask(this.Handle, (VkStencilFaceFlags)faceMask, compareMask);
 }
예제 #6
0
 public void CmdSetStencilWriteMask(MgStencilFaceFlagBits faceMask, uint writeMask)
 {
     throw new NotImplementedException();
 }
예제 #7
0
 public void CmdSetStencilReference(MgStencilFaceFlagBits faceMask, uint reference)
 {
     throw new NotImplementedException();
 }
예제 #8
0
 public void CmdSetStencilReference(MgStencilFaceFlagBits faceMask, uint reference)
 {
     mCommandEncoder.Graphics.SetStencilReference(faceMask, reference);
 }
예제 #9
0
 public void CmdSetStencilWriteMask(MgStencilFaceFlagBits faceMask, uint writeMask)
 {
     mCommandEncoder.Graphics.SetStencilWriteMask(faceMask, writeMask);
 }
예제 #10
0
 public void CmdSetStencilCompareMask(MgStencilFaceFlagBits faceMask, uint compareMask)
 {
     mCommandEncoder.Graphics.SetStencilCompareMask(faceMask, compareMask);
 }