问题标签 [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.
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
- 为纹理添加了透明边框而不是复制的边框
three.js - 在three.js中将纹理正确应用于挤出的椭圆对象
一段时间以来,我一直难以将纹理正确应用于 three.js 自定义对象。专门挤出的椭圆形物体。我环顾四周,从我所见,我需要使用它的边界框来生成对象 UV 映射。但是,我不确定如何执行此操作,而且我似乎找不到任何有关其工作原理的详细解释。谁能帮我详细解释一下这个过程?
谢谢,zaidi92
three.js - Threejs:地形纹理发生不可见/透明
三.js r62
我有一个来自 .obj 文件的场景,其中包含一些网格。 https://dl.dropboxusercontent.com/u/8913924/terrain/index.html
我尝试将纹理应用于“地形”对象。结果是一个不可见/透明的纹理。
(如果纹理应用于场景中的任何其他对象 - 一切似乎都很好)
检查上面的演示。
注意:.mtl 文件为空;
上传纹理并将其应用于场景的所有对象:
将此纹理应用于地形和所有其他对象:
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
我真的可以在这方面使用一些帮助。这是我一直在处理的一个问题,但我还没有找到任何东西。
python - PyOpenGL 中纹理中的伪影
我用Python Imaging Library
来加载.ttf
字体。这是代码:
这是loadFont()
各个类的功能:
这是我使用的快照,glReadPixels()
不幸的是与使用PyQt
.
它显示了一个不需要的边界,一些人工制品。请帮我纠正这个问题。
opengl-es-2.0 - OpenGL ES 2.0 - 使用 GLKit 而不是 OpenGL API 加载 PNG
我有一段代码使用 glTexImage2D 加载纹理,如下所示:
我用这个替换了代码,代码不会引发任何错误,而是显示黑色图像。
可能是什么问题呢?
我要移植的项目位于https://github.com/glman74/simpleFBO
opengl - 使用 VBO 使用 LWJGL 对 3D 立方体进行纹理处理
我对 OpenGL 有很大的问题。我试图得到一个简单的盒子来渲染纹理。然而,即使是这个应该只是绘制框的代码也会崩溃。如何使用 VBO 将纹理添加到 3D 框,以及如何让此代码不崩溃?
编辑: 这是位置类。
编辑:这是我的 initGL() 方法:
这是我的 renderGL() 方法:
编辑: 这就是我为堆栈跟踪所做的一切:
opengl - glTexImage2D 与 gluBuild2DMipmaps
非常基本的 OpenGL 纹理创建代码:
和渲染:
文使用glTexImage2D
,没有画,但gluBuild2DMipmaps
我看到了 gDebugger 正确创建纹理的结果。问题是什么?
c# - 纹理球体 C#
我目前正在开发基于 Managed DX 和 C# 的全景查看器。
我创建了一个球体网格,现在我想用地球地图对其进行纹理化。
我将纹理加载到一个Texture
对象中,但是当我查看结果时,纹理会在经度和纬度上重复。
我认为我需要一个像素着色器,但我必须说我不知道如何创建一个。
有人能帮我吗?
谢谢!
c++ - 如何有效地纹理多个精灵?
我正在尝试在 DX11 中实现精灵,但我不知道如何对它们进行纹理处理。
首先,可能有多个精灵,每个精灵使用不同的纹理(图集)。但是因为我不知道屏幕上有多少精灵,所以我不能Texture2D[x]
在我的着色器代码中使用。
所以我查看了 using Texture2DArray
,但随后我必须将D3D11Texture2D
对象本身初始化为纹理数组。这在我看来是个问题,因为在某一时刻,精灵 A、B、C 可能会出现在屏幕上,而下一时刻精灵 B、C、D 会出现在屏幕上。所以我必须创建两个D3D11Texture2D
对象,都包含 B 和 C 纹理。无论如何,看起来数组中的纹理必须具有相同的大小..
这绝对是一场灾难。那么 - 我对数组有什么遗漏吗?我有什么选择以最有效的方式做到这一点?我是否必须设置一个纹理,绘制所有使用该纹理的精灵,然后重复?因为那看起来也很糟糕。
提前致谢!
PS。我知道这可能是过早的优化,但我是 DX 新手,学习如何编写好代码/很好地使用库对我来说很有趣。所以我宁愿花一些时间也不愿写一个糟糕的解决方案。