opengl微发展理解
1.什么是OpenGL?
一种程序,可以与界面和图形硬件交互作用、一个开放的标准
2.软件管道

请看上图
- Apllication层 表示你的程序(调用渲染命令。如opengl API)
-Abstraction层 表示画图接口(如OpenGL API或者DirectX API)的实现
-device dricer 表示与硬件交互的程序,即驱动程序,解释来自abstraction层的命令
-Hardware 表示硬件层,接受device driver的命令
你仅仅需关心application这一层即可。由于你能够使用opengl提供的api即可
3.开发人员要求
具有c的基本知识,知道怎样将各种库连接到编译器中。知道一些线性代数的东西(矩阵,向量等)
4.系统要求
显卡:NVIDIA、AMD、ATI 最好能支持Opengl 4.0及以上
5.软件要求
vs系列(本人用vs2013)、你也能够编辑器+编译器
6.FreeGLUT
由于OpenGL仅仅是图形类库,要创建窗体和上下文环境。那就必须的用到其它的处理类库了,所以FreeGLUT即扮演这个角色。事实上他是GLUT的取代版本号,由于GLUT没人维护了。
7.GLEW
它是OpenGL的一个扩展库,为了充分发挥OpenGL4.0的新特新,非常有必要使用
8.总结
假设你对嵌入式感兴趣的话,欢迎增加:QQ群:
版权声明:本文博客原创文章,博客,未经同意,不得转载。
opengl微发展理解的更多相关文章
- OpenGL的状态机理解
OpenGL是一种状态机模式,比如你用glEnable打开一个状态,在以后的绘图中将一直保留并应用这个状态,除非你调用glDisable及同类函数来改变该状态或程序退出.例如当前颜色是一个状态变量,可 ...
- OpenGL坐标系的理解
搬运自: https://learnopengl-cn.github.io/01%20Getting%20started/08%20Coordinate%20Systems/#3d 为了将坐标从一个坐 ...
- opengl的矩阵理解
原文链接:http://blog.csdn.net/byhuang/article/details/1476199 矩阵真的是一个很神奇的数学工具, 虽然单纯从数学上看, 它并没有什么特别的意义, 但 ...
- Android OpenGL ES(七)----理解纹理与纹理过滤
1.理解纹理 OpenGL中的纹理能够用来表示图像.照片,甚至由一个数学算法生成的分形数据.每一个二维的纹理都由很多小的纹理元素组成.它们是小块的数据,类似于我们前面讨论过的片段和像素.要使用纹理,最 ...
- opengl微开发之1-从零開始
对OpenGL有一点了解之后,如今開始真正编写代码. 今天的内容: 使用FreeGLUT创建OpenGL的上下文环境 初始化GLEW 创建一个OpenGL的的模板范例 第一步: 一个OpenGL的上下 ...
- SpringCloud系列一:微服务理解
1. 单体架构 一个归档包(例如war格式)包含所有功能的应用程序,通常称为单体应用. > 复杂性高:模块多,模块的边界模糊,依赖关系不清楚,代码质量参差不齐. > 技术债务:随着时间推移 ...
- Spring clound 微服务--理解篇
定义:微服务就是一些协调工作的小而自治的服务 优点: 异构性:不同微服务可以使用不同的语言实现, 后端数据库也可以根据自身业务定义服务. 弹性: 一个组件不可用,不会导致级联故障.一个系统出了问题,不 ...
- OpenGL理解
说起编程作图,大概还有很多人想起TC的#include <graphics.h>吧? 但是各位是否想过,那些画面绚丽的PC游戏是如何编写出来的?就靠TC那可怜的640*480分辨率.16色 ...
- OpenGL的版本号历史和发展
来源请注明.本文永久地址为http://www.cnblogs.com/vertexshader/articles/2917540.html OpenGL®作为业界最为广泛使用的2D和3D图形接口标准 ...
随机推荐
- SE 2014年4月29日
交换网络中有vlan1 到20个vlan,要求使用MSTP技术实现vlan的负载分担. SW2为实例1(vlan1-vlan10)的主根,SW3为备根 SW3为实例2(vlan11-vlan20)的主 ...
- SVN模型仓库中的资源从一个地方移动到另一个地方的办法(很久才解决)
弄了很久,想使用domove这个操作,但是都失败了.最后给svnkit的邮箱写了封邮件,他们告诉我这样做就成功了.实际上是使用docopy这个函数实现了move操作.package com.repos ...
- Nutch+HBase
Nutch+HBase 当我们为nutch的架构发愁的时候,nutch的开发人员送来了nutchbase.我一些简单的测试表明,在hadoop0.20.1和hbase0.20.2上,稍加修改可以运行起 ...
- shell命令批量杀死MySQL连接进程
(1)将全部的MySQL连接进程杀掉 for i in `mysql -uroot -pzhangyun -Bse "show processlist" | grep -v &qu ...
- java枚举的使用
定义枚举 public enum YesOrNo { YES("是") , NO("否") ; private String text ; private in ...
- alertify、js、css 使用简介
Alertify.js which helped me resolve my issues regarding prompts, alerts, confirms, etc in iOS7. 1.al ...
- cocos2d-x截图功能clippingnode它也可用于——白费
许多其他精彩分享:http://blog.csdn.net/u010229677 3.1版本号: 在Director数: bool Director::saveScreenshot(const std ...
- WEB打印的几种方案
-------------------------------------------一 基于Web的打印方案比较分析-------------------------------- 基于web的套 ...
- Locked ownable synchronizers(转)
public class DeadLock { public static void main(final String[] args) throws Exception { final Object ...
- 【Linux驱动】TQ2440 LED驱动程序
★整体介绍 LED驱动程序主要实现了TQ2440开发板上的4个LED灯的硬件驱动,实现了对引脚GPIOB5.GPIOB6.GPIOB7.GPIOB8的高低电平设置(common-smdk.c中已经实现 ...