目录
一、准备:
LearnOpenGL 英文: Learn OpenGL, extensive tutorial resource for learning Modern OpenGL 中文: LearnOpenGL CN
Demo在GitHub 地址: GitHub - JoeyDeVries/LearnOpenGL: Code repository of all OpenGL chapters from the book and its accompanying website https://learnopengl.com
GitHub地址上,已经有提及该Demo工程在Window 、 Linux 、 Mac上的配置说明。本文仅作为个人验证记录。
二、不同IDE上
环境mac电脑、M1芯片
2.1 xcode
2.1.1 命令
将GitHub拷贝到本地目录 OpenGL 下 :
$ : mkdir OpenGL
$ : cd OpenGL
$ : git clone https://github.com/JoeyDeVries/LearnOpenGL.git
进入工程目录 LearnOpenGL,安装相关依赖库
$ : cd LearnOpenGL
$ : brew install cmake assimp glm glfw
创建build目录,创建 LearnOpenGL.xcodeproj 文件
$ : mkdir build
$ : cd build
$ : cmake -G Xcode .. // 注意,后面两个 .. 表示源代码在上级目录
cmake 命令 -G 为指定编译系统生成器。根据 cmake --help的帮助提示,可以有以下多种编译系统支持:
-G <generator-name> = Specify a build system generator.
The following generators are available on this platform (* marks default):
* Unix Makefiles = Generates standard UNIX makefiles.
Ninja = Generates build.ninja files.
Ninja Multi-Config = Generates build-<Config>.ninja files.
Xcode = Generate Xcode project files.
CodeBlocks - Ninja = Generates CodeBlocks project files.
CodeBlocks - Unix Makefiles = Generates CodeBlocks project files.
CodeLite - Ninja = Generates CodeLite project files.
CodeLite - Unix Makefiles = Generates CodeLite project files.
Eclipse CDT4 - Ninja = Generates Eclipse CDT 4.0 project files.
Eclipse CDT4 - Unix Makefiles= Generates Eclipse CDT 4.0 project files.
Kate - Ninja = Generates Kate project files.
Kate - Unix Makefiles = Generates Kate project files.
Sublime Text 2 - Ninja = Generates Sublime Text 2 project files.
至此,已经在build目录中生成了 LearnOpenGL.xcodeproj 文件。双击该文件,直接打开Xcode。
2.1.2 Xcode
打开Xcode后,会出现提示是否"Autocreate Schemes"。
点击 “Automatically Create Schemes”,可以发现原本灰色的三角形按钮 "Build and Run" 变为了黑色。
点击右侧的 "ALL_BUILD" 可以选择每一个可执行程序:
选中某个程序,点击 “Build and Run” ,即可运行出效果。
2.1.3 增加新Demo
由于工程整体是使用 cmake ,配置都在工程根目录 CMakeLists.txt 中。
为了自己写代码验证,需要增加新Demo,操作也要在 CMakeLists.txt 中进行。
先按原本的工程结构,新增 0.myDemo 目录,在该目录下 继续创建子章节目录,最后在该目录下创建 xxx.cpp 文件。
编译CMakeLists.txt 文件,对刚才新增加的 章节 及 子章节进行配置:
set(CHAPTERS
0.myDemo // 新增加章节
1.getting_started
2.lighting
3.model_loading
4.advanced_opengl
5.advanced_lighting
6.pbr
7.in_practice
)
set(0.myDemo // 新增加子章节
0.1.hello
0.2.hello
)
然后打开Terminal,进入工程下的build目录,再执行一次命令:
$ build : cmake -G Xcode ..
回到 Xcode,这里,Xcode会再次提示 “Autocreate Schemes”,继续点击 “Automatically Create Schemes" ,即可看到新创建的 "0.myDemo_0.1_hello" 程序了。