码迷,mamicode.com
首页 > 其他好文 > 详细

创建一个OpenGL窗口

时间:2018-12-08 13:32:04      阅读:260      评论:0      收藏:0      [点我收藏+]

标签:creat   swa   crt   添加   should   fir   event   忽略   main   

  在上节课用VS2017搭建OpenGL开发环境中,我们搭建好了OpenGL开发环境。这节课编写代码去测试开发环境。

  还是用上节课创建的OpenGL项目,右击源文件->添加新建项CreateWindow.cpp。

编写代码:

#include<iostream>
#define GLEW_STATIC
#include <GL/glew.h>
#include<GLFW\glfw3.h>

using namespace std;

int main(int argc, char** argv[])
{
  glfwInit();//初始化
  glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);//配置GLFW
  glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);//配置GLFW
  glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);//
  glfwWindowHint(GLFW_RESIZABLE, GL_FALSE);

  GLFWwindow* window = glfwCreateWindow(800, 600, "MyFirstWindow", nullptr, nullptr);
  if (window == nullptr)
  {
    cout << "Failed to create GLFW window" << endl;
    glfwTerminate();
    return -1;
  }
  glfwMakeContextCurrent(window);
  while (!glfwWindowShouldClose(window))
  {
    glfwPollEvents();
    glfwSwapBuffers(window);
  }
  glfwTerminate();
  return 0;

}

F5运行:

技术分享图片

ok,我们成功绘制了一个窗口,说明我们成功搭建好了OpenGL的开发环境。

但是,当关掉程序后在vs中的错误列表中发现一个错误:警告LNK4098     默认库“MSVCRT”与其他库的使用冲突;请使用 /NODEFAULTLIB:libraryOpen

提示库MSVCRT与其他库冲突了,与什么库冲突了呢?当然是OpenGL依赖的库啊,我们在vs里设置忽略MSVCRT.lib的冲突

解决办法:

  vs资源管理器中右击项目 -> 属性 -> 配置属性 -> 链接器 -> 输入,点击忽略特定默认库,右侧扩展箭头,点击编辑:输入MSVCRT.lib,点击确定。

OK,这样就解决了,以后再报别的库文件冲突还是可以这样解决。

 

创建一个OpenGL窗口

标签:creat   swa   crt   添加   should   fir   event   忽略   main   

原文地址:https://www.cnblogs.com/fengxing999/p/10086974.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!