文章目录
- 创建项目
- 1.下载ImGui
- 2.下载GLAD
- 3.下载GLFW
- 4.编译项目
- 5.运行截图
创建项目
- 我这里创建一个demo,opengl这个是可以跨平台的,所以在mac上使用ImGui的opengl3示例
1.下载ImGui
-
我使用的是docking版本的,这个版本支持停靠功能,传送门
https://github.com/ocornut/imgui/tree/docking
-
下载好后解压
-
创建文件夹
demo/imgui
-
拷贝解压后的ImGui根目录下面所有的
*.h *.cpp
到demo/imgui
-
拷贝
ImGui/examples/example_glfw_opengl3/main.cpp
到demo/main.cpp
2.下载GLAD
-
2.1 打开glad的网站,传送门
https://glad.dav1d.de/
-
2.2 选择参数
-
2.3 点击GENERATE生成
-
2.4 下载glad.zip压缩包
-
2.5 解压后得到glad文件夹,拷贝glad文件夹到
demo/glad
3.下载GLFW
-
3.1 传送门
-
3.2 不嫌麻烦可以自己使用源码编译
-
3.3 我是选择下面编译好的版本
-
3.4 解压后得到
glfw-3.3.8
,文件如下
-
3.5 库文件支持不同cpu架构,m1使用
lib-arm64
,英特尔的使用lib-x86_64
,我的是英特尔cpu。 -
3.6 拷贝文件夹
glfw-3.3.8
到demo/glfw-3.3.8
4.编译项目
-
4.1 项目目录结构如下
-
4.2 新建CMakeLists.txt,示例如下
cmake_minimum_required(VERSION 3.0.0)
project(demo VERSION 0.1.0)
# 使用 C++ 17 标准
set(CMAKE_CXX_STANDARD 17)
# 添加头文件
include_directories(
${PROJECT_SOURCE_DIR}/glad/include
${PROJECT_SOURCE_DIR}/imgui
${PROJECT_SOURCE_DIR}/glfw-3.3.8/include
)
# 设置代码文件
aux_source_directory(${PROJECT_SOURCE_DIR} SS1)
aux_source_directory(${PROJECT_SOURCE_DIR}/glad/src SS2)
aux_source_directory(${PROJECT_SOURCE_DIR}/imgui SS3)
set(
SRC_LIST
${SS1}
${SS2}
${SS3}
)
# 执行编译命令
add_executable(demo ${SRC_LIST})
# 库
link_directories(
${PROJECT_SOURCE_DIR}/glfw-3.3.8/lib-x86_64
)
set(GLFW_LIB_DIR ${PROJECT_SOURCE_DIR}/glfw-3.3.8/lib-x86_64)
message(${GLFW_LIB_DIR})
target_link_libraries(demo ${GLFW_LIB_DIR}/libglfw.3.dylib)
target_link_libraries(demo "-framework OpenGL")
- 4.3 开始编译:新建build文件夹,然后进入到该文件夹,执行cmake,如果没有cmake可以先安装,命令如下
mkdir build
cd build
cmake ..
make
5.运行截图
- 5.1 进入到build文件夹,双击demo