OpenGL中更新一个已绑定的贴图内容(转,作者CloneCenter)

原创 2007年09月22日 21:58:00
   最近使用VB.NET完成了一项和OpenGL相关的项目,OpenGL是其中实现该软件的核心功能,软件中需要使用一个根据用户的不同需求实时改变已绑定的贴图图片功能,主要是字体颜色的变化。因为刚刚涉及OpenGL的编程,很多东西不懂,这里写出的方法也有可能是愚蠢、曲折的。 

    在创建OpenGL窗口过程中,借鉴了Nehe教程,初始化窗口的时候创建纹理,因为程序里面需要处理很多图片,所以装载的速度比较慢,我们需要更改字体颜色的图片也在这个过程中同时创建,初步估计,在我的机器上使用了5秒左右。

    改变字体颜色,就需要对这个纹理进行处理,纹理的原始内容是从System.Drawing.BitMap创建过来的。我在使用glGenTexture和glBindTexture之后,进行了一些OpenGL纹理的参数设置,似乎这个BitMap就不能正常访问了,可能是里面的内容已经被OpenGL修改了。本来是想对这个原始的BitMap重新处理的,但是由于不能访问,我一时不知所措。

    冷静下来之后,决定将这个BitMap重新创建,然后讲纹理重新绑定,理论上是可行的。试验了一下,果然成功。步骤如下:

' 创建BitMap
textureImage(2= CreateMyBitMap(...)
' 重新绑定纹理
Gl.glBindTexture(3, textureImage(2))
' 下面的代码进行OpenGL纹理参数设置。
Gl....
嘻嘻,大功告成。

一个OpenTK做的OpenGL纹理贴图DEMO

  • 2014年11月13日 12:01
  • 4.51MB
  • 下载

OpenGL(十二) 纹理映射(贴图)

OpenGL绘制纹理的步骤: 1. 开启纹理功能 使用glEnable(GL_TEXTURE_2D)开启2D纹理功能,使用glDisable(GL_TEXTURE_2D)关闭纹理,默认情况下纹理是关闭...
  • dcrmg
  • dcrmg
  • 2016年11月16日 07:15
  • 2839

openGL学习笔记6 bmp 2D纹理贴图

#include #include #pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"") #defin...

OpenGL 两个纹理贴图

  • 2015年09月23日 19:26
  • 11.44MB
  • 下载

解读OpenGL棋盘纹理贴图

for (int i = 0; i      {           for (int j = 0; j          {               GLubyte c = (((i & 0x8...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:OpenGL中更新一个已绑定的贴图内容(转,作者CloneCenter)
举报原因:
原因补充:

(最多只允许输入30个字)