Skip to content

Collision mesh quality is very poor for indoor room scans — voxel-external-fill appears to leak or produce incomplete geometry #240

@bentleyer

Description

@bentleyer

Summary

The collision mesh generated by --voxel-external-fill + --voxel-carve + -K for an indoor room scan is extremely poor quality — large chunks of geometry are missing, walls are incomplete, and the overall shape does not resemble the scanned room. The guide (COLLISION.md) suggests this pipeline should work well for interior scenes, but the result is unusable for runtime collision.

Version & environment

  • @playcanvas/splat-transform (main branch, cloned locally)
  • Windows 11
  • Node.js 20 (--max-old-space-size=16384)
  • CPU mode

Input

An indoor room scan captured via 3D Gaussian Splatting, saved as .splat format. The scene is a multi-room interior space with standard walls, floors, and ceilings.

Reproduction

node --max-old-space-size=16384 bin/cli.mjs -w \
  "input_indoor.splat" \
  --filter-cluster --seed-pos -37,29,21 \
  --voxel-external-fill --voxel-carve \
  -K \
  "output.voxel.json"

<img width="1651" height="1022" alt="Image" src="https://github.com/user-attachments/assets/68c1c3ee-dcb4-4854-a189-6fcafb0cda47" />

<img width="1643" height="960" alt="Image" src="https://github.com/user-attachments/assets/343fb0b1-7c8e-4897-88b0-1e98e3917e5b" />

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions