cesium v1.0.1 Build, debug, and optimize CesiumJS 3D globe apps, including viewer setup, terrain/imagery, 3D Tiles, GeoJSON/CZML loading, camera control, picking, entity s...
openclaw skills install cesiumCesium
Implement CesiumJS solutions with minimal assumptions and production-safe defaults.
Workflow
Confirm runtime assumptions first: framework (vanilla/Vite/React), CesiumJS version, and whether Cesium Ion is available.
Start with the smallest runnable viewer setup before adding terrain, 3D Tiles, or heavy data layers.
Keep token handling out of source code; use environment variables and project config wiring.
Add data layers incrementally and verify camera framing after each step.
For rendering/perf issues, reduce scene complexity first, then tune request/render settings.
Implementation guardrails
Prefer explicit imports from cesium and avoid hidden globals.
Use requestRenderMode for mostly static scenes to reduce GPU/CPU usage.
Dispose resources in teardown paths (viewer.destroy()) in SPA route changes/unmounts.
For large datasets, prefer 3D Tiles over huge entity collections when possible.
Keep picking logic resilient: handle undefined picks and mixed primitive/entity results.
Debugging checklist
Blank globe: verify CSS container height/width and render loop not blocked.
Missing terrain/tiles: verify network access, token, and dataset permissions.
Misplaced data: verify CRS and coordinate order (lon, lat, height).
Memory/GPU pressure: profile number of entities/primitives and texture-heavy layers.
Reference docs in this skill
Read {baseDir}/references/patterns.md when generating or fixing Cesium code.
Version tags latestvk9722c6ry9tzt3e0wc8mc4whms82wh1f
Runtime requirements 🌍 Clawdis