示例#1
0
        /// <summary>
        /// Returns an integers representing if an OpenGL state was enabled, disabled or not set. No OpenGL getter function is
        /// called to retrieve the actual state of the variables, which means that changes resulting from OpenGL calls done
        /// outside this wrapper, will not be considered.
        /// </summary>
        /// <param name="capability">
        /// The OpenGL state's OpenGL enum.
        /// </param>
        /// <returns>
        /// 0 if the requested state has been disabled,
        /// 1 if the requested state has been enabled,
        /// -1 if the requested state has never been set using this class.
        /// </returns>
        public int IsStateEnabled(OpenGL.EnableCap /*GLenum*/ capability)
        {
            if (!d_enabledOpenGLStates.ContainsKey(capability))
            {
                return(-1);
            }

            var isEnabled = d_enabledOpenGLStates[capability];

            return(isEnabled ? 1 : 0);
        }
示例#2
0
 public void Disable(OpenGL.EnableCap /*GLenum*/ capability)
 {
     if (d_enabledOpenGLStates.ContainsKey(capability))
     {
         if (d_enabledOpenGLStates[capability] != false)
         {
             OpenGL.GL.Disable(capability);
             d_enabledOpenGLStates[capability] = false;
         }
     }
     else
     {
         d_enabledOpenGLStates[capability] = false;
         OpenGL.GL.Disable(capability);
     }
 }