问题标签 [skybox]

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 投票
4 回答
10640 浏览

ios - 如何将scenekit背景的内容设置为立方体贴图

我正在尝试使用大约 6 个图像的数组将场景的背景内容设置为天空盒效果。

我已经以正确的顺序创建了图像数组,我知道我需要然后使用

但是,我正在努力弄清楚我如何以及在何处使用该类方法来返回包含立方体贴图的属性。

0 投票
0 回答
517 浏览

c++ - Skybox 使用 OpenGL ES 2.0,Android NDK -- 黑屏

这就是我设置这些东西的方式。加载 .tga 文件很好,我已经将加载用于 2D 纹理映射,效果很好。

这是立方体数据和纹理数据;这可能不是很错误,我使用相同的数据在桌面上创建 Skybox,使用 OpenGL

纹理坐标:

着色器没什么特别的,顶点着色器只是填充位置并传递纹理坐标,片段着色器尝试使用映射纹理

这就是我尝试渲染的方式

最后但非常重要的是相机设置,我希望在“内部”立方体中,并且从内部映射纹理。

感谢您的时间和耐心,非常感谢您的帮助。(已经花了1.5天,尝试了很多东西,希望至少StackOverFlow有所帮助..)

0 投票
1 回答
1528 浏览

javascript - 从 tilemap 制作三个.js 天空盒

我可以使用 6 个单独的图像文件制作一个 three.js 的天空盒。但我希望能够从由瓷砖组成的单个图像构建天空盒。

例如,如果我有一个复合平铺图像作为源(请参阅(http://www.zen226082.zen.co.uk/STACK_EXCHANGE/Giant_A.jpg)...我没有足够的代表在这里发布它:-(。

我可以将合成图像加载到画布中,并将每个图块复制到缓存缓冲区中,然后将它们发送到 Three.js 材料数组中。然后使用这些材料制作天空盒。

然而有两个问题。

问题1是合成图像需要翻转。我可以在像 Paint.net 这样的图形应用程序中轻松地做到这一点,但如果能够在 javascript/three.js 中以编程方式做到这一点,那就太好了。

问题 2 是 Three.js 要求 Y+ 和 Y- 的图块也需要旋转 180 度。这在图形应用程序中(对我来说)很难做到。例如,这是一个经过修改以适应我一直在使用的 Three.js 代码的合成平铺图像(http://www.zen226082.zen.co.uk/STACK_EXCHANGE/Giant_B.jpg)(太可怕了!)

我的问题 = 在从合成图像中提取它们并将它们传递到天空盒构造之前,我是否可以通过某种方式对两个图块执行 180 度旋转。

编辑(2014 年 8 月 10 日)问题应该是“如何从由 12 个大小相等的图块组成的单个图像文件中制作一个 three.js skyBox”。

这是我一直在使用的代码:-

0 投票
1 回答
267 浏览

opengl - 边缘相遇的OpenGL Skybox黑色三角形

我的天空盒边缘出现黑色三角形。当我靠近它们时它们会消失,当我用相机远离它们时它们会变大。我的问题可能出在哪里?谢谢

渲染函数是:

在此处输入图像描述

0 投票
0 回答
222 浏览

three.js - Skybox 不在 VR 中渲染

我正在玩 Three.js 示例和 VR 支持,虽然大多数示例移植得很好,但当涉及 Skybox 时,它似乎没有移植到 VR 视图。

在里面:

渲染时

我尝试在第一次 VR 渲染效果之前将 Skybox 网格重新加载到场景中,但没有帮助

0 投票
1 回答
2289 浏览

javascript - Three.js:在立方体的一个面上组合材质(使用多种材质)

我创建了一个立方体(天空盒),它的每一面都使用不同的材料。使用没有问题MeshFaceMaterial

但是,现在我想在立方体的一个面上添加一种材质,并在立方体的这个面上组合材质。

所以基本上我会在立方体的 5 个面上使用一种材料,在立方体的 1 个面上使用 2 种材料——我想用另一个透明的 png 覆盖那个“原始”纹理,这样它就只覆盖了原始图像的特定部分。两张图片的尺寸相同,只有的一张是部分透明的。甚至可以用 CubeGeometry 做吗?还是我需要用飞机来做?非常感谢任何帮助!

0 投票
1 回答
1878 浏览

unity3d - C# - 快速改变 unity3d 天空盒颜色

更具体地说,我想快速改变颜色(比如,每秒 60 次),我想把它从蓝色变成红色,再变成绿色,然后再变回来,一遍又一遍地重复

0 投票
1 回答
1263 浏览

three.js - Three.js 未剔除的 SkyBox

我试图让我的天空盒不受camera.far参数的影响。我想用这个来剔除所有其他场景对象,而不是天空盒。

当我设置skyBox.frustumCulled = false;它没有区别。skyBox当然是网格。

这是通过添加另一个渲染通道来完成的吗?如果是这样,我将需要 2 个不同的摄像机,其中一个具有非常高的远值,以允许查看天空盒,对吗?如何有效地做到这一点?

为清楚起见,这里是用于绘制天空盒的地形对象代码片段:

0 投票
1 回答
253 浏览

c# - 地图旋转(天空盒)XNA

我有一个包含在控件中的 xna 窗口窗体,现在我在屏幕的一个区域中有两个模型。问题是我需要同时旋转两个模型,我可以旋转一个物体,它是一个坦克,另一个是渲染在一个盒子里的天空盒(风景)。

坦克移动通过串口实时提供的数据,坦克完美移动,但我无法旋转地图。

(地面应与坦克一起移动)。

http://i61.tinypic.com/2efqrvc.jpg

我使用这段代码来渲染风景:

我认为问题出在行 part.Effect.Parameters["World"].SetValue ..... 我不知道该放什么来使地图使用所有轴旋转。

我使用以下代码旋转水箱:

如果您查看第二行,您会注意到我使用角度来旋转水箱(必须以这种方式...),所以有什么想法或建议吗?

更新:解决了,怎么解决?

在 SkyBoxRender 方法中,我添加了以下内容:

然后我存档以使用以下方法在地图中移动相机:part.Effect.Parameters["View"].SetValue(Matrix.CreateLookAt(yourCameraPosition) * orientacionCamara);

现在要像模型一样以相同的角度同时移动相机,我旋转模型,而不是这次的相机。

我希望它可以帮助任何人,谢谢你的建议。

0 投票
0 回答
974 浏览

unity3d - RenderSettings Skybox lerp

我想将我的天空盒从白天材料切换到夜间材料,为此我使用:

但什么也没发生,我一直有白天的天空盒。

将天空盒从一种材质平滑更改为另一种材质的正确方法是什么

谢谢