-
Notifications
You must be signed in to change notification settings - Fork 5
Description
Current Limitation
The existing Cesium tutorials use PointPrimitiveCollection which is CPU-based and limited to ~200K-500K points before performance degrades significantly. For the full iSamples dataset (6M+ points), this approach doesn't scale.
Proposed Solution: Cesium Point Clouds via 3D Tiles
Cesium supports GPU-accelerated point cloud rendering through 3D Tiles that could handle millions of points with:
- GPU acceleration - significantly better performance
- Level-of-detail - automatic optimization based on zoom level
- Streaming - progressive data loading
- Native Cesium integration - no external dependencies
Key Question: Direct Parquet Loading?
deck.gl can load points directly from data sources (including Parquet via DuckDB-WASM) without preprocessing - you just pass an array of points and it handles GPU batching internally.
Can Cesium Point Clouds work similarly? Or do they require preprocessing Parquet data into 3D Tiles format first?
Implementation Scenarios
Scenario A: Direct Loading (Preferred)
Hypothetical - load points directly from Parquet query results without preprocessing
Scenario B: Preprocessing Required
Current requirement - need to create 3D Tiles first
Research Needed
- Investigate if Cesium supports direct point loading without 3D Tiles preprocessing
- Compare with deck.gl approach - can we achieve similar workflow simplicity?
- Evaluate preprocessing complexity if tiles are required
- Performance testing with 1M+ points from iSamples dataset
Impact
If direct loading is possible, this could enable:
- Full 6M+ point iSamples visualizations in Cesium
- Better performance than current PointPrimitiveCollection
- Maintain tutorial simplicity (no preprocessing pipeline)
- GPU acceleration benefits
Priority
Medium - current approach works for demonstration purposes, but this could significantly enhance the tutorial capabilities for real-world dataset sizes.