28得票6回答
Three.js中抗锯齿功能未生效

我刚开始接触three.js,并且最近频繁地使用它。我真的很喜欢它,已经创造了一些令人难以置信的东西。不过,我不确定为什么当将抗锯齿设置为true时,我看不到任何区别。 renderer = new THREE.WebGLRenderer({ antialiasing: true }); 我已...

28得票4回答
Three.js:获取相机朝向的方向

我正在使用HTML5和THREE.js创建游戏,我有一个相机,根据'YXZ'欧拉顺序旋转。 这样相机就可以像头部一样向上、向下、向左、向右旋转。就像第一人称视角一样。 使用这个欧拉顺序,相机的rotation属性中的z值不会被使用(始终为0)。x用于指定俯仰或纬度(以弧度为单位),y则用于...

28得票1回答
将几何体转换为缓冲几何体

据我理解,Geometry 存储顶点和面的 JavaScript 对象结构,而 BufferGeometry 则通过 Float32Array 等直接存储原始的 gl 数据。 是否有办法将标准的 Geometry 转换为更加紧凑、对象更少的 BufferGeometry?例如,如果我创建了一...

28得票3回答
为什么WebGL程序中的着色器必须在HTML文件中?

我看到有人问如何从html中删除着色器的问题:WebGL - 是否有一种替代方法来嵌入着色器在HTML中? 对于该问题,有复杂的解决方法可以加载包含着色器的文件,如问题回答中所建议的。 在我看到的教程中,着色器代码直接嵌入到html中。JavaScript代码使用getElementById引...

28得票3回答
Three.js如何实现逼真的光照(阳光)?

我正尝试使用Three.js创建一个小的第一人称游戏,但是我在处理光照方面遇到了问题。基本上,我想模拟太阳并使其绕着轴旋转,并投射光线。目前我正在使用THREE.DirectionalLight,但它只朝一个方向照亮,因此立方体的侧面仍然是黑色/暗色。 我需要使用多个灯光使所有物体都能被照亮...

28得票2回答
如何在three.js中设置Z轴坐标系?

在 three.js 中,Y 轴代表上下,Z 轴代表前后。但我想把 Z 轴作为上下,Y 轴作为前后。以下是我想要的示意图: 我想以这种方式改变整个坐标系统,以便如果我围绕 Y 轴旋转网格,它将遵循新的坐标系统而不是传统的坐标系统。 现在,我已经搜索了 Stack Overflow 并找...

28得票3回答
使用three.js动态绘制一条直线

这是我想要实现的(一个可修改的多边形,红色圆圈表示顶点),我希望能够动态地构建多边形。 初始化几何图形时var geometry = new THREE.Geometry(); geometry.vertices.push(point); geometry.vertices.push(...

27得票6回答
three.js设置背景图片

如何创建静态背景图像? 对于默认背景: scene = new THREE.Scene(); // ... renderer = new THREE.WebGLRenderer( { antialias: false } ); renderer.setClearColor( scene...

27得票1回答
如何停止requestAnimationFrame

我需要移除一个画布并创建一个新的。我遇到了一个问题,就是不知道如何停止/中断Three.js或webGL的更新过程。如果我强制产生JavaScript错误,那么可以停止它(但这真的很愚蠢)。有人知道如何停止这个进程,以免积累一些没有用处或与新进程冲突的进程吗?

27得票1回答
使用Three.js绘制图形的最佳方法

我想使用Three.js来绘制图形,并想知道最好的方法是什么。 这里的框架https://github.com/davidpiegza/Graph-Visualization使用球体作为节点和线条作为边来解决这个问题。 我需要在边上添加标签或者可以选择边。 还有其他绘制图形的方法吗?有没...