Winter Bug Bash Trip Report


Here’s to another successful Cesium Bug Bash! Wednesday through Friday of last week, the team visited Bentley Systems headquarters to squash some bugs. For background, Cesium Bug Bashes are short events in which our team focuses on small, but impactful fixes through the codebase.

Dan and Ed make a bug fix "even more fixed"

These Bug Bashes illustrate a Cesium core-principle: our dedication to active community support. In just my first few weeks, I’ve noticed that our developers always make time to watch the forum and push out bug fixes, even while under deadline or developing important new features. Our Bug Bashes are just another way we take time to focus on the community.

These events also facilitate team bonding, since bug fixes often require collaboration. They’re also a great opportunity for new team members like me to get a boost in the onramping process from more experienced teammates. In fact, with Ed’s guidance, upcoming AGI summer intern Joe Klinger made his very first Cesium contribution during the bash (#4977). Welcome, Joe!

Between pull requests on this trip, we snuck in a lot of fun – plenty of silly discussions and an excellent team lunch at local sushi restaurant Murasaki.

Gary demonstrates "optimal debugging posture"

Overall, I’m pleased to say despite a blizzard warning, the team managed quite a few much-requested fixes, resulting in 19 pull requests merged!

Some highlights:

Thanks to Ed, the camera will no longer teleport through the Earth while zooming in on a small entity target (#4967), (#4982).

Dan worked on several updates to position picking. He added new support for picking in Columbus View and 2D (#4990), and for picking translucent geometry (4979). He also took care of a crash that occurred when viewing polylines in rotatable 2D mode, caused by floating point error (#4992).

Sean made several improvements to our WebGL instancing support, including a fix to picking for ModelInstanceCollection, and added support for picking instanced glTF models (#4975). Both ModelInstanceCollection and i3dm are now also supported in 2D (#4996).

Instanced model support in 2D

Austin has been continuing his work on optimizing culling in 3D Tiles renders, with significant performance increases already (#4978). As seen with the Rio tileset views below, his optimizations noticeably reduce the number of tiles rendered.

Original Optimized
Example Example

Gary also added a demo for ground clamping, which Cesium Man is very appreciative of (#4984).

Ground Clamping

Finally, kudos to Shehzan for his meticulous work in improving test robustness (#4966, #4972, #4980, #4986). These changes will help our team even faster in the future!

Overall, the bug bash was a good mix of work and fun, and the results will be available in our next release on March 1, Cesium 1.31. Stay tuned for more Cesium breakthroughs and hijinks!

Austin in his natural state (optimizing)

Get started with a Cesium ion account

Sign up for free