【问题标题】:Loading a texture in GLM在 GLM 中加载纹理
【发布时间】:2011-07-21 13:07:28
【问题描述】:

嘿,我使用带有 SFML 的 GLM(由 nate robins 制作)和 mingw32 上的 opengl,IDE 为 CodeBlocks(windows)

使用 GLM 从以下位置加载我的纹理时:http://www.3dcodingtutorial.com/Working-with-3D-models/Getting-GLM.html

嘿,我设法通过更改代码以更好地加载纹理来解决颜色问题,但现在我无法让纹理显示...

这是我主要的新链接:http://pastebin.com/gasu1Hux

我一直在查找 GLm 教程,但我找不到任何关于我的纹理根本不显示的正确答案.....

也许我错过了什么?

//////////////////OLD///////////////////// ////

我也试过 devernay.free.fr 的那个,但我总是收到纹理错误 (不会发帖,因为每次我发帖时,我的问题都会被拒绝……)

我遇到了一个小故障,我的整个模型是蓝色而不是默认的灰色...

我发现我没有自己加载纹理的 GLM 库..

所以我设法从 3dcodingtutorial.com 找到了一个纹理加载器

当我加载纹理时它没有放在模型上,它只是改变它的颜色。

现在我想知道为什么我的模型是单色而不是我设置的纹理。

这是我用来制作纹理和绘制模型的一些代码:

好的,这是main.cpp

抱歉贴错了._.

粘贴已更新!!

http://pastebin.com/tcwwasb9

【问题讨论】:

  • 大写、链接等。此外,发布一小段引用未定义类/结构的代码通常不是很有用,因此当您询问 GL 状态时,这些类/结构可能正在修改:)
  • 好的,给我一秒钟我会加载文件哎呀大写xD

标签: c++ opengl model textures


【解决方案1】:

默认的GL_TEXTURE_ENV_MODEGL_MODULATE。确保您不会无意中在某处设置颜色状态,或者在使用纹理渲染某些内容之前使用 glColor3ub(255,255,255) 强制解决问题。

编辑:GL_DECAL 也是一个选项。

【讨论】:

  • 呃……我不完全明白你说的话……我认为如果它简单的话我很愚蠢
  • GL_MODULATE 将纹理 RGB 三元组与当前颜色 RGB 三元组相乘。因此,如果您将颜色设置为 RGB(255,0,0),您的纹理最终会渲染,就好像您敲掉了绿色和蓝色通道(即所有红色通道)。有许多 GL 操作会更改当前颜色作为副作用。请参阅spec
  • 我不认为它是一个颜色的东西,因为整个模型是一种颜色,但有阴影。如果是 GL_MODULATE 问题,它不会有不同级别的颜色吗?我也还是不明白
  • 是的,我认为一种颜色是由我的照明产生的,但为什么现在要这样做,因为我已经点亮了模型(在我放置纹理之前它是灰色的)。那很奇怪..我也认为我只是错过了一些东西。但我不记得那是什么了..
  • WorldMap3Dv1.obj 是否包含vt 纹理坐标指令?
猜你喜欢
  • 2014-08-13
  • 2013-06-28
  • 1970-01-01
  • 1970-01-01
  • 2015-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多