1. 有些程序是用诸如C++或Java等标准编程语言编写的,并运行在CPU上;而另一些是用专用的着色器语言编写的,并直接运行在显卡(GPU)上。

  2. 总的来说,你需要以下这些语言和库:
    ◉C++开发环境
    ◉OpenGL / GLSL
    ◉窗口管理
    ◉扩展库
    ◉数学库
    ◉纹理管理

  3. 2.0版本中引入了OpenGL着色语言(GLSL),使得“着色器程序”可以在图形管线的各个阶段被安装和直接执行。
    3.1版本中移除了大量被弃用的功能,以强制使用着色器编程,而不是之前的老方法。

  4. 窗口管理:
    OpenGL实际上并不是把图像直接绘制到计算机屏幕上,而是渲染到一个帧缓冲区,然后需要由这台机器来负责把帧缓冲区的内容绘制到屏幕上的一个窗口中。
    GLFW(Graphics Library Framework)即“图形库框架” 是配合 OpenGL 使用的轻量级工具程序库。GLFW 的主要功能是创建并管理窗口和 OpenGL 上下文,同时还提供了处理手柄、键盘、鼠标输入的功能。有类似功能的库还有 GLUT和 SDL。

  5. 扩展库:
    比如Glee、GLLoader和GLEW,以及更加新的GL3W和GLAD。
    本书中使用库GLEW(OpenGL Extension Wrangler)即“扩展牧马人”。GLEW扩展库是个简单的工具,用于帮助C/C++开发者初始化扩展并书写可移植的应用程序。有了GLEW扩展库,你就再也不用为找不到函数的接口而烦恼,因为GLEW能自动识别你的平台所支持的全部OpenGL高级扩展函数。

  6. 数学库:
    常常和OpengGL一起使用的两个这样的库是Eigen和vmath。
    本书中使用的可能最流行的数学库是OpenGL Mathematics(GLM)。GLM提供与图形概念相关的类和基本数学函数,例如:失量、矩阵和四元数。它还包含各种工具类,用于创建和使用常见的3D图形结构,例如透视和视角矩阵。

  7. 纹理管理:
    我们将使用图像文件来向我们图形场景中的对象添加“纹理”。这意味着我们会频繁加载这些图像文件到我们的C++/OpenGL代码中。考虑到各种各样的图像文件格式,使用一个纹理加载库通常是更好的。比如FreeImage、DevIL、OpenGL Image(GLI)和Glraw。简单OpenGL图像加载器(Simple OpenGL Image Loader,SOIL)可能是最常用的OpenGL图像加载库,尽管它有点过时了。SOIL2是SOIL的一个更新的分叉版本,它兼容各种平台。

  8. 可选库
    有一些更复杂的现成的OBJ加载器可供选择,比如Assimp和tinyobjloader。

✠OpenGL-1-入门相关推荐

  1. OpenGL从入门到精通--纹理

    纹理 github源码仓库 opengl环境准备 opengl编程从入门到精通-hello,window OpenGL从入门到精通–你好三角形 OpenGL从入门到精通–着色器的使用 我们可以为每个顶 ...

  2. OpenGL从入门到精通--着色器的使用

    着色器 github源码仓库 opengl环境准备 opengl编程从入门到精通-hello,window OpenGL从入门到精通–你好三角形 OpenGL从入门到精通–着色器的使用 着色器(Sha ...

  3. OpenGL从入门到精通--你好三角形

    三角形 github源码仓库 opengl环境准备 opengl编程从入门到精通-hello,window OpenGL从入门到精通–你好三角形 OpenGL从入门到精通–着色器的使用 绘图中需要牢记 ...

  4. opengl从入门到精通

    Hello opengl github源码仓库 opengl环境准备 opengl编程从入门到精通-hello,window OpenGL从入门到精通–你好三角形 OpenGL从入门到精通–着色器的使 ...

  5. OpenGL ES入门(使用指南)

    转载地址:https://www.ict528.com/wpozv3sz3srrtywpoq1qvuyqooqxz1usvwr2uqoo.html. OpenGL ES 入门 一.前言 OpenGL ...

  6. OpenGL编程入门学习

    OpenGL编程入门学习  非常详细的教程,很适合初学者 本文转自:http://www.cppblog.com/doing5552/archive/2009/01/08/71532.html === ...

  7. OpenGL快速入门 1

    OpenGL快速入门 opengl 发布于 2018-12-06   约 79 分钟 概述 OpenGL OpenGL是渲染2D.3D矢量图形硬件的一种软件接口.本质上说,它是一个3D图形和模型库,具 ...

  8. OpenGL ES 入门之旅--灰度,旋涡,马赛克滤镜

    前情提要 这篇滤镜效果的实现是在上一篇分屏滤镜的基础上来进行实现的,同样的前提是可以利用GLSL加载一张正常的图片. 详情请参考上一篇OpenGL ES 入门之旅--分屏滤镜 下面步入这篇的正题: 灰 ...

  9. 现代opengl 设计入门,纹理贴图

    上节 现代opengl 设计入门,着色器  介绍了着色器语言GLSL, 可以绘制多彩的三角形.这节介绍更高级的着色,纹理贴图. 先做纹理贴图的基本介绍,然后介绍其中几个重要设置:纹理环绕方式,纹理过滤 ...

  10. OpenGL学习入门之3D光照机器人

    OpenGL学习入门之3D光照机器人 // myopengl.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include " ...

最新文章

  1. 基于互联网大脑架构的腾讯未来趋势分析[系列1]
  2. 走向管理:建立工作汇报机制
  3. 二叉树的概念、算法简介及树的平衡
  4. php5.3无法加载mysql数据库模块_PHP_php5.3不能连接mssql数据库的解决方法,本文实例讲述了php5.3不能连接m - phpStudy...
  5. 后端:死磕18个Java8日期处理,工作必用!
  6. hive 如果表不存在则创建_从零开始学习大数据系列(四十七) Hive中数据的加载与导出...
  7. android mac转数据格式转换,mac环境下Android 反编译
  8. 前端开发使用react实现简易路由
  9. Confluence 6 为一个空间应用一个主题
  10. Binary tree paths-深度优先遍历DFS
  11. vector的基础使用
  12. 从程序员到项目经理:原来一切问题都是可以解决的
  13. 9个主流影视站手机仿站源码分享 v1.0
  14. 矩阵键盘及其基本原理
  15. 北京地铁线路色值颜色
  16. 马尔科夫细致平稳条件
  17. 单目相机三维姿态解算
  18. Java集合之Set集合
  19. 新唐单片机选型手册_新唐单片机选型手册_新唐8051标准系列单片机选型指南
  20. SVM(支持向量机)

热门文章

  1. 教你查询跟踪多个快递单号物流的更新量
  2. 2021年电工(中级)报名考试及电工(中级)模拟考试
  3. 2022.11.6 第7次周报
  4. 设备树的引进与体验_使用设备树时的驱动编程
  5. 工作组win7计算机无法访问,win7系统无法访问工作组怎么办
  6. 计算机考研高数范围,考研数学的范围是什么
  7. 桥梁承载能力评定方法内容之基桩完整性检测
  8. 海美迪盒子android升级包,海美迪TT盒子系统升级教程 在线升级超便捷
  9. 零基础可以学的vue(2)
  10. SSIS导出文件保留小数点两位