问题标签 [3d-texture]

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 回答
426 浏览

timer - Unity 3d:计时器的 3d 文本请帮助我

大家好,晚上好。

我对 timer 有问题。当我按下播放按钮时,倒计时仅显示数字 3。我使用 3d 文本而不是 GUI 文本,因为我的 GUI 文本不起作用,所以我使用了 3D 文本。

这是我的 COuntdown.js 代码

这是我在 TImer.js 中的代码

var guiTime : 文本网格;

帮帮我,伙计们。

0 投票
1 回答
464 浏览

opengl - 除了如何获取纹素之外,2D 和 3D 纹理之间有什么区别?

我正在将 OpenGL 应用程序移植到网络上,并发现 WebGL 1.0 不支持 3D 纹理(将在 2.0 中支持)。我使用 16 x 16 x 16 纹理作为一些简单模型的颜色信息(用于块状外观)。

现在不支持 3D 模型,我意识到我可以将 16 层分散到 4 x 4 平面上,如下所示:

结果是 64 x 64“伪 3D”纹理。

这引出了我的问题:GPU 上的 3D 和 2D 纹理有什么区别?在可以使用 2D 纹理而不是 3D 纹理的情况下(如我的示例中),两者之间是否存在性能差异?

我猜 3D 纹理具有沿 z 轴插值的硬件支持,而对于 2D 纹理,则需要两个 texel 提取,并且在它们之间进行手动插值,以获得相同的结果。

0 投票
1 回答
3902 浏览

opengl-es - WebGL/three.js 中的 3D 纹理使用 2D 纹理解决方法?

我想为在 WebGL 中渲染的对象使用一些 3D 纹理。我目前在片段着色器中使用以下方法,正如WebGL 和 OpenGL 差异所建议的那样:

问题是我可以使用的最大 3D 纹理是 64x64x64(因为最大 2D 纹理宽度是 4096 = 64*64)。如果可能的话,我想尝试使用更大的纹理,所以我想看看是否有人建议使用具有类似解决方法的更高分辨率的 3D 纹理。据推测,我应该能够组织 2D 纹理,使 3D 切片水平和垂直排列,但我的 google-fu 到目前为止还没有找到可行的解决方案。

0 投票
1 回答
402 浏览

c++ - 在片段着色器 OpenGL 中写入多个 3D 纹理

我有一个 3D 纹理,我在其中写入数据并以这种方式将其用作片段着色器中的体素:

并且纹理是这样定义的

然后当我必须使用它时

现在我的问题是我想要一个 mipmapped 版本而不使用 opengl 函数,因为我注意到它非常慢。所以我正在考虑同时在所有级别写入 3D 纹理,例如,最大分辨率为 512^3,当我在该 3dtex 中写入 1 voxel VALUE 时,我还为 256^3 写入 0.125*VALUE voxel 和 0.015625*VALUE 用于 126^3 等。由于我使用 imageStore,它使用原子性,所有值都将被写入并使用这些权重我会自动获得平均值(不完全像插值,但我可能会得到一个令人愉快的结果反正)。所以我的问题是,拥有多个 3dtexture 并同时写入所有这些的最佳方法是什么?

0 投票
1 回答
866 浏览

c++ - 3D 纹理上的 OpenGL 高斯内核

我想在 openGL 中对 3D 纹理进行模糊处理。由于它是可分离的,我应该能够在 3 遍中完成它。我的问题是,应对它的最佳方法是什么?

我目前有 3D 纹理并使用 imageStore 填充它。我应该为模糊创建其他 2 个纹理副本,还是有办法在使用单个纹理时做到这一点?

我已经在使用 glCompute 来计算 3D 纹理的 mip 贴图,但在这种情况下,我从级别 0 的纹理读取并写入下一层的纹理,因此没有冲突,而在这种情况下,我需要一些复制。

0 投票
1 回答
2712 浏览

directx-11 - 一次渲染到完整的 3D 渲染目标

使用 DirectX 11,我创建了一个可以绑定为渲染目标的 3D 体积纹理:

我现在想更新整个渲染目标并用像素着色器中生成的程序数据填充它,类似于使用“全屏通道”更新 2D 渲染目标。生成数据所需的一切都是相关像素的 UVW 坐标。

对于 2D,可以构建一个简单的渲染全屏三角形的顶点着色器:

我很难思考如何将这一原则用于 3D。这在 DirectX 11 中是否可行,或者我是否必须按照此处所述渲染到体积纹理的各个切片?

0 投票
1 回答
3052 浏览

opengl - OpenGL 创建树

我正在将 PyOpenGL 与 PyGame 一起使用(尽管我也试图将游戏复制到 c++ 中),并且我想在我的游戏中绘制一些低多边形树,如下图所示。

但目前我只知道如何绘制简单的平面并在其上放置纹理(通过创建 x、y、z 坐标和纹理坐标的数组并使用 glDrawArrays)。有没有办法只使用 opengl 来制作像下面的树一样的东西(它会涉及 3d 纹理坐标吗?)还是我需要一个外部图形引擎?

如果我确实需要图形设计师,是否有人有任何建议,那么我需要将顶点传递给 python 中的数组,然后在 glDrawElements 中使用它是对的吗?

低聚树

0 投票
1 回答
473 浏览

opengl - 来自 Opengl 3d 纹理的可见边缘

我从体积数据的体积渲染中遇到了立方体的可见边缘,当在立方体的边缘进行查看时会发生这种情况。

仅供参考,工件如下:

渲染工件 2

渲染工件 2

仅供参考,片段着色器片段如下(OpenGL Development Cookbook):

仅供参考,使用 glTexImage3D 加载纹理,格式为 GL_RED,尺寸为 556x614x201

0 投票
0 回答
821 浏览

unity3d - 球体材质:来自超鱼眼镜头的 360 度视频

大约一年来,我使用 Unity 的 MovieTexture 和超宽全景 mp4 视频在 Unity 中成功地创建了 360 度全景 VR 体验。由五台 GoPro 摄像机拼接而成的源视频为 1200x800 宽,拼接在一起的视频图像包括视频图像顶部和底部的中心和黑色条带。作为 MovieTexture 应用到标准球体内部(法线反转),这产生了超出可接受的视频球体体验,因为宽全景完美地包裹在球体内部,所以视频图像没有失真。

现在,我正在尝试使用来自称为 360-Fly 的单镜头相机的源视频。360-Fly 捕捉 240 度视野并产生完美方形且高度失真的鱼眼视频。鱼眼视频位于方形格式的中心,帧的四个角为黑色。视频图像的中心是摄像机正上方的空间,画面的边缘是摄像机周围的 360 度水平线。

关于材质、纹理以及它们如何准确地应用(包裹)在网格周围,我仍然是一个完整的 n00b。将方形格式的鱼眼视频应用于球体会产生高度失真的图像。我假设我需要将此 MovieTexture 应用到完美球体以外的东西上。

我如何将此方形格式的鱼眼 MovieTexture 应用于球体以补偿鱼眼失真?我应该创建哪种类型的球体或半圆球体或扁球体?需要应用材料的方式是否有其他变化?

0 投票
1 回答
238 浏览

3d-texture - 哪种内部格式适用于compressedTexImage3D?

我正在尝试使用 Firefox 47(每晚)在 WebGL2 中将纹理压缩与 TexImage3D 一起使用,但我找不到有效的格式。错误是:

我可以使用哪种格式?