static PixelFormatDescriptor() { PixelFormatDescriptor.Empty.Size = (ushort)40; PixelFormatDescriptor.Empty.Version = (ushort)0; PixelFormatDescriptor.Empty.Flags = PFD.Flags.None; PixelFormatDescriptor.Empty.PixelType = PFD.PixelType.RGBA; PixelFormatDescriptor.Empty.ColorBits = (byte)0; PixelFormatDescriptor.Empty.RedBits = (byte)0; PixelFormatDescriptor.Empty.RedShift = (byte)0; PixelFormatDescriptor.Empty.GreenBits = (byte)0; PixelFormatDescriptor.Empty.GreenShift = (byte)0; PixelFormatDescriptor.Empty.BlueBits = (byte)0; PixelFormatDescriptor.Empty.BlueShift = (byte)0; PixelFormatDescriptor.Empty.AlphaBits = (byte)0; PixelFormatDescriptor.Empty.AlphaShift = (byte)0; PixelFormatDescriptor.Empty.AccumBits = (byte)0; PixelFormatDescriptor.Empty.AccumRedBits = (byte)0; PixelFormatDescriptor.Empty.AccumGreenBits = (byte)0; PixelFormatDescriptor.Empty.AccumBlueBits = (byte)0; PixelFormatDescriptor.Empty.AccumAlphaBits = (byte)0; PixelFormatDescriptor.Empty.DepthBits = (byte)0; PixelFormatDescriptor.Empty.StencilBits = (byte)0; PixelFormatDescriptor.Empty.AuxBuffers = (byte)0; PixelFormatDescriptor.Empty.LayerType = PFD.LayerType.MainPlane; PixelFormatDescriptor.Empty.Reserved = (byte)0; PixelFormatDescriptor.Empty.LayerMask = 0U; PixelFormatDescriptor.Empty.VisibleMask = 0U; PixelFormatDescriptor.Empty.DamageMask = 0U; PixelFormatDescriptor.RGBA = new PixelFormatDescriptor(); PixelFormatDescriptor.RGBA.Size = (ushort)40; PixelFormatDescriptor.RGBA.Version = (ushort)1; PixelFormatDescriptor.RGBA.Flags = PFD.Flags.SupportOpenGL; PixelFormatDescriptor.RGBA.PixelType = PFD.PixelType.RGBA; PixelFormatDescriptor.RGBA.ColorBits = (byte)32; PixelFormatDescriptor.RGBA.RedBits = (byte)0; PixelFormatDescriptor.RGBA.RedShift = (byte)0; PixelFormatDescriptor.RGBA.GreenBits = (byte)0; PixelFormatDescriptor.RGBA.GreenShift = (byte)0; PixelFormatDescriptor.RGBA.BlueBits = (byte)0; PixelFormatDescriptor.RGBA.BlueShift = (byte)0; PixelFormatDescriptor.RGBA.AlphaBits = (byte)32; PixelFormatDescriptor.RGBA.AlphaShift = (byte)0; PixelFormatDescriptor.RGBA.AccumBits = (byte)0; PixelFormatDescriptor.RGBA.AccumRedBits = (byte)0; PixelFormatDescriptor.RGBA.AccumGreenBits = (byte)0; PixelFormatDescriptor.RGBA.AccumBlueBits = (byte)0; PixelFormatDescriptor.RGBA.AccumAlphaBits = (byte)0; PixelFormatDescriptor.RGBA.DepthBits = (byte)32; PixelFormatDescriptor.RGBA.StencilBits = (byte)0; PixelFormatDescriptor.RGBA.AuxBuffers = (byte)0; PixelFormatDescriptor.RGBA.LayerType = PFD.LayerType.MainPlane; PixelFormatDescriptor.RGBA.Reserved = (byte)0; PixelFormatDescriptor.RGBA.LayerMask = 0U; PixelFormatDescriptor.RGBA.VisibleMask = 0U; PixelFormatDescriptor.RGBA.DamageMask = 0U; }
public static PixelFormatDescriptor[] GetSupportedFixelFormatDescriptors( IntPtr hdc) { List <PixelFormatDescriptor> formatDescriptorList = new List <PixelFormatDescriptor>(); PixelFormatDescriptor empty1 = PixelFormatDescriptor.Empty; int num = WGL.DescribePixelFormat(hdc, 1, 40U, ref empty1); if (num == 0) { throw new Win32Exception(Marshal.GetLastWin32Error()); } formatDescriptorList.Add(empty1); for (int pixelFormat = 2; pixelFormat <= num; ++pixelFormat) { PixelFormatDescriptor empty2 = PixelFormatDescriptor.Empty; WGL.DescribePixelFormat(hdc, pixelFormat, 40U, ref empty2); formatDescriptorList.Add(empty2); } return(formatDescriptorList.ToArray()); }
public static extern int SetPixelFormat( IntPtr hdc, int iPixelFormat, [In] ref PixelFormatDescriptor pfd);
public static extern int DescribePixelFormat( IntPtr hdc, int pixelFormat, uint size, [In, Out] ref PixelFormatDescriptor pfd);
public static extern int ChoosePixelFormat(IntPtr hdc, [In] ref PixelFormatDescriptor pfd);