首页 > 其他分享 >Window平台的OpenGL - Wiggle函数

Window平台的OpenGL - Wiggle函数

时间:2022-12-17 16:33:59浏览次数:40  
标签:HGLRC OpenGL 句柄 Wiggle Window HDC 上下文 函数

OpenGL是一个单纯的图形API接口,用户的交互和屏幕窗口处理都交给了操作系统去完成。为了和操作系统很好的配合,每一种系统都有自己对OpenGL的扩展,包括一些窗口管理和用户交互的一些函数。有必要提供一些设置缓存、颜色深度和其它一些绘图特征。

对于微软的Windows操作系统,这种紧密的关系包含在新的wiggle函数中,这些函数都以wgl为前缀,其中最常用的几个是:

1 HGLRC wglCreateContext(HDC hdc);
2 BOOL wglDeleteContext(HGLRC hglrc);
3 BOOL wglMakeCurrent(HDC hdc, HGLRC hglrc);
4 HGLRC wglGetCurrentContext();
5 HDC wglGetCurrentDC();

下面对这些Wiggle函数作分别介绍:

 

1、函数wglCreateContext()

该函数输入一个GDI的设备句柄hdc,创建与这个设备相关联的OpenGL上下文。函数的原型如下:

HGLRC wglCreateContext(HDC hdc);

如果创建成功,则返回上下文的句柄,否则返回NULL。

在调用这个函数创建上下文之前,必须先调用函数SetPixelFormat()设置与设备相匹配的像素格式。

 

2、函数wglDeleteContext()

该函数用于删除一个OpenGL的上下文,函数的原型如下:

BOOL wglDeleteContext(HGLRC hglrc);

若删除成功,返回TRUE,否则返回FALSE。

 

3、函数wglMakeCurrent()

该函数将一个设备的OpenGL上下文设置为当前线程的OpenGL上下文,后续所有的OpenGL命令都发往这个上下文处理,并通过该上下文实现窗口场景的绘制。函数原型如下:

BOOL wglMakeCurrent(HDC hdc, HGLRC hglrc);

若成功设置,返回TRUE,否则,返回FALSE。

 

4、函数wglGetCurrentContext()

该函数用于获取线程中当前的OpenGL上下文。函数原型如下:

HGLRC wglGetCurrentContext();

返回当前线程中OpenGL上下文的句柄,若当前线程没有OpenGL上下文,则返回NULL。

 

5、函数wglGetCurrentDC()

该函数用于获取当前OpenGL上下文的设备句柄。函数原型如下:

HDC wglGetCurrentDC();

返回当前OpenGL上下文的设备句柄,若当前线程没有OpenGL上下文,则返回NULL。

 

标签:HGLRC,OpenGL,句柄,Wiggle,Window,HDC,上下文,函数
From: https://www.cnblogs.com/chanyuantiandao/p/16989136.html

相关文章

  • windows下安装和配置Redis
    一、下载windows版本的Redis    Redis官方提供的是Linux安装版的,并没有Windows版本的Redis,为了学习Redis总不能去跑个虚拟机来运行吧,所以在GitHub中有人发布了Windows......
  • 检测指定软件是否在运行(windows和linux)
    检测指定软件是否在运行,以下代码适用于windows和linuxunituappisrunning;{$modeobjfpc}{$H+}interfaceusesClasses,SysUtils{$IFDEFWINDOWS},Windows,......
  • Windows for Docker 搭建LNMP开发环境
    转载至《Docker-Windows上搭建LNMP环境》1windows安装DockerDesktop下载地址注:请仔细查看安装环境要求,否则容易做无用功Hyper-v如果开启的话电脑有装VMware的话会V......
  • Windows 10 G 神州网信政府版
    ​神州网信政府版2018版:Win10CMGE_V0-H.1020.000.iso校验码:9484e568c6505f9c4ad5b9fcf7ec8d83588eebfb38089f53e3301112076fb7f2下载地址:https://download.cmgos.com/a......
  • Windows 下如何优雅的使用 Burp Suite
    之前一直使用但是BurpSuite2.1.6后面由于需要高版本的JAVA了就没有再折腾下去,但是最近圈子里一直传着2020.9.1的版本,国光安装了一下,发现同时也封装好JDK了,这样可......
  • Windows各个系统勒索补丁下载地址
    WindowsXP WindowsXPSP3安全更新程序(KB4012598)下载地址​​https://www.microsoft.com/en-us/download/details.aspx?id=55245​​WindowsXPSP2x64(64位)安全更......
  • 解决Windows下WSO2 App Server和ESB Server安装冲突问题
    引发冲突的地方有两处:(1)服务名称,两者(及其他WSO2Carbon套件)的Windows服务名称都是WSO2Carbon(2)端口冲突假设我们已经安装了AppServer,服务名称为WSO2Carbon,现......
  • windows安装gitblit
    1、Gitblit-Windows版下载gitblithttp://www.gitblit.com/目前最新版本为CurrentRelease1.8.0(2016-06-22) 2、安装和配置gitblit解压gitblit-1.8.0.zip后,如......
  • Qt5.15-windows安装(解决Network error while downloading问题)
    ​​文章目录​​1项目场景:​​​​2问题描述:​​​​3原因分析:​​​​4解决方案:​​​​4.1下载fiddlereverywhere以及qt在线下载器​​​​4.2在fiddlereverywh......
  • 1. windows打开cmd的几种方式
    转载说明:来自https://blog.csdn.net/JuKim/article/details/1236475021.win+r并输入cmd2.在任意文件夹下面,按住shift键右键鼠标点击“在此处打开powershell窗口......