前言
OpenGL一般被认为是一个API(Application Programming Interface, 应用程序编程接口),包含了一系列可以操作图形、图像的函数。由于OpenGL是一个图形API,并不是一个独立的平台,它需要一个编程语言来工作,在这里我们使用的是C++,而编辑器使用VS2017。关于OpenGL有个非常详细的官方教程:https://learnopengl-cn.github.io/intro/,这里仅仅对OpenGL的学习作总结。
绘制三角形
只要按照教程的步骤一步步进行,绘制三角形的过程并不难,代码在下面会给出。效果图如下所示:
颜色编辑窗口
ImGUI的配置
前往ImGUI的github仓库https://github.com/ocornut/imgui,然后将库文件压缩包下载到本地,然后解压。把下图这些文件添加到刚才画三角形的VS2017的项目中。
然后进入ImGUI库的example文件夹,因为此次我们的项目是利用ImGUI给OpenGL所画的图形增加颜色编辑窗口,所以我们选择下图的文件,添加到项目中。
还有以下两个文件:
最终,原来的利用OpenGL画三角形的项目中,多了ImGUI的库文件,文件结构如下:
修改imgui_impl_opengl3.h文件
按照前面OpenGL的官方教程,配置环境时,我们使用到了一个glad的库,而不是gl3w的库,所以在imgui_impl_opengl3.h文件中,把IMGUI_IMPL_OPENGL_LOADER_GL3W
替换为IMGUI_IMPL_OPENGL_LOADER_GLAD
1 |
|
编写颜色编辑器代码
这部分主要代码如下:
1 |
|
效果
如下图:
项目源代码
main.cpp的代码如下:
1 |
|