400-650-7353
您所在的位置:首页 > IT干货资料 > unity > 【Unity基础知识】OpenGL图形学创建窗口(二)

【Unity基础知识】OpenGL图形学创建窗口(二)

  • 来源:Unity干货资料
  • 2020-07-01 18:55:20
  • 阅读()
  • 分享
  • 手机端入口

当然我们还要获取当前屏幕的分辨率大小以用来设置窗口的大小和位置:

//获取客户区屏幕大小

GLint ScreenWidth = glutGet(GLUT_SCREEN_WIDTH);

GLint ScreenHeight = glutGet(GLUT_SCREEN_HEIGHT);

// 窗口设置

glutInitWindowSize(WIN_WIDTH, WIN_HEIGHT); // 窗口尺寸

glutInitWindowPosition((ScreenWidth - WIN_WIDTH) / 2, (ScreenHeight - WIN_HEIGHT) / 2 - 50); // 窗口位置

glutCreateWindow("第1个OpenGL窗口"); // 窗口标题

还记得刚才写的渲染回调函数吗?我们现在就来指定它:

glutDisplayFunc(RenderSceneCB);//指定OpenGL程序的渲染函数

来指定一下擦除屏幕所用的颜色值吧,这个颜色值会当窗口什么都不绘制时填满整个窗口:

glClearColor(0.0f, 0.0f, 0.0f, 0.0f);// 缓存清空后的颜色值

【Unity基础知识】OpenGL图形学创建窗口(二)

接下来初始化另外一个库,就是glew了:

GLenum res = glewInit();

if (res != GLEW_OK) {

fprintf(stderr, "Error: '%s'\n", glewGetErrorString(res));

return 1;

}

最后一步!!!!!!

我们通知这个C++窗口程序可以开始OpenGL主循环了:

glutMainLoop();// 通知开始GLUT的内部循环

这个函数调用传递指令给GLUT现在开始它的内部循环。在这个循环中它监听窗口系统中的事件并通过我们配置的回调传递出去。在我们这个例子中,GLUT将只会调用我们注册的那个display回调(RenderScenceCB),在这个回调函数中(RenderScenceCB)我们可以自定义代码来渲染这一帧的图像。

好了,一切都告一段落了,我们现在可以按下Ctrl+F5键来运行我们的第1个OpenGL窗口程序了,运行正确的话就会出现上面课件中所列举的画面。。

文章“【Unity基础知识】OpenGL图形学创建窗口(二)”已帮助

>>本文地址:https://www.ujiuye.com/zhuanye/2020/49137.html

THE END  

声明:本站稿件版权均属中公教育优就业所有,未经许可不得擅自转载。

1 您的年龄

2 您的学历

3 您更想做哪个方向的工作?

获取测试结果
  • 大前端大前端
  • 大数据大数据
  • 互联网营销互联网营销
  • JavaJava
  • Linux云计算Linux
  • Python+人工智能Python
  • 嵌入式物联网嵌入式
  • 全域电商运营全域电商运营
  • 软件测试软件测试
  • 室内设计室内设计
  • 平面设计平面设计
  • 电商设计电商设计
  • 网页设计网页设计
  • 全链路UI/UE设计UI设计
  • VR/AR游戏开发VR/AR
  • 网络安全网络安全
  • 新媒体与短视频运营新媒体
  • 直播带货直播带货
  • 智能机器人软件开发智能机器人
 

快速通道fast track

近期开班时间TIME