CesiumGS / CesiumGS/cesium

Preserve geometry when transforming CZML entities

Open
#7,397 2 comments 0 reactions 0 assignees View on GitHub
category - czml type - enhancement
Dominant language
JavaScript
Stars
15.7k
Forks
3.9k
Avg merge
4d 6h
Merged PRs (30d)
34

Description

CZML entities like boxes can be optimized so that they don't recreate their geometry during translation/rotation/scale animations. This would help speed up czmls containing a large number these entities.

[Example CZML](https://cesiumjs.org/Cesium/Build/Apps/Sandcastle/#c=tVVdT9swFP0rUV/opOLaiVM7UNBQQRpaWRntJg2CkJsY8HDiynHKx8R/n5OmJWm7TTwsD3bic++51+f6OnOmneglkc6BcxWmjvOrGBwnbIk4bO3ZOVZRnvDUhK3OEppznQmVLnAEYA2KpIoeCqDiKZlSw/WcyYW9CxHdhWQXBRPk7yG6B+Fld2PRg5cr1pI319omMREJ/zNNwyPJpREzKbguHPwaoll6V7EMR6Pzm/FkdN5wzQyfLfDxj/Hk5OxmMBwNPt+cfRtOTs+HpycXYWth/FpMr52tuk00ix54PJr+5FFdvKl6CltOTaBiMbb7SgtNs3Ws2j7ThmeClZpfYVg8AHYcb/XmV2/Xb66vnXqIWyFlSX7LZMYbkMqNFCkvUaPzreBASaW3J6fvpqxErlzf7zjlAMu5nkyl2EqHmcqEqU7R+mGZKckK7EjeKS3MfVJV6/TLydFFo1S3Sj8yHZ88Gc2WXpPnWVXeT6PhcfMYNXSsb/Mf58lxXBf1PEyBHV2vhyHxauAuJl6JBj4lxMcE1UAMKXIpBr7v0oC6MPA7f43srUVGReReAJDrBhhjFJCNyIQA3CMIEoTpemQMAaUUU59AsoSu16thZbbtxbYUJE+F+ZozW5W0At+nGwQepBgi5Hkk8GgQBE3QRZYBQdclELm9Xn1rEGCf+hC7KKA2eRy4uOFLerTn2b35hCLP2rxP1v+WGNpIbF328toI0+v9MA3Tub2B54I/cm3v4JQ/OgN7QvMEfC/X2jtR+TlQtjy2D/VOZ1md7F7lMj5KRWKrU7VumL5+2F9wxsywscp1xM+1SkTGLX1FPbAX/vEKBlKxuF38BErXMix4884Ai+P2BlvN9kWpZKK2mbQ6rX5mniU/XKT8USQzpY2Ta9kGoGt4MrM9y7PuNLeXpQFRlhW8/e7SqR+LuSPiA9u6TRnshRNJlmUWuc2lHIsX2/OH/a61b7gVexPp3cj+syR7Lkzu0eFwsQgA6Hft56aXUUpOma4x/gY) - you can check in the debugger that a new `BoxOutlineGeometry` is created per frame.

Contributor guide

Open the contributing guide

Research direction

Open the linked Example CZML and use the debugger to trace why a new BoxOutlineGeometry is created for each frame during translation, rotation, or scale animations. Done means geometry is preserved and reused across frames for optimizable entities, with the example no longer recreating that geometry each frame.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
computer-graphics, performance
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.