问题标签 [multitexturing]

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 投票
1 回答
336 浏览

opengl - 在具有独立纹理坐标的 GLSL 中进行多重纹理处理的正确方法是什么?

多重纹理曾经简单明了。你绑定你的纹理,你调用glBegin,然后你进行渲染,除了glTexCoord你调用glMultiTexCoord每个纹理。然后所有这些都被弃用了。

我正在四处寻找正确的方法,但我找到的所有教程,无论是来自官方 Khronos Group 资源还是博客,都假设你想对所有的使用相同的纹理坐标集您的纹理,这是一个非常简单的假设,不适用于我的用例。

假设我有纹理 A 和纹理 B,我想渲染纹理 B 中的颜色,在 rectrB中,使用纹理 A 中的 alpha 值,在 rect中,(为简单起见rA,它具有相同的高度和宽度rB,但不一样的 Left 和 Top 值),使用 OpenGL 3,没有任何不推荐使用的功能。这样做的正确方法是什么?

0 投票
1 回答
582 浏览

c# - 使用 C# 和 ActiViz .NET 进行多纹理处理

我想使用 ActiViz .NET 和 C# 对从 .obj 文件创建的对象进行多重纹理处理。

只要我知道以某种方式使用具有单一纹理的纹理,我就有多个纹理的问题。根据我在VTK GitHub 上找到的内容,我开始编写代码,但SetBlendingModeMapDataArrayToMultiTextureAttribute方法存在问题。我像这样使用 SetBlendingMode:

结果是:

使用 MapDataArrayToMultiTextureAttribute 它看起来像这样:

以类似的消息结尾:

整个代码:

有人对 C# 和 VTK 的多纹理有任何经验并且可以帮助我吗?你知道任何其他可以帮助我的解决方案吗?

编辑 01.12.2015

感谢JohnnyQ 的回答,我可能使上述功能正常工作。我说“可能”是因为现在当我运行代码并选择 .obj 文件时,程序停止工作并出现以下两个错误之一: An unhandled exception of type 'System.AccessViolationException' occurred in Kitware.VTK.dll有关读取或写入受保护内存或程序尝试的信息仅以vshost32.exe stop working消息停止。

我已将上面的代码更新为实际版本。任何建议仍然受到赞赏。

0 投票
2 回答
331 浏览

opengl - 着色器中如何引用纹理?

快速 OpenGL 新手问题。我的片段着色器中有这一行:

我找到了我正在使用的示例代码,但找不到任何参考mytexture;仅找到激活纹理单元并将之前复制到 GPU 的纹理绑定到它的调用。

我的问题是,片段着色器如何知道我使用的唯一mytexture纹理必须通过 引用?

我会想到一个

或类似的必须被调用。

0 投票
1 回答
84 浏览

java - 如何将 3D 树叶的颜色与其下方的纹理合并?

我有一个 2D 纹理,比如这个,我现在只是直接放到地形上。 在此处输入图像描述

然后我在该纹理之上渲染树叶。 在此处输入图像描述

我想(使用片段着色器)获取草下方纹理的颜色,并将草设置为它下方纹理的颜色。

为此,我需要获取地形上每个草顶点相对于纹理的位置。 在此处输入图像描述

然后我需要获取与对象位置对应的纹理颜色,并将其与当前的草颜色混合(假设我有红色草用于演示目的)。 在此处输入图像描述

我目前不确定如何开始。我知道我需要通过着色器获取草在世界中的 X 和 Z 位置(我目前没有),但是我需要计算出相应的纹理像素,我目前不知道该怎么做。

任何有助于解决此问题的建议将不胜感激。

0 投票
2 回答
583 浏览

python - 多重纹理未按预期工作

鉴于以下代码段:

如果我设置current_method=0我会得到我期望的输出,所有立方体面都将使用不同的纹理(如预期的那样):

在此处输入图像描述

如果我current_method=1只设置一个面将被正确纹理,那是一个错误的输出:

在此处输入图像描述

如果我设置current_method=2所有面都将使用相同的纹理[0],这也是一个错误的输出:

在此处输入图像描述

我想了解为什么方法 1 和 2 没有提供与方法 0 相同的输出。我知道当使用 glActiveTexture 正确使用着色器时变得微不足道,但我想了解在旧的固定管道上使用这些方法时出了什么问题。

0 投票
0 回答
327 浏览

java - 如何在 libgdx 中有效地生成程序纹理?

我正在努力在 libGDX 中生成程序 3D 地形。我已经设法创建了网格,但是现在我很难找到一种有效的纹理化方法。

我现在这样做的方法是创建一个像素图并遍历所有高度图值。根据每个高度值,我从适当的纹理中提取一个像素(例如,如果值 < 100,则从水纹理中提取一个像素,如果 > 100 && < 150,则从沙子纹理中提取像素等),然后一些混合我把它放在我创建的像素图中。最后,我将根据我创建的像素图生成一个新纹理并将其分配给地形。这有效并给出了令人满意的结果,但是迭代每个像素并以这种方式创建纹理会导致我的游戏性能非常差并且启动时间很长。我的问题是,我还有什么其他选择?

有没有比一次一个像素地遍历像素图更有效的方法来创建纹理?有没有办法有效地“复制像素图的一部分并将其粘贴到另一个”?

我应该以完全不同的方式来做吗?也许是 FBO 或着色器?如果是这样,请指点我一些资源,我对这些资源没有太多经验。

谢谢!

0 投票
2 回答
28 浏览

php - 具有多文本值的搜索数组

在这个数组中,我想从 value 中找到单词“in”,并从该歌曲中创建新数组,包括专辑中的数字(键)歌曲。

0 投票
0 回答
168 浏览

android - 如何在 android 的 GLES 中加载多纹理 .obj 文件

我必须在 android 中制作 3d obj 文件。我搜索并找到了许多论坛,现在我能够成功加载 obj+mtl 文件。但我遇到了具有许多纹理文件的 obj 和 mtl 文件的问题。在可能的情况下,在 mtl 中,每张脸都有一个纹理 (.png)。如何在 GLES 中加载这种类型的 obj 文件?是否可以在 android opegl Gles 中加载多纹理 obj?我有 min3d、3dmodelviewer 和 arjpct 库,但没有用。如果可以在 GLES 中加载多纹理 obj,请提供帮助

对于 multi_texture 我已经这样做了

0 投票
1 回答
80 浏览

webgl - 将纹理元素添加到 webGL 中已纹理对象的最佳方法

我目前正在创建一个 Web 配置工具来创建非常简单的建筑物。我已经设法创建了一个布局编辑器,您可以使用它通过拖放来排列建筑物的 4 面墙,然后以 3D 形式查看结果。布局编辑器是一个简单的 2D 画布,3D 的东西是用 WebGL 完成的。我从之前创建的 2D 布局和默认高度创建 3D 网格。

现在我想更进一步,提供添加门窗的功能。因此,我还想使用 2D 画布,您可以通过拖放在其上添加和移动它们(每面墙)。然后我再次想在 3D 模型上显示结果。我不需要门窗成为网格的实际部分。如果它们只是正确放置在模型上的纹理就足够了。

基本模型已经有石膏纹理。我现在想将门窗的图像放在“基础”纹理的顶部(参见图像)。在 WebGL 中实现这一目标的最佳方法是什么?我实际上不知道如何开始,因为通常的纹理概念不适用于这种情况。

这是 3D 模型的当前状态: 在此处输入图像描述

这就是我希望它在添加一个窗口后的样子(当然还有一个实际的窗口纹理): 在此处输入图像描述

提前致谢!