#include <gl/glut.h>
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT); // 清除颜色缓冲以及深度缓冲
glColor3f(1.0, 1.0, 1.0);
glBegin(GL_POLYGON); // 绘画開始话多边形
/*glVertex3f(0.25, 0.25, 0.0);
glVertex3f(0.75, 0.25, 0.0);
glVertex3f(0.75, 0.75, 0.0);
glVertex3f(0.25, 0.75, 0.0);*/
glutWireSphere(1.0,20.0,20.0);
glEnd();// 结束
glFlush();
}

void init(void)
{
glClearColor(0.0, 0.0, 0.0, 0.0); //清空当前的全部颜色
glMatrixMode(GL_PROJECTION); //指定哪一个矩阵是当前矩阵
glLoadIdentity(); //将当前的用户坐标系的原点移到了屏幕中心:类似于一个复位操作
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);//平行投影矩阵
}
int main(int args, char* argv[])
{
glutInit(&args, (char**)argv);    // 对glut进行初始化
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); // 指定使用单缓存,rgb模式
glutInitWindowSize(480, 320);  // 初始化一个大小480,320的窗体
glutInitWindowPosition(100, 100); // 指定窗体的位置(左上角位置)
glutCreateWindow("Hello OpenGL"); // 定义窗体的名字
init(); // 初始化
glutDisplayFunc(display); // 回调
glutMainLoop(); // 启动程序
return 0;
}

OpenGL学习(hello)相关推荐

  1. OpenGL学习(一)OpenGL基本介绍

    1. OpenGL基本介绍 1.1 OpenGL是什么?   当你第一次听到OpenGL时,你可能并不知道它到底是什么,但你应该知道它是与图形联系起来,这确实是OpenGL能够做的事情.OpenGL不 ...

  2. OpenGL学习笔记:矩阵变换

    文章目录 缩放 glm矩阵表示 glm缩放矩阵实现 位移 齐次坐标 glm位移矩阵实现 旋转 沿x轴旋转 沿y轴旋转 沿z轴旋转 沿任意轴旋转 glm旋转矩阵实现 矩阵的组合 glm矩阵组合使用 接上 ...

  3. OpenGL学习之路17---- 镜面反射光

    代码放在github上 根据教程:ogldev一步步开始,记录学习历程 之前完成环境光和漫射光的学习.环境光的计算只由光强来决定,场景中所有位置是同一亮度:漫射光的计算由光强和光的方向一同决定,相关博 ...

  4. OpenGL学习笔记(一)绘制点线面及多面体

    OpenGL学习笔记(一)绘制点线面及多面体 绘制点线面 #include <iostream> #include <GL/GLUT.h> #define PI 3.14159 ...

  5. 【我的OpenGL学习进阶之旅】介绍一下 绘制图元

    目录 一.绘制图元 1.1 `glDrawArrays` 1.1.1 `glDrawArrays`API说明 1.1.2 `glDrawArrays`API示例 1.2 `glDrawElements ...

  6. OpenGL学习-球体和phong光照模型

    OpenGL学习-球体和phong光照模型 开发环境搭建参考:https://lexiaoyuan.blog.csdn.net/article/details/120059213 通用配置步骤 Vis ...

  7. 【我的OpenGL学习进阶之旅】C++如何加载TGA文件?

    一.TGA文件相关介绍 通过前面的博客 [我的OpenGL学习进阶之旅]什么是TGA文件以及如何打开TGA文件? 地址:https://ouyangpeng.blog.csdn.net/article ...

  8. OpenGL学习笔记(一):环境搭建、三维空间坐标系理解以及OpenGL的基本使用

    原博主博客地址:http://blog.csdn.net/qq21497936 本文章博客地址:http://blog.csdn.net/qq21497936/article/details/7866 ...

  9. OpenGL学习(九)阴影映射(shadowMapping)

    目录 写在前面 阴影映射原理简介 封装 Camera 类 帧缓冲 阴影映射 准备工作 创建帧缓冲与深度纹理附件 从光源方向进行渲染 正常地渲染场景 如何查找bug(⚠重要) 多纹理传送 查看深度纹理数 ...

  10. OpenGL学习(十)天空盒

    目录 写在前面 天空盒简介 创建立方体贴图 渲染一个立方体 立方体贴图着色器 开始绘制天空盒 完整代码 着色器 c++ 写在前面 上一篇博客回顾:OpenGL学习(九)阴影映射(shadowMappi ...

最新文章

  1. php多进程有什么用,有关php多进程的用法举例
  2. mysql InnoDb存储引擎索引
  3. 壳管式热交换器行业调研报告 - 市场现状分析与发展前景预测
  4. ORA-00018-超出最大连接数
  5. matlab sparse()
  6. (转载)Java多线程的监控分析工具(VisualVM)
  7. Atitit 职位的规划与来源 1.1. 职位任命多元化 1 1.2. 上级任命 1 1.3. 自我推荐 1 1.4. 他人推荐, 1 1.5. 可以下级选举 1 1.6. 缺席任命 1 1.7.
  8. 查阅国外文献的网站有哪些?
  9. 通信原理 | 滤波器:模拟滤波器和数字滤波器
  10. 大数据下机械智能诊断的机遇与挑战,阅读文献系列(一)
  11. 2017年大数据可视化机遇,这5大行业不容错过
  12. 七层/四层网络模型对应协议
  13. android saf写sd卡,使用SAF(存储访问框架)的Android SD卡写权限
  14. 八成互联网电视系统非法采集用户数据;前亚马逊工程师被定罪;雅虎将在香港测试元宇宙技术 | 每日大事件...
  15. java导出表格vsd_java 实现vsd转换为其它格式
  16. 让运行在T61上的windows xp支持4G内存
  17. Ucinet三天写论文!引力模型作图实战
  18. 今天吃什么随机网页_今天吃什么?火锅!火锅食材营养大揭秘!
  19. H5app录制语音并上传服务器demo
  20. Bootstrap+Html5制作强大的网页视频播放器

热门文章

  1. 使用Node.js快速搭建WebSocket server
  2. SLAM之特征匹配(三)————RANSAC------LO-RANSAC Algorithm
  3. 尺度空间理论与图像金字塔(二)
  4. Squid的refresh_pattern配置
  5. Asp.Net下的DataGrid的多层表头
  6. C++中struct的使用
  7. 边缘检测、Hough变换、轮廓提取、种子填充、轮廓跟踪
  8. 在图像变换中用最小二乘法求解仿射变换参数
  9. 【FFmpeg】ffmpeg命令详解(二)
  10. 【Go】Go基础(三):基本结构和基本数据类型