我将如何在visualstudio2012中启动OpenGL项目
How would I start an OpenGL project in visual studio 2012?
我在Visual Studio 2012中创建了一个空白的c++项目,我想创建一个乒乓球游戏来了解OpenGL的工作原理。
在我的项目中有四个目录,外部依赖项、头文件、资源文件和源文件。有人能向我介绍一下相关的最新资源吗?这些资源详细介绍了如何实现OpenGL的初始设置和基本方法?
从理论上讲,您不需要任何其他东西,就可以开始了。然而,基本的窗口设置并不是那么容易(一旦你知道了基本的,它就会变得重复,但仍然"乏味")。
因此,大多数人会建议您使用GLUT,它本质上是一个小型库项目,为您处理最常见的依赖于平台的内容(阅读:窗口创建、输入处理等)。有很多备选方案/实现,每个人似乎都有自己的最爱。
但是,我建议使用SFML。这是一个更大的库,但同时它也更高级(以防您了解基础知识并想要一个更受管理的库)。虽然它包括自己的绘图类,但仍然可以将其仅用于窗口创建,然后在原始OpenGL中使用自己的自定义绘图代码。到目前为止,基于SFML的程序可以为Windows、Mac和Unix编译,Android和iOS端口处于测试版。与使用GLU相比,最小代码要长一些,但它可能更容易理解/阅读,尤其是如果您还没有深入回调的话。
举个简单的例子:
#include <SFML/Graphics.hpp>
int main (int argc, char **argv) {
sf::RenderWindow window(sf::VideoMode(640, 480), "OpenGL Test", sf::Style::Close | sf::Style::Titlebar);
// Your own custom OpenGL setup calls here
// There's no additional code needed, unless you want to mix SFML drawing and raw OpenGL
sf::Event e;
while (window.isOpen()) { // This is the program's main loop
while (window.pollEvent(e)) { // Event handling
switch (e.Type) {
case sf::Event::Closed:
mWindow.close();
break;
}
}
window.clear(); // Clear the buffer
// Your own custom OpenGL drawing calls here
// There's no additional code needed, unless you want to mix SFML drawing and raw OpenGL
window.display(); // Update window contents
}
return 0;
}
一种简单的方法是下载并安装GLFW和GLEW。安装两者,并将包含和lib目录的项目设置到这两个已安装的api(右键单击项目->属性->VS++目录->添加包含和库的路径)。你很好,你只需要根据本文档包括和设置上下文。GLFW处理所有的窗口创建和上下文处理,GLEW绑定所有的调用(例如:glClear、glBein等)以便能够使用它们。GLEW易于使用,只需调用glewInit()
对于OpenGL游戏开发,最简单的解决方案是使用包装器,如SFML或新的SDL2,它将处理窗口管理的丑陋细节,并允许您自由地使用OpenGL进行实验。
您还可以使用GLee轻松导入所需的OpenGL扩展。
- OpenGL - 在抛出"__gnu_cxx::recursive_init_error"实例后终止调用?
- 了解 GLM- openGL 中的相机转换
- 如何创建一个空的全局类并在启动时实例化它
- 如何在全屏模式下(在OpenGL中)使背景透明
- 为什么我不能使用 EGL 创建无头 OpenGl 上下文?
- OpenGL大的3D纹理(>2GB)非常慢
- OpenGl glm rotate
- C++atioglxx.pdb未加载错误glBufferData OpenGL
- OpenGL在启用深度测试时不会丢弃我的碎片
- OpenGL相机和相机空间转型的困惑
- 即使我读取了所有内容,在FIFO上打开的QSocketNotifier也会一直启动
- OpenGL将纹理四边形渲染为(0,0)
- 无法启动 OpenGL 窗口
- OpenGL和SFML时钟未正确重新启动
- OpenGL 在第二个线程中,在类中启动
- OpenGL 应用程序在启动时立即崩溃
- OpenGL程序在Qt Creator中没有启动
- 我将如何在visualstudio2012中启动OpenGL项目
- 从QtCreator启动OpenGl应用程序的严重问题
- OpenGL代码在IDE, CodeXL和GPU PerfStudio中完美运行,但如果从Windows启动则给出空白屏