Skip to content

Releases: gkjohnson/three-mesh-bvh

v0.9.14

Choose a tag to compare

@gkjohnson gkjohnson released this 01 Aug 04:32

Fixed

  • BVHComputeData: handle BatchedMesh indirect "range" BVHs correctly.
  • WGSL, GLSL: Output the barycoordinate values in the correct order when sampling closest point.

v0.9.13

Choose a tag to compare

@gkjohnson gkjohnson released this 18 Jul 23:15

Added

  • NodeProxy: Add support for context-value proxies.

v0.9.12

Choose a tag to compare

@gkjohnson gkjohnson released this 18 Jul 14:17

Fixed

  • BVHComputeData: Fix "dispose" deleting storage nodes unnecessarily.
  • BVHComputeData: Throw error if the traversal could overrun the stack.

Added

  • WGSLTag functions: Add support for inline-functions that evaluate on build.

v0.9.11

Choose a tag to compare

@gkjohnson gkjohnson released this 10 Jul 02:14

Added

  • WebGPURenderer : Added BVHComputeData class for packing multi-object BVH scene data into GPU storage buffers for use in WebGPU compute shaders via the TSL node system.

Changed

  • WebGPURenderer: Deprecated the wgslFn/wgsl-based TSL node exports. These do not work correctly on most platforms due to WGSL restrictions on passing storage buffer pointers across function call boundaries. Use BVHComputeData instead.
  • BVH: Rename "maxLeafSize" to "targetLeafSize" to better reflect the option behavior.

Fixed

  • Case where ObjectBVH would return an incorrect raycast hit with firstHitOnly.
  • LineBVH, PointsBVH, SkinnedMeshBVH: Improved bounds traversal logic for firstHitOnly case.

v0.9.10

Choose a tag to compare

@gkjohnson gkjohnson released this 13 May 04:01

Fixed

  • MeshBVH: closestPointToGeometry will no longer log warnings for coplanar triangles.
  • Updated types.
  • Fix internal imports causing types to break in some cases.

v0.9.9

Choose a tag to compare

@gkjohnson gkjohnson released this 03 Mar 13:07

Added

  • Add tests for ObjectBVH, SkinnedMeshBVH
  • ObjectBVH: Add "getObjectFromId", "getInstanceFromId" functions
  • Moved "ObjectBVH" and "SkinnedMeshBVH" to core. These classes are still in development and APIs may change.

Changed

  • BVHHelper: Handled case where the a root object does not have geometry.

Fixed

  • ParallelMeshBVHWorker: Fix failure when reporting progress.
  • ObjectBVH, SkinnedMeshBVH: Fix raycasting bugs for both classes
  • ObjectBVH: Fix case where the first BatchedMesh instance would be skipped

v0.9.8

Choose a tag to compare

@gkjohnson gkjohnson released this 28 Jan 14:05

Changed

  • Added deprecation warning when using "intersectsTriangle" without casting boundsTree.

Fixed

  • "onProgress" function not broadcasting percentages correctly.

Added

  • "ObjectBVH" to examples.

v0.9.7

Choose a tag to compare

@gkjohnson gkjohnson released this 17 Jan 10:42

Added

  • BVH: Added support for "bvhcast" callback

Fixed

  • BVHHelper: Rename "objectIndex" to "instanceId"
  • BVHHelper: Enable "instanceId" to be set to - 1 to ignore the instance transform.

Changed

  • MeshBVH: deprecated "maxLeafTris" option in favor of "maxLeafSize".
  • MeshBVHHelper: deprecated class in favor of "BVHHelper".
  • BVH: Changed internal shapecast callbacks

v0.9.6

Choose a tag to compare

@gkjohnson gkjohnson released this 15 Jan 01:46

Fixed

  • BVHHelper: Fix "clone" function not cloning all fields.
  • acceleratedRaycast: Fix case where raycasting will fail if "type" is modified.
  • Update types.
  • WGSL: Fix use of keyword as a variable.

Added

  • PointsBVH, LineBVH, LineLoopBVH, LineSegmentsBVH: Added support for "refit" function.
  • SkinnedMeshBVH for skinned meshes or morph target meshes to the examples directory.

v0.9.5

Choose a tag to compare

@gkjohnson gkjohnson released this 08 Jan 09:17

Added

  • Support for PointsBVH, LineBVH, LineSegmentsBVH, LineLoopBVH.

Fixed

  • Removed unnecessary PURE annotation.
  • Fixed typing