博客专栏  >  综合   >  OpenGL

OpenGL

OpenGL入门详解,每章都有完整示例代码,可以直接运行。 注释:虽示例都是在Xcode环境下运行的,不过只要环境配好,基本不需改动代码也可以直接在Windows上运行。

关注
9 已关注
32篇博文
  • Xcode上创建openGL项目

    创建opengl项目步骤1,创建一个Cocoa的项目。 2,将项目中的AppDelegate.h,AppDelegate.m,MainMenu.xib文件删除。然后将main.m文件删除,改为mai...

    2015-03-16 17:33
    3093
  • opengl入门

    基本概念1,OpenGL:是图形硬件的一种软件接口。通俗点讲就是一套API,调用接口而已,用于图像的渲染。与微软的Direct类似,不过它是跨平台的。 2,OpenGL渲染管线:是指从调用OpenG...

    2015-03-17 11:36
    2280
  • OpenGL--双缓冲

    双缓冲 就是先将图片绘制到后台缓冲区,然后再交换到前台缓冲区显示。为什么要这么做?一种解释是我们的渲染一般是多线程处理,如果直接绘制到屏幕显示,有可能会出现一张图片还只绘制一部分而下一张又来了的情况...

    2015-03-17 16:16
    2329
  • OpenGL--图元

    基础概念 1,图元:组成3D物体最小的单位,包括:点,直线,多边形。就和化学里所有物体都是由原子组成的一样。 2,点:数学上的点,只有位置,没有大小。但在计算机中,无论计算精度如何提高,始终不能表...

    2015-03-18 17:20
    2060
  • OpenGL--顶点数组与缓冲区中使用顶点数组

    理论基础 法线向量:简称法线,是一条垂直于某个表面的方向向量。opengl中除了顶点之外,不能为多边形的其他地方分配法线。法线的作用是定义了物体的表面在空间中的方向,具体地说就是,定义了它相对于光...

    2015-03-21 17:43
    2111
  • OpenGL--3D世界(视图变换,模型变换,投影变换,视口变换)

    理论基础 1,OpenGL渲染3D物体到屏幕上的过程其实类似我们平时用照相机拍照的过程,这个步骤大致如下:一,把照相机固定在三脚架并让它对准场景(视图变换)二,把场景中的物体调整摆放好(模型变换)三...

    2015-03-25 13:59
    4033
  • OpenGL--shader入门

    理论基础 实例代码 //源程序 #include "GLTools.h" #include "GLShaderManager.h" #ifdef __APPLE__ #inclu...

    2015-03-31 17:05
    2761
  • OpenGL--光照

    理论基础 1,人眼所看到的五颜六色的世界是由于物体表面反射到眼睛的颜色形成的,而这个反射颜色是由物体本身和光源共同决定的。某种颜色的物体反射对应颜色的光,吸收其它颜色的光,如红色物体吸收全部的G...

    2015-04-10 09:41
    1670
  • OpenGL--混合

    理论基础 混合:主要就是用来做一些如透明的特效,其实就是源颜色与目标颜色(先写入帧缓冲的是目标颜色,后将要写入的是源颜色)进行混合计算得到一个新颜色的过程。混合发生在图元光栅化之后,片段写入帧缓冲之...

    2015-04-10 16:47
    1655
  • OpenGL--抗锯齿

    理论基础 1,锯齿:在图元边缘处我们能相当清楚地看到两种颜色的分界,我们把这种称之为锯齿。为什么会产生?这是因为我们的图像是由一个个像素组成的,而每个像素近似一个很小的正方形,这样由正方形组成的图像...

    2015-04-11 15:15
    2479
  • OpenGL--雾

    理论基础 雾效果:计算机图像有时候由于过于清晰和锐利,反而显得不太逼真。我们可以通过添加雾效果,使整幅图像变得更加逼真。所谓雾效果,就是使远处的物体看上去逐渐变得模糊。雾效果可以提高性能,因为它可以...

    2015-04-13 10:45
    1854
  • OpenGL--点参数

    理论基础 点参数:在有些情况下,我们对如圆或球体的渲染时,不想用效率较低的多边形近似模拟。这时我们可以用点参数,它根据点和观察点的距离,对点的大小和亮度进行衰减。如:雨滴,飞溅的血滴等。代码示例 #...

    2015-04-13 15:42
    2172
  • OpenGL--多边形偏移

    理论基础 多边形偏移:有时候我们需要着重显示多边形的边缘,一般做法是先绘制实心的再在同一位置绘制空心的,这样就可以突出边缘。但是,由于直线与多边形的光栅化并不完全相同,即使在同一位置绘制它们的深度值...

    2015-04-13 17:48
    2141
  • OpenGL--显示列表

    理论基础 显示列表:是一组存储在一起的OpenGL函数,可以在以后执行。调用一个显示列表时,它所存储的函数就会按照顺序执行。类似存储在服务端(GPU)的缓冲区对象,能够提高效率。在创建显示列表时,只...

    2015-04-14 10:24
    2103
  • OpenGL--位图

    理论基础 位图:就是对应一些二进制位来操作像素,0则表对应像素不绘制,1表绘制,这样来模拟绘制图像。一般可以用来绘制字符,但位图无法做缩放或旋转等特效。位图示例图如下: 注:在opengl 3.0...

    2015-04-14 19:35
    1821
  • OpenGL--图像

    理论基础 图像:它与位图相似,都是二进制位来表示屏幕对应像素,只是图像的每个像素并不是由1个位来表示的,它的每个像素包含更多地信息。即位图1个位对应1个像素,图像多个位对应1个像素。OpenGL图像...

    2015-04-15 14:34
    1621
  • OpenGL--纹理贴图基础

    理论基础 纹理贴图:通俗地讲就是可以把我们读取的纹理加载到图元表面的一种技术,这样大大的提高了图像的表现质量。实例代码 //读取tga格式图片/*tga图片头信息结构*/ #pragma pack...

    2015-04-18 17:07
    2167
  • OpenGL--替换纹理图像的全部或一部分

    理论基础 和修改原有纹理相比,创建新纹理的开销更大。我们主要使用glTexSubImage*和glCopyTexSubImage*()来修改纹理,前者用于替换的纹理来源外部读取,后者替换的纹理来源自...

    2015-04-20 15:30
    2299
  • OpenGL--多级纹理

    理论基础 多级纹理(Mipmap):就是分辨率递减的同一纹理,根据距离观察点的距离选着最适合的分辨率纹理。 它主要解决两方面问题:一,闪烁,当屏幕上被渲染物体的表面与它所应用的纹理图像相比显得非常...

    2015-04-21 10:50
    1753
  • OpenGL--自动生成纹理坐标

    理论基础 纹理坐标自动生成:有两种形式,一种整形形式(glTexGeni),一种向量形式(glTexGenfv),使用它比手动设置纹理坐标方便(glTexCoord)。实例代码 #include #...

    2015-04-21 14:49
    2351

游戏开发
526199
网络编程
2040129
编程语言
818265

img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部