Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Performance improvements for manual updates #12

Closed
diarmidmackenzie opened this issue Nov 30, 2022 · 1 comment
Closed

Performance improvements for manual updates #12

diarmidmackenzie opened this issue Nov 30, 2022 · 1 comment

Comments

@diarmidmackenzie
Copy link
Owner

Been working on auto-update mode & performance.

Remaining perf issue with manual updates - each manual update currently runs updateMatrixWorld() on the parent, and computes the inverse of the parent matrixWorld.

It would improve performance if we could calculate these once for multiple updates. One approach would be to batch mesh member position updates together, and do them in bulk on the tick, as we do with auto updates.

We already have a queuing mechanism for these updates, so not too much work.

Didn't do this as part of the auto-updates / perf work on the basis that we now have auto updates, and can always switch to that update mode if there's so many mesh member transform updates as to cause a performance issue in manual mode.

In other words:

  • if a use case has few updates, manual update perf shouldn't be a big deal
  • and if it has lots, then auto updates is probably a better solution anyway...

Not clear at this point that there's any use cases in between that would provide motivation for this fix.

@diarmidmackenzie
Copy link
Owner Author

Fixed by #25

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

No branches or pull requests

1 participant