问题标签 [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 投票
0 回答
1095 浏览

c++ - 使用 OpenGL 3.3 在 2D 中绘制纹理四像素精确?

如何使用带有 GL_LINEAR 过滤的浮动位置在屏幕上滚动纹理四边形“精确像素”?如果我尝试这个任务,如果子像素坐标大于或等于 0.5,我总是可以在非常平滑的移动过程中看到硬像素变化。这看起来非常难看。

我认为问题出在这里,在滚动 0.5 个子像素后,四边形与纹理坐标如此不对齐,以至于 OpenGL 现在需要另一个相邻像素来进行新插值的纹理处理,因此新绘制的子像素与之前渲染的子像素不对齐?!

可能是这里的解决方案,重新对齐位置 > 0.5f 上的纹理坐标?有人可以帮我解决这个问题并计算正确的紫外线坐标吗?如果四边形子像素位置> = 0.5f,我认为紫外线坐标应该移动到一个新位置。

这是屏幕截图的链接,它显示了最后一帧 x=0.5f 上 x 方向(左)的硬像素跳跃。(用strg+鼠标滚轮放大截图)

http://i.stack.imgur.com/n0GVA.png

以下是相关的代码片段:

我尝试过的没有用:

  • 为我的四坐标添加 0.5f 的偏移量。这将问题转移到阶段,现在每个完整的 1.0f 子像素位置都会出现一个硬子像素变化。
  • 更改 calcTexPos 函数:-> (2.0f*fTexPos+1.0f)/(2.0f*64.0f)
  • 检查,如果在驱动程序面板上激活了 MSAA
  • 为纹理添加了透明边框而不是复制的边框
0 投票
0 回答
156 浏览

three.js - 在three.js中将纹理正确应用于挤出的椭圆对象

一段时间以来,我一直难以将纹理正确应用于 three.js 自定义对象。专门挤出的椭圆形物体。我环顾四周,从我所见,我需要使用它的边界框来生成对象 UV 映射。但是,我不确定如何执行此操作,而且我似乎找不到任何有关其工作原理的详细解释。谁能帮我详细解释一下这个过程?

谢谢,zaidi92

0 投票
0 回答
246 浏览

three.js - Threejs:地形纹理发生不可见/透明

三.js r62

我有一个来自 .obj 文件的场景,其中包含一些网格。 https://dl.dropboxusercontent.com/u/8913924/terrain/index.html

我尝试将纹理应用于“地形”对象。结果是一个不可见/透明的纹理。

(如果纹理应用于场景中的任何其他对象 - 一切似乎都很好)

检查上面的演示

注意:.mtl 文件为空;

上传纹理并将其应用于场景的所有对象:

将此纹理应用于地形和所有其他对象:

0 投票
0 回答
1207 浏览

javascript - 如何使 Three.js Extrude Geometry 使用局部 UV 坐标进行纹理处理,而不是使用世界坐标

尝试在three.js 中将纹理应用于我的对象时,我一直遇到问题。每当我尝试对挤出的几何体进行纹理处理时,纹理就不会出现。在放弃了一段时间然后回来挖掘更多之后,我发现 ExtrudedGeometry.js 在应用纹理时使用了世界坐标。

我想将其更改为局部坐标,以便我的纹理正确包裹。我一直在寻找一段时间,但似乎找不到与此主题相关的任何内容。以下是帮助我走到这一步的讨论,包括紫外线发生器。

https://github.com/mrdoob/three.js/issues/1396

https://github.com/mrdoob/three.js/issues/1824

我真的可以在这方面使用一些帮助。这是我一直在处理的一个问题,但我还没有找到任何东西。

0 投票
1 回答
163 浏览

python - PyOpenGL 中纹理中的伪影

我用Python Imaging Library来加载.ttf字体。这是代码:

这是loadFont()各个类的功能:

这是我使用的快照,glReadPixels()不幸的是与使用PyQt.

快照 OpenGL 上下文

它显示了一个不需要的边界,一些人工制品。请帮我纠正这个问题。

0 投票
2 回答
792 浏览

opengl-es-2.0 - OpenGL ES 2.0 - 使用 GLKit 而不是 OpenGL API 加载 PNG

我有一段代码使用 glTexImage2D 加载纹理,如下所示:

我用这个替换了代码,代码不会引发任何错误,而是显示黑色图像。

可能是什么问题呢?

我要移植的项目位于https://github.com/glman74/simpleFBO

0 投票
1 回答
446 浏览

opengl - 使用 VBO 使用 LWJGL 对 3D 立方体进行纹理处理

我对 OpenGL 有很大的问题。我试图得到一个简单的盒子来渲染纹理。然而,即使是这个应该只是绘制框的代码也会崩溃。如何使用 VBO 将纹理添加到 3D 框,以及如何让此代码不崩溃?

编辑: 这是位置类。

编辑:这是我的 initGL() 方法:

这是我的 renderGL() 方法:

编辑: 这就是我为堆栈跟踪所做的一切:

0 投票
1 回答
5935 浏览

opengl - glTexImage2D 与 gluBuild2DMipmaps

非常基本的 OpenGL 纹理创建代码:

和渲染:

文使用glTexImage2D,没有画,但gluBuild2DMipmaps我看到了 gDebugger 正确创建纹理的结果。问题是什么?

0 投票
1 回答
997 浏览

c# - 纹理球体 C#

我目前正在开发基于 Managed DX 和 C# 的全景查看器。

我创建了一个球体网格,现在我想用地球地图对其进行纹理化。

我将纹理加载到一个Texture对象中,但是当我查看结果时,纹理会在经度和纬度上重复。

我认为我需要一个像素着色器,但我必须说我不知道​​如何创建一个。

有人能帮我吗?

谢谢!

0 投票
1 回答
241 浏览

c++ - 如何有效地纹理多个精灵?

我正在尝试在 DX11 中实现精灵,但我不知道如何对它们进行纹理处理。

首先,可能有多个精灵,每个精灵使用不同的纹理(图集)。但是因为我不知道屏幕上有多少精灵,所以我不能Texture2D[x]在我的着色器代码中使用。

所以我查看了 using Texture2DArray,但随后我必须将D3D11Texture2D对象本身初始化为纹理数组。这在我看来是个问题,因为在某一时刻,精灵 A、B、C 可能会出现在屏幕上,而下一时刻精灵 B、C、D 会出现在屏幕上。所以我必须创建两个D3D11Texture2D对象,都包含 B 和 C 纹理。无论如何,看起来数组中的纹理必须具有相同的大小..

这绝对是一场灾难。那么 - 我对数组有什么遗漏吗?我有什么选择以最有效的方式做到这一点?我是否必须设置一个纹理,绘制所有使用该纹理的精灵,然后重复?因为那看起来也很糟糕。

提前致谢!

PS。我知道这可能是过早的优化,但我是 DX 新手,学习如何编写好代码/很好地使用库对我来说很有趣。所以我宁愿花一些时间也不愿写一个糟糕的解决方案。