C++ OpenGL Project Setup using GLEW, assimp, SDL2 and CMake
C++ OpenGL Project Setup using GLEW, assimp, SDL2 and CMake with CodeBlocks
我已经做了一个关于用Java和lwjgl在OpenGL中制作3D渲染引擎的完整教程,制作本教程的人也用C++编写了引擎
为了增加我对编程的了解,我也想看看C++版本。我也相信(我可能完全错了)我实际上能够用C++比用java做更多的事情。我遇到的主要问题是,尽管包含说明,我仍无法让发动机运行,如果有人可以帮助我,我将不胜感激。
这是我想要设置的引擎:https://github.com/BennyQBD/3DEngineCpp
我想为这个项目使用CodeBlocks,因为它是推荐的,与Visual Studio不同,它是免费的。我也已经下载了glew,simp和sdl,并安装了运行所需的CMake。现在我必须根据这里的说明将其放在一起:
###Windows/MinGW###
- Make sure CMake is both installed and added to the system PATH.
- Open a Terminal and run:
```Shell
# install dependencies
# Install GLEW in %PROGRAMFILES%/GLEW or SET %GLEW_ROOT_DIR% to where GLEW is on your machine (Example: D:PATH_TO_GLEW)
# Install SDL2 in %PROGRAMFILES%/SDL2 or SET %SDL2_ROOT_DIR% to where SDL2 is on your machine (Example: D:PATH_TO_SDL2)
# Install ASSIMP in %PROGRAMFILES%/ASSIMP or SET %ASSIMP_ROOT_DIR% to where ASSIMP is on your machine (Example: D:PATH_TO_ASSIMP)
cd build
# REPLACE "Visual Studio 12" with your preferred build toolchain (Maybe you want "Codeblocks - MinGW Makefiles")
# BTW VS 10 is VS 2010, VS 11 is VS 2012 and VS 12 is VS 2013, BLAME MicroSoft for the naming! LOL!
cmake -G "Visual Studio 12" ../
# open the generated SLN file (or cbp file if using CodeBlocks) and build!
```
- Copy the DLLs in /lib/_bin/ to /build/Debug/ and /build/Release/
- In Visual Studio, set the Startup project to 3DEngineCpp
- Move the res folder into the build folder
- Run
主要问题是,因为我只在 eclipse 中做了 java 编码,所以我有点困惑。
他所说的"打开终端并运行:"壳牌"是什么意思? 我应该如何安装 glew、sdl2 和 assimp? 什么是 CD 构建? 为什么我需要CMake,它并没有真正提到它的作用..?
也许有人可以详细说明(如果可能的话,一步一步)我需要做什么才能让它运行,非常感谢!
不能保证我的步骤会完美无缺,因为C++中的外部依赖对我来说仍然非常痛苦,但我会给你一些线索,希望你取得一些进展。另外,我从未使用过Code::Blocks,所以我不确定Visual Studio项目是否与它兼容。这是我知道如何在Windows上做事的唯一方法。
首先,您需要安装 CMake。CMake 是一个生成项目文件的实用程序,以便可以在某些平台上轻松编译项目。它在Windows上生成Visual Studio项目文件,这将允许您在Visual Studio中打开项目,并从那里编译它们。
为了构建项目,您必须先整理其依赖项。
光芒:
- 下载 GLEW 的资源并提取所有内容。它带有Visual Studio项目文件
- 使用管理员权限打开 Visual Studio
- 打开格鲁的项目
- 构建一切
- 运行
install
"项目",让Visual Studio安装GLEW
阿辛普:
- 从 GitHub 下载 Assimp 的源代码
- 将项目根目录解压缩到某处。根目录是
CMakeLists.txt
所在的目录 - 打开 CMake 的 GUI 实用程序
- 单击"浏览源",然后选择该目录
- 通过单击浏览构建选择输出目录 单击
- "配置",完成后单击"生成"。这将为你生成一个Visual Studio项目文件
- 使用Visual Studio打开项目,构建所有内容。像以前一样运行
install
以安装 Assimp
SDL2:SDL 的源代码附带 Visual Studio 项目文件,因此您可以重复这些步骤让 GLEW 安装它。
现在,您终于可以开始尝试让引擎工作了。不能保证它会起作用,但我会尝试我为 Assimp 建议的相同方法,因为它们都是 CMake 项目。生成项目文件后,可以在Visual Studio中打开它。除了这一次,你不会真正安装它。您可以修改源代码并像运行任何其他C++项目一样运行它。
- "assimp/config.h"找不到,但它在文件夹中
- 如何创建事件驱动的 SDL2 应用程序
- 使用 SDL2 和SDL_image C++加载图像
- 将 SDL2 与 CMake 链接起来
- SDL2 透明背景
- 如何在使用 SDL2 的 Eclipse 中构建 c++ 程序
- 使用 assimp 加载模型 - 不需要提升?
- 不带轮询的 SDL2 事件回调
- C++ SDL2:如何将矩形渲染到多个视口中
- SDL2 调整窗口大小后如何缩放鼠标坐标?
- SDL2 二维纹理分配/池化
- 如何使用 sdl2 快速绘制像素网格?
- 看不到文件'SDL2.lib'
- 我的 SDL2 程序需要哪些二进制文件,以便它在另一台未安装 SDL2 的计算机中工作
- SDL2 无法正确绘制矩形
- 实施英特尔实感和 SDL2 时出现问题
- 找不到 sdl2.dll
- SDL2 程序只写入部分字符串
- 为什么在使用 SDL2 时仍然收到'undefined reference'链接器错误?
- C++ OpenGL Project Setup using GLEW, assimp, SDL2 and CMake