问题标签 [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.
three.js - ThreeJS:将 BufferGeometry 与 Line 一起使用
出于性能原因,我想迁移到BufferGeometry
而不是Geometry
. 它适用于Mesh
和ParticleSystem
对象,但是当将 a 的几何设置Line
为 a 时BufferGeometry
,initLineBuffer()
需要geometry.vertices
一个 BufferGeometry 没有的 Vector3 数组。
调用栈:render --> initWebGLObjects --> addObject --> initLineBuffers
有没有一个简单的解决方案,或者我需要破解?;)
javascript - BufferGeometry 面向材质
使用 BufferGeometry 时,如何将材质分配给面?
是否有类似数组的东西包含相同的信息Face#materialIndex
?
three.js - threejs 缓冲几何和线框
是否可以进行线框图绘制THREE.BufferGeometry
?我认为threejs不支持这一点,您可以在threejs源中将_gl.TRIANGLES更改为_gl.LINES(或LINES_STRIP),结果会很奇怪。
http://oi40.tinypic.com/15tsux.jpg (缓冲几何在底部)
github上还有一个老问题没有提供解决方案 https://github.com/mrdoob/three.js/issues/1275
需要做什么才能启用对线框的支持THREE.BufferGeometry
?我想尝试实施它,但我不确定需要做什么。
three.js - Three.js - 大型网格的 BinaryLoader 与 BufferGeometry?
我正在寻找一种将大型多边形网格(最多 1M 个三角形)加载到 Three.js 的最有效方法。我正在考虑使用THREE.BufferGeometry
对象或加载THREE.BinaryLoader
. 我的问题是:
- BinaryLoader.js在下面创建一个
THREE.BufferGeometry
对象吗?或者它是否创造了同样有效的东西? - 如果没有,有没有人推荐使用哪一个?
一些附加信息:
- 我的模型在服务器上是专有格式,所以无论如何我都需要对它们进行转换/编码。
- 我还没有找到一个可以创建
THREE.BufferGeometry
. 看来我需要自己写。但我可以准备服务器端的数据以与THREE.BufferGeometry
结构对齐。 - BinaryLoader.js为加载数据提供了所有必要的基础设施,但需要在服务器端以特殊方式准备数据。
javascript - 如何使用 BufferGeometry 绘制简单的正方形?
如何使用 绘制简单的正方形BufferGeometry
?例如BufferGeometry
绘制 120000 个三角形,我想将其分解为两个,形成一个简单的正方形。
javascript - Face4 与 BufferGeometry
是否可以将正方形而不是三角形送入 BufferGeometry ?
如果是这样,如何?我查看了源代码,但似乎没有任何具体内容。当我尝试简单地更改属性中的 numItems 值时,我得到以下显示:
javascript - 将几何转换为 BufferGeometry
据我了解,Geometry 存储顶点和面的 javascript 对象结构,而 BufferGeometry 仅通过 Float32Arrays 等存储原始 gl 数据。
有什么方法可以将标准几何转换为 BufferGeometry,它的内存更紧凑,对象更少?例如,如果我创建一个新的 SphereGeometry,有没有办法轻松地将其转换为 BufferGeometry?
javascript - Three.js:Raycast 与 BufferGeometry 的交点
由于 R59 可以在线进行光线投射,而且效果很好。我在鼠标悬停时显示工具提示。
由于数据不断增长,我遇到了性能问题,所以我决定THREE.Geometry
从THREE.BufferGeometry
. 一切正常,而不是光线投射......我在鼠标悬停时没有收到任何错误或其他东西,真的什么都没有发生!
是否可以在与 建立的线上相交光线投射THREE.BufferGeometry
?
javascript - 基于 BufferGeometry 的 Three.js 网格未出现
我正在使用 Three.js 开发 WebGL 游戏,我决定THREE.BufferGeometry
从我的(工作)常规THREE.Geometry
解决方案切换到实现。我搞砸了,因为网格没有绘制。我在下面给出了我的代码的相关部分。如果我切换到常规几何,一切正常。
这是一个基于体素的游戏,我已经将每个立方体的每个面预先创建为常规的THREE.Geometry
. 该positionVertices
函数从每个面几何体中获取顶点和面,定位它们以使它们对应于体素,并为THREE.BufferGeometry
. 没有错误或警告,最终的网格不会出现。我怀疑我的问题与 Three.js 的关系不大,更多的是因为我对 3D 图形编程的理解有限。我现在最好的猜测是它与索引不正确有关。如果我删除索引,对象就会出现,但一半的三角形的法线方向相反。
javascript - BufferGeometry 上的 ShaderMaterial
我如何ShaderMaterial
申请BufferGeometry
?所有threejs示例以及我可以找到的所有BufferGeometry
使用默认材料(MeshPhongMaterial
例如)。
我有一个工作着色器Geometry
,但是当我将它转换为BufferGeometry
着色器时不再工作。(例如,我可能弄乱了着色器属性计数,没有任何解释BufferGeometry
无济于事)。
ShaderMaterial
请您指出任何工作示例或告诉我使用onGeometry
和 on有什么区别BufferGeometry
?