`
mmdev
  • 浏览: 12934347 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

OpenGL纹理映射和光照效果

 
阅读更多

在前面我们已经可以绘制出一个带有颜色的立方体了,但是这些颜色是系统自带的黄色,绿色等,有时候这并不能满足我们的要求,这时候就需要将纹理映射到立方体上去了。

为使用纹理,我们需要打开OpenGL的一些开关以启动我们需要的一些功能:

gl.glEnable(GL10.GL_TEXTURE_2D);

这个调用是必不可缺的;如果你没有打开此功能,那么你就无法将图像映射到多边形上。它可以在需要时打开和关闭,通常在初始化时打开。

生成纹理

OpenGL 中的纹理通过一个唯一号引用,通过函数 glBindTexture() 实现。你 可以自己指定这个唯一号,或者通过调用 glGenTextures () 函数生成一个唯一 号。


纹理绑定

在为纹理生成名称后,在为纹理提供图像数据之前,我们必须绑定纹理。绑定使得指定纹理处于活动状态。一次只能激活一个纹理。活动的或“被绑定”的纹理是绘制多边形时使用的纹理,也是新纹理数据将加载其上纹理,所以在提供图像数据前必须绑定纹理。

gl.glBindTexture(GL10.GL_TEXTURE_2D, texture);

绑定纹理数据,传入指定图片
GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, bmp, 0);

下面看一下完整代码:


上面重要的部分都已经做了注释,下面看一些运行后效果:




分享到:
评论

相关推荐

    OPENGL光照和纹理技术实例.rar

    OPENGL光照和纹理技术实例.rar OPENGL光照和纹理技术实例.rar

    opengl光照、纹理映射和键盘控制

    做的是把一个旋转立方体的6个面贴上6幅不同的图片,设置了两个键盘控制,一个是通过glutKeyboardFunc(keyboard);来控制灯光的开和关,用glutSpecialFunc(special);来分别改变立方体延x,y,z轴的旋转角度。

    opengl.rar_Opengl纹理_openGL机器人_opengl 机器人_opengl 运动_纹理映射

    openGL实现机器人,可以自动运动,并且实现了纹理映射和光照

    Nurbs_opengl_nurbs曲面纹理和光照模型_

    NURBS曲面的创建,并实现简单纹理映射与光照模型

    opengl四面体纹理映射

    用opengl制作正四面体旋转加光照加纹理映射

    OPEN GL 关于纹理映射 纹理贴图 贝塞尔曲面的例子

    方向键可以进行移动,按F键更改纹理,按B键添加光照。 立方体上面的是贝塞尔曲面,可以通过A键和D键进行旋转,还可以通过W和S键进行变换曲面的扭曲程度。按空格键可以时曲面的轮廓消失。 最里边是一个变幻的圆环 。 ...

    opengl实现bezier曲面的纹理贴图、鼠标交互与光照

    此程序使用Opengl绘制了带6个纹理的立方体(立方体的每个面用bezier曲面表示),实现了键盘和鼠标控制,其中键盘控制如下: L :控制光照光照 ←:向左旋转速度增加 →:向右旋转速度增加 ↑:向上旋转速度增加 ↓:向...

    Android OpenGL实现立方体多纹理图片映射

    Android OpenGL实现立方体多纹理图片映射和混色光照效果

    OpenGL.rar_OPENGL 纹理_cubic mapping Open_opengl mfc_opengl 光照_op

    本程序画了一个地球仪,包含基本图形的绘制,光照的设置,材质的设置,纹理映射,动画等等

    基于opengl的三维场景

    绘制一个具有真实感的三维场景,其中含有2个三维物体。具有光照,纹理效果,可实现交互式的场景漫游。使用OpenGL,完成从建模、坐标变换到消隐算法、光照模型、面绘制算法、纹理映射的全部过程。

    OpenGL基础图形编程

    第一章OpenGL使人们进入三维图形世界 第二章OpenGL基本理解 ...第十二章OpenGL纹理映射 第十三章OpenGL复杂图元建模 第十四章OpenGL光照模型 第十五章OpenGL的三个特殊效果处理 第十六章OpenGL显示列表

    基于OpenGL的B样条曲线曲面的绘制

    基于OpenGL的B样条曲线曲面的绘制算法,包含了均匀、准均匀、Bezier、各种非均匀B样条曲线曲面的绘制,阶次的升降,以及曲面的光照和纹理映射算法。

    对纹理映射增加计算机图形真实感的研究

    介绍了为了增加计算机图形真实感, 如何使用纹理映射的简要说明。

    计算机图形学 OpenGL实验源码+实验文档

    实验一 OpenGL+GLUT...小实验13:纹理映射初步—掌握OpenGL纹理映射的一般步骤 56 小实验13:纹理映射—纹理坐标的自动生成(基于参数的曲面映射) 59 小实验14:纹理映射—纹理坐标的自动生成(基于参考面距离) 61

    基于OPENGL的二次曲面屏保程序代码

    基于OPENGL的二次曲面屏保程序代码,涉及二次曲面的绘制与纹理映射算法。

    光照和键盘控制

    教您如何使用键盘来移动场景中的对象,还会教您在OpenGL场景中应用简单的光照。这一课包含了很多内容,如果您对前面的课程有疑问的话,先回头复习一下。进入后面的代码之前,很好的理解基础知识十分重要。

    OpenGL编程指南(第四版) 中文版 pdf

    本书以清晰的语言阐述了OpenGL的功能以及众多计算机图形学基本技术 如构建和渲染3D模型 从不同的角度观察物体 使用着色 光照和纹理映射来提高图像的真实感;深入探讨了一些高级技术 其中包括纹理映射 反走样 雾效和...

    OpenGL 开发教程chm

    不过觉得内容挺全的,一共分二大部分:Jeff Molofee的OpenGL教程和OPenGL基础图形编程教程,在Jeff Molofee的OpenGL教程里,你将学习第一个OPENGL三角形的生成、着色、转起来、向3D进军、纹理映射、简单的透明、飘动...

    OpenGL编程指南(第四版)(PDF)+源码

    然后深入探讨一些高级技术,包括反走样、混合、雾效、显示列表、图像处理、纹理映射、帧缓存、网格化、NURBS、选择和反馈等;同时讨论其他一些重要主题,像如何提高程序的性能、OpenGL扩展和跨平台技术等。本书只...

Global site tag (gtag.js) - Google Analytics