[OpenGL学习笔记] 初识,环境配置

参考文档 

Learn OpenGL, extensive tutorial resource for learning Modern OpenGLicon-default.png?t=LA92https://learnopengl.com/


初识

早期的OpenGL使用立即渲染模式(Immediate mode,也就是固定渲染管线),大多数功能都被库隐藏起来,虽然容易使用和理解,但是效率太低

当使用OpenGL的核心模式时,OpenGL迫使我们使用现代的函数, 有着更高的灵活性和效率,然而也更难于学习

当使用新版本的OpenGL特性时,只有新一代的显卡能够支持你的应用程序。这也是为什么大多数开发者基于较低版本的OpenGL编写程序,并只提供选项启用新版本的特性

OpenGL自身是一个巨大的状态机(State Machine):一系列的变量描述OpenGL此刻应当如何运行。OpenGL的状态通常被称为OpenGL上下文(Context)。我们通常使用如下途径去更改OpenGL状态:设置选项,操作缓冲。最后,我们使用当前OpenGL上下文来渲染

状态设置函数, 状态使用函数 这类函数会根据当前OpenGL的状态执行一些操作

在OpenGL中一个对象是指一些选项的集合,它代表OpenGL状态的一个子集 例如 设置某窗口的大小颜色等, 类似c中的结构体

struct object_name {
    float  option1;
    int    option2;
    char[] name;
};

使用OpenGL的类型的好处是保证了在各平台中每一种类型的大小都是统一的。你也可以使用其它的定宽类型(Fixed-width Type)来实现这一点

环境准备

用到的库 

GLEW: The OpenGL Extension Wrangler Library (sourceforge.net)icon-default.png?t=LA92http://glew.sourceforge.net/

Download | GLFWicon-default.png?t=LA92https://www.glfw.org/download.html 

另外,

opengl32.lib已经包含在Microsoft SDK里,它在Visual Studio安装的时候就默认安装了。我用的是VS编译器,并且是在Windows操作系统上,只需将opengl32.lib添加进连接器设置里就行了

 

 

 

posted @   泥烟  阅读(38)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
历史上的今天:
2020-11-20 【转载】关于int main( int argc, char* argv[] ) 中arg和argv参数的解析及调试
2020-11-20 枚举
点击右上角即可分享
微信分享提示