Skip to content

Conversation

@eonarheim
Copy link
Member

@eonarheim eonarheim commented Oct 23, 2025

===:clipboard: PR Checklist :clipboard:===

  • 📌 issue exists in github for these changes
  • 🔬 existing tests still pass
  • 🙈 code conforms to the style guide
  • 📐 new tests written and passing / old tests updated with new scenario(s)
  • 📄 changelog entry added (or not needed)

==================

Dramatically improves the performance of the offscreen culling system

  • Offscreen Tag Optimization
  • Add SparseHashGrid structure for Graphics
  • Change SparseHashGrid to return sets
  • Inline BoundingBox.hasZeroDimensions()
  • Inline SparseHashGridProxy.hasChanged()
  • Add BoundingBox.transform|translate in place signature
  • Use number sets for faster lookups
  • Flatten OffscreenSystem loop
  • Fix missing guard on Entity._initialize to keep it from rechecking
  • Fix issue where collectActorStats was eating too many cycles
  • Switch to c-style loops where applicable

TODOs:

  • Re-enable parallax
  • Centralize gfx spatial data structure

* Offscreen Tag Optimization
* Add SparseHashGrid structure for Graphics
* Change SparseHashGrid to return sets
* Inline BoundingBox.hasZeroDimensions()
* Inline SparseHashGridProxy.hasChanged()
* Add BoundingBox.transform|translate in place signature
* Use number sets for faster lookups
* Flatten OffscreenSystem loop
* Fix missing guard on Entity._initialize to keep it from rechecking
* Fix issue where collectActorStats was eating too many cycles
* Switch to c-style loops where applicable
@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Oct 23, 2025

Deploying excaliburjs with  Cloudflare Pages  Cloudflare Pages

Latest commit: d5c18d4
Status: ✅  Deploy successful!
Preview URL: https://bda48815.excaliburjs.pages.dev
Branch Preview URL: https://perf-improve-offscreen.excaliburjs.pages.dev

View logs

@github-actions
Copy link

This PR hasn't had any recent activity lately and is being marked as stale automatically.

@github-actions github-actions bot added the stale This issue or PR has not had any activity recently label Dec 23, 2025
@github-actions github-actions bot removed the stale This issue or PR has not had any activity recently label Dec 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants