问题标签 [buffer-geometry]

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

javascript - BufferGeometry 不可见

我使用 BufferGeometry 已经有一段时间了,我认为我对它非常熟悉。现在,我正在尝试创建一个简单的方形平面,但它什么也没做——据我所知,没有可见的平面,没有错误,也没有明显的问题。我在这里看到过其他类似的帖子,但没有一个解决方案成功。

当我检查场景时,网格就在那里,它有合适的材质,而且它的几何形状似乎设置正确。但我得到的只是一个黑色的视口。我必须错过一个痛苦的明显/简单的步骤,但现在它正在逃避我。我究竟做错了什么?

小提琴+代码:http: //jsfiddle.net/TheJim01/kafybhge/34/

只是为了表明我对 BufferGeometry 并不陌生,这是我以前做过的事情,如果我将它插入到我的代码中代替createBufferGeometryMesh()上面的内容,它就会起作用。我已经尝试定义像下面这样的缓冲区(甚至明确地),但它没有改变任何东西。

0 投票
1 回答
1405 浏览

three.js - 缓冲几何中的补间粒子

这个问题搭载了以下问题:

Three.js - 缓冲几何粒子,需要对系统中的随机粒子组进行动画处理

如何快速更新大的BufferGeometry?

我正在开始一个新项目,该项目将随时在场景中包含数万个粒子。这个概念是,将有看起来像星系的粒子簇散布在整个场景中。有时我需要为星系及其数千个粒子设置动画。我可以在几何图形仍在缓冲区内时执行此操作吗?

我正在使用PointCloud构造的 using THREE.BufferGeometry,每个顶点的位置都使用Float32Array( numParticles * 3 ).

过去,我一直使用tween.js为场景中移动的对象设置动画。是否可以提取补间所需的点,转换为vector3,重新定位它们,并在每个更新循环上渲染?

0 投票
1 回答
1119 浏览

javascript - Three.js Buffergeometry 变形

是否可以在 three.js 中变形两个缓冲区几何?有没有好的例子可以参考?我对使用变形目标影响手动变形特别感兴趣。

0 投票
2 回答
3441 浏览

javascript - Threejs BufferGeometry - 用其他纹理渲染一些面

我有这样的输出日期:

数据用于索引、顶点和法线缓冲区,但部分必须使用其他纹理和 Maretials 渲染。

我试图从索引、顶点和 texCoords/UVCoords 中创建一个 THREE.Geometry ,但这没有用。

现在我正在尝试使用 THREE.BufferGeometry() 和这项工作,但我需要使用纹理“纹理 [0]”渲染索引 0 到 287,使用“纹理 [1]”渲染索引 288 到 605,依此类推。

我的第一次尝试是为索引为 288 到 605 的每个部分制作一个 BufferGeometry ,但由于索引是为了孔模型,我必须将完整的顶点、法线和 UVCoords 放在缓冲区中,只为几个面。

有没有办法用其他纹理渲染 BufferGeometry 的部分或为每个面设置纹理索引?

或者是否可以创建一个材质,用纹理 A 渲染第一个 X 面,然后用纹理 B 渲染下一个?

0 投票
0 回答
361 浏览

javascript - ThreeJS BufferGeometry 翻转

我想在特定轴(X、Y 或 XY)上翻转网格对象,并且我已将与此处引用的矩阵相同的矩阵应用于网格对象,并且当我使用THREE.ExtrudeGeometry实例时它确实在工作。

但是我正在渲染数千个对象,因此性能是主要关注点,因此我必须使用它THREE.BufferGeometry来获得良好的性能,但是我在矩阵中的更改以获取翻转对象会导致问题。之后,对象不再可见。 在这种情况下

,我有什么需要注意的吗?THREE.BufferGeometry

0 投票
1 回答
2051 浏览

javascript - 针对 BufferGeometry Linethreejs 的光线投射

我正在尝试对使用BufferGeometry. 但它似乎不支持光线投射?

BufferGeometry如此处所示启动时,光线投射不适用于此对象

但是当我BufferGeometry用光线投射替换时Geometry效果很好。

我也试过换BufferGeometryObject3D,不影响结果。如何对BufferGeometry线进行光线投射?

编辑

摆弄 BufferGeometry

摆弄几何

0 投票
1 回答
3857 浏览

javascript - 应用翻译时,ThreeJS bufferGeometry 位置属性未更新

我使用 STLLoader 将 stl 加载到返回 BufferGeometry 的 threeJS 场景中。

然后我用

转换几何。这有效地改变了

翻译正在现场进行,一切正常。我预计

翻译前后会有所不同 - 但它保持相同。我想在翻译后从缓冲几何中提取新的顶点。我试着打电话

在渲染循环中但没有运气,因为我没有明确更新顶点。

0 投票
1 回答
615 浏览

javascript - BufferGeometry 和 LineBasicMaterial:线段厚度

所以我使用 a并且我能够通过属性THREE.BufferGeometry很好地控制 Line 的各个部分的颜色。color

有什么方法可以添加自定义属性并将其绑定,LineBasicMaterial.linewidth以便更改线条的各个部分的粗细?

0 投票
1 回答
1639 浏览

javascript - 三.js在.fromGeometry()之后找到buffergeometry的顶点;

使用代码后如何找到网格的顶点位置.fromGeometry();?我从用于网格的几何体创建了缓冲几何体。这是一个例子。

geometryvertices.vertices = buffgeom.vertices;代码不适用于buffgeom. 如何找到 的顶点位置buffgeom?有人可以帮忙吗?

之后,我想将几​​何的顶点推入THREE.Vector3. 这就是它与几何图形一起工作的方式。

它不适用于缓冲几何。

0 投票
1 回答
1813 浏览

javascript - three.js 点云、BufferGeometry 和不正确的透明度

问题:我有一个包含大量数据点(大约一百万)的点云。当我将透明度应用于渲染点时,透明度不会显示渲染点后面的内容

不正确的渲染

正如您在标记点的示例中看到的那样,它没有显示它应该显示的内容,就好像缓冲存在问题一样。

我使用 three.js 使用以下“设置”创建点云:

渲染器:

材料:

顶点着色器:

片段着色器:

几何(我省略了填充数组的部分):

我用内置的点材料尝试了这个,同样的情况发生了

这是预期的行为还是我做错了什么?