问题标签 [texturing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
6556 浏览

c++ - OpenGL,着色器模型 3.3 纹理:黑色纹理?

几个小时以来,我一直在努力解决这个问题,我确信这很简单,但我就是无法得到结果。我不得不稍微编辑这段代码,因为我已经构建了一个小库来封装 OpenGL 调用,但以下是对事态的准确描述。

我正在使用以下顶点着色器:

以及以下片段着色器:

两个着色器都编译并且程序链接没有问题。

在我的 init 部分,我像这样加载一个纹理:

你会发现我正在使用 Qt 来加载纹理。对 ::throw_on_error() 的调用检查 OpenGL 中的错误(通过调用 Error()),如果发生错误则抛出异常。这段代码没有出现OpenGL错误,使用Qt加载的图片是有效的。

绘图执行如下:

同样,不会发生 OpenGL 错误,并且会在屏幕上绘制一个三角形。但是,它看起来像这样:

纹理,不像预期的那样。

我突然想到这个问题可能与我的纹理坐标有关。因此,我使用 s 作为“红色”组件并将 t 作为“绿色”组件渲染了以下图像:

使用 st 坐标着色。

纹理坐标显示正确,但我仍然收到厄运的黑色三角形。我究竟做错了什么?

0 投票
1 回答
6273 浏览

opengl-es - OpenGL、GL_MODULATE 和多重纹理

我已经成功绘制了一个多纹理多边形,但不幸的是,整个纹理区域只使用了覆盖纹理的第一个像素。

以下是纹理(GL_TEXTURE0 和 GL_TEXTURE1):

图标 覆盖

结果是这样的:

结果

仅使用顶部的红色像素。我尝试在顶部仅使用 1x1 蓝色像素,并且使用蓝色叠加得到相同的结果。

我的代码:

这是一个 OpenGL 问题,但感兴趣的人可以在这里找到 iOS 项目:http: //dl.dropbox.com/u/33811812/cocos2d/OpenGLTest.zip

编辑: 来自红皮书:

如果你是多重纹理并且你使用 glTexCoord*(),你正在为第一个纹理单元设置纹理坐标。换句话说,使用 glTexCoord*() 等价于使用 glMultiTexCoord* (GL_TEXTURE0,...)

关于如何传递坐标数组的任何提示?OpenGL ES 1.1 不支持 glBegin() 等。

0 投票
0 回答
222 浏览

opengl - 来自 FBO 的 Opengl 纹理(无论是否使用 mimap)

在使用 FBO 时我必须遗漏一些明显的东西:

我在应用程序开始时调用 TMyForm::Init() 一次:

在 Draw() 函数中,我将缓冲区发送到卡片(渲染场景正常)和预览窗口(全黑或全白,取决于我切换回默认窗口上下文还是 fbo 上下文):

所以我的问题是“第 2 部分”没有做我希望的事情:将 fbo 内容纹理化到当前窗口。我尝试更改“glTexCoord2d”但没有成功。

0 投票
1 回答
294 浏览

java - Java 3D API - 防止小的纹理模糊

在 3D 图像的底部,模糊清晰。

我使用 Java 3D API 渲染了这个场景。在图像的底部,地面更靠近观察者,图像上的黑线周围有模糊。我想完全防止这种模糊。这是我用作纹理的图像:

网格.png

如您所见,它很小,但不能将图像放大。是否有任何缩放方法可以更改类型,例如 Java 3D 纹理的“最近邻”选项?

谢谢!

0 投票
1 回答
586 浏览

android - LibGdx GLES2.0 立方体纹素拉伸

我已经在 Windows/SDL 上编写 OpenGL 几年了,并且能够用它做很多高级的事情。

我已经切换到 Android 和 libgdx,在过去的几天里,我试图将一个简单的演示放在一起,只是一个旋转的立方体。

使用 libgdxObjLoaderMesh类,我加载了从搅拌机导出的立方体网格(带有法线和 uv 坐标),并尝试应用纹理,它绘制了一个立方体,但似乎只使用纹理中的一个纹素来覆盖整个模型。

我已经仔细检查了纹理坐标,甚至用特定坐标手动编码了一个平面来测试,同样的事情正在发生。

这是顶点着色器:

和片段着色器:

但我不认为这就是问题所在。或者也许确实如此,我不确定。

不想过多地堵塞这个问题,所以主要来源在这里(pastebin):主要来源

如果这是一个不好的问题,请告诉我,这是我的第一个问题。

0 投票
1 回答
747 浏览

python - 在OpenGL [python]中纹理映射一个弯曲的矩形

我在 python 中的 OpenGL 中的纹理映射有一些问题。我正在尝试绘制一个在顶部和底部弯曲的矩形,但到目前为止我只能让它在底部弯曲。不知何故鞋面不想形成曲线。我正在使用这个函数,参数为 0.2:

我得到的结果在左边,而我应该得到像图像右侧部分的东西。

在此处输入图像描述

0 投票
1 回答
611 浏览

ios - GLKit GLKVertexAttribColor:动态改变颜色

所以随着物体离我越来越远,我想应用淡入淡出。对象是有纹理的。

我相信对象的颜色是通过这条线控制的

而不是从顶点数组中获取颜色,是否可以在其中插入颜色?

我试过设置 glColor4 等并设置

0 投票
2 回答
1040 浏览

c++ - OpenGL 3.2 纹理问题

我目前正在使用 C++ 开发 2D 引擎。

我遇到了一个问题,我似乎相信我以前遇到过一次,但后来忘记了我是如何解决它的。

该引擎是跨平台的(Win、OSX、Linux),为此我使用 GLFW 作为基础。

当做正常的纹理处理时,我最终得到了这个:

http://tinypic.com/r/263ec6o/6

如您所见,纹理不正确(因为图像应该是我的简单图像)。

使用 geDebugger,我可以确认缓冲到 GPU 的图像是正确的,但是正如您在图像中看到的那样,它是如何结束的。

我将在下面包含一些相关代码的削减,但如果您想了解更多信息,请随时询问。

-缓冲区生成代码

- 渲染代码

-垂直着色器

-碎片着色器

0 投票
1 回答
349 浏览

opengl - Open GL 纹理,纹理坐标与渲染的内容不正确

我正在使用 opengl 渲染场景,并使用一些示例代码和 FreeImage API 加载纹理。

这是我所看到的链接

[图片已删除]

我可以确认所有纹理坐标都根据需要提供给glTexCoord2f 0.0f 和1.0f 以及顶点坐标。

每个渲染的三角形似乎都粘贴了(并重复)完整的纹理,而不是坐标指定的纹理区域。

纹理为 1024x1024。

这是加载纹理的函数

这些是用于渲染的函数

0 投票
1 回答
135 浏览

c# - 预转换的纹理多边形

我只是从 3D 开始,所以我有一个关于在屏幕上绘制预转换的东西的问题。

通过使用一些教程,我能够弄清楚如何以预转换形式绘制彩色多边形,但我就是不明白如何对它们进行纹理化......这可能吗?如果有怎么办?

我现在拥有的: