OpenGL

OpenGL

图元

就如同所有物质都是由原子组成,而原子由质子、中子、电子组成,只是排列方式有所不同而已。这和OpenGL类似,在OpenGL中构建的场景也是由更小、更简单的形状组成,然后按照一定的方式排列组合而来,这些组成3D物体的筑块我们称之为图元

着色器

  • 顶点着色器

    一个单独的点就是一个图元,它只需要一个顶点。三角形也可以是一个图元,它由三个顶点组合而成。OpenGL通过特殊的排列方式将多个图元组合成想要的场景,而图元以三角形为例,是通过基础渲染管线接受3个顶点并且转换成一个三角形,因此可以看出顶点的重要性,而顶点着色器正是专门对顶点进行渲染的着色器,只有被顶点着色器渲染过的顶点才算是做好了光栅化,的准备,说明三个顶点已经被组合在了一起。

  • 片段着色器

    在顶点着色器完成之后,相当于已经搭建好了框架,这时再通过片段着色器对各个顶点之间的片段进行填充,最后会输出成我们在屏幕上看到的最终颜色值。

绘制流程

  • initBuffer
  • initShader
  • initProgram
    • 初始化program,可以通过GLES20.glCrateProgram()创建一个空的OpenGL ES Program
  • initLocation
    • 通过program申请得到OpenGL程序变量位置,类似变量申请。可以通过GLES20.glGetxxxxx(Program,name);
    • 为变量赋值,可以通过GLES20.glUniform...为OpenGL统一变量赋值,统一变量为全局不会自动改变的量。不同于顶点属性在每个顶点有其自己的值,一个统一变量在一个图元的绘制过程中是不会改变的,所以其值不能在glBegin/glEnd中设置。一个变量适合描述在一个图元中、一帧中甚至一个场景中都不变的值。一致变量在顶点shader和片断shader中都是只读的。
  • bindShader
    • 为program绑定着色器Shader
  • draw
    • clear
    • useProgram
    • setExpandData
    • bindTexture
    • draw
NEHE的OPENGL教程 第42课 多视窗口… NEHE的OPENGL教程 第42课 多视窗口… NeHe的OPENGL中文教程:第41课 体… NeHe的OPENGL中文教程:第40课 绳… NeHe的OPENGL中文教程:第39课 物… NeHe的OPENGL中文教程:第39课 物… NeHe的OPENGL中文教程:第38课 从… NeHe的OPENGL中文教程:第37课 卡… 愚人节十大IT假新闻:Opera浏览器… NeHe的OPENGL中文教程:第36课 放… NeHe的OPENGL中文教程:第35课 AVI… NeHe的OPENGL中文教程:第35课 AVI… NeHe的OPENGL中文教程:第34课 从… NeHe的OPENGL中文教程:第33课 加… NeHe的OPENGL中文教程:第32课 Alp… NeHe的OPENGL中文教程:第32课 Alp… NeHe的OPENGL中文教程:第32课 Alp… NeHe的OPENGL中文教程:第31课 模… NEHE的OPENGL中文教程:第30课 碰… NEHE的OPENGL中文教程:第30课 碰… NeHe的OPENGL中文教程:第29课 Bli… NeHe的OPENGL中文教程:第28课 贝… NeHe的OPENGL中文教程:第27课 影… NeHe的OPENGL中文教程:第26课剪裁… NeHe的OPENGL中文教程:第25课 变… NeHe的OPENGL中文教程:第24课 TAG… NeHe的OPENGL中文教程:第23课 球… NeHe的OPENGL中文教程:第22课 凸… NeHe的OPENGL中文教程:第22课 凸… NeHe的OPENGL中文教程:第21课 反… NeHe的OPENGL中文教程:第21课 反… NeHe的OPENGL中文教程:第20课 蒙… NeHe的OPENGL中文教程:第19课 粒… NeHe的OPENGL中文教程:第18课 二… NeHe的OPENGL中文教程:第17课 2D… NeHe的OPENGL中文教程:第16课 雾 NeHe的OPENGL中文教程:第15课 图… NeHe的OPENGL中文教程:第14课 图… NeHe的OPENGL中文教程:第13课 位… NeHe的OPENGL中文教程:第12课 显… NeHe的OPENGL中文教程:第11课 飘… NeHe的OPENGL中文教程:第十课 漫… NeHe的OPENGL中文教程:第九课 漂… NeHe的OPENGL中文教程:第八课 Alp… NeHe的OPENGL中文教程:第七课 纹… NeHe的OPENGL中文教程:第七课 纹… NeHe的OPENGL中文教程:第六课 纹… NeHe的OPENGL中文教程:第五课 向3… NeHe的OPENGL中文教程:第四课 旋… NeHe的OPENGL中文教程:第三课 着… NeHe的OPENGL中文教程:第二课 多… NeHe的OPENGL中文教程:第一课 新… NeHe的OPENGL中文教程:第一课 新… DirectX与OpenGL方面的经典电子书… VC++ 6.0下OpengGL配置以及glut配… 怎样开始学习OpenGL
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值