2025-12-29 15:06:29 +08:00
2025-12-29 15:06:29 +08:00
2025-12-29 14:58:39 +08:00
2025-12-29 16:05:17 +08:00
2025-12-29 15:06:29 +08:00
2025-12-29 01:06:50 +08:00

ComfyUI PlyPreview

中文 | English

Gaussian Splat PLY loader + preview nodes for ComfyUI. Forked from GeometryPack and repackaged to avoid upstream overwrites. Includes front-end viewer (gsplat.js) bundled locally.

Nodes

  • Load Gaussian PLY — dropdown from input/, input/3d, output/ with auto-resolution, FOV 10–180°, optional opacity filter.
  • Load Gaussian PLY (Path) — manual path entry with the same camera/auto-res options.
  • Process Gaussian PLY — accept upstream ply_path (e.g., SHARP Predict) with camera override/opacity filter.
  • Preview Gaussian — gsplat.js WebGL viewer with scale slider, reset, screenshot, info panel.

Features

  • Auto resolution from FOV + target scale (rounded to 16px, calibration factor 0.8).
  • Opacity filtering (sigmoid) with threshold.
  • Camera intrinsics/extrinsics outputs for consistent preview.
  • Wide FOV (10–180°) including fisheye cases.
  • Fully self-contained: viewer HTML/JS bundled under web/.

Install (Git clone)

cd ComfyUI/custom_nodes
git clone https://github.com/XuanYu-github/comfyui-PlyPreview.git

Restart ComfyUI.

Install (ComfyUI Manager)

Search for “comfyui-PlyPreview” in Manager and install. (This repo ships comfyui_extension.json so Manager can detect it.)

Usage

  1. Use one of the Load nodes or Process node to produce ply_path, extrinsics, intrinsics.
  2. Connect to Preview Gaussian. After execution the viewer iframe shows controls (Scale, Reset View, Screenshot) and info panel.
  3. If opacity filtering is enabled, a filtered PLY is written alongside the source (suffix _opacity{threshold}.ply).

Requirements

  • ComfyUI recent build with DOM widgets enabled (standard).
  • Python deps: plyfile, numpy (install via your ComfyUI environment). Most ComfyUI setups already have numpy; install plyfile if missing: pip install plyfile.

Notes

  • WEB_DIRECTORY is set to web so ComfyUI loads the bundled frontend automatically.
  • Namespaces are prefixed PlyPreview* to avoid collision with GeometryPack.
  • Original GeometryPack license is GPL-3.0; this fork keeps the same license.

License

GPL-3.0-or-later. See LICENSE.

S
Description
No description provided
Readme
1.6 MiB
Languages
JavaScript 75.1%
Python 12.5%
HTML 12.4%