NeHe OpenGL 教程在 Qt5 中的实现
NeHe_OpenGL_Qt5NeHe OpenGL tutorials in Qt5项目地址:https://gitcode.com/gh_mirrors/ne/NeHe_OpenGL_Qt5
项目目录结构及介绍
NeHe_OpenGL_Qt5/
├── README.md
├── LICENSE
├── NeHe_OpenGL_Qt5.pro
├── src/
│ ├── main.cpp
│ ├── Lesson01/
│ │ ├── Lesson01.cpp
│ │ ├── Lesson01.h
│ ├── Lesson02/
│ │ ├── Lesson02.cpp
│ │ ├── Lesson02.h
│ └── ...
└── resources/
├── shaders/
├── textures/
└── ...
- README.md: 项目说明文件,包含项目的基本信息和使用指南。
- LICENSE: 项目许可证文件,本项目使用 LGPL-3.0 许可证。
- NeHe_OpenGL_Qt5.pro: Qt 项目文件,用于配置和构建项目。
- src/: 源代码目录,包含所有课程的源文件和头文件。
- main.cpp: 主启动文件,负责初始化 Qt 应用程序并启动第一个课程。
- Lesson01/: 第一课的源文件和头文件。
- Lesson02/: 第二课的源文件和头文件。
- ...: 其他课程的源文件和头文件。
- resources/: 资源目录,包含着色器、纹理等资源文件。
项目的启动文件介绍
main.cpp
#include <QApplication>
#include "Lesson01/Lesson01.h"
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
Lesson01 window;
window.show();
return app.exec();
}
- QApplication: 初始化 Qt 应用程序。
- Lesson01 window: 创建并显示第一课的窗口。
- app.exec(): 进入 Qt 事件循环,等待用户交互。
项目的配置文件介绍
NeHe_OpenGL_Qt5.pro
QT += core gui opengl
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = NeHe_OpenGL_Qt5
TEMPLATE = app
SOURCES += src/main.cpp \
src/Lesson01/Lesson01.cpp \
src/Lesson02/Lesson02.cpp \
...
HEADERS += src/Lesson01/Lesson01.h \
src/Lesson02/Lesson02.h \
...
RESOURCES += resources.qrc
CONFIG += c++11
- QT += core gui opengl: 添加 Qt 核心、图形和 OpenGL 模块。
- greaterThan(QT_MAJOR_VERSION, 4): QT += widgets: 如果 Qt 主版本大于 4,添加小部件模块。
- TARGET = NeHe_OpenGL_Qt5: 设置项目目标名称。
- TEMPLATE = app: 设置项目模板为应用程序。
- SOURCES: 列出所有源文件。
- HEADERS: 列出所有头文件。
- RESOURCES: 包含资源文件。
- CONFIG += c++11: 启用 C++11 支持。
NeHe_OpenGL_Qt5NeHe OpenGL tutorials in Qt5项目地址:https://gitcode.com/gh_mirrors/ne/NeHe_OpenGL_Qt5