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

Endless ui refresh #5018

Closed
emilk opened this issue Feb 2, 2024 · 5 comments · Fixed by #5040 or #5071
Closed

Endless ui refresh #5018

emilk opened this issue Feb 2, 2024 · 5 comments · Fixed by #5040 or #5071
Assignees
Labels
🪳 bug Something isn't working egui Requires egui/eframe work
Milestone

Comments

@emilk
Copy link
Member

emilk commented Feb 2, 2024

Reported by @abey79

Something is calling request_repaint way too often.

Needs a repro.

@emilk emilk added 🪳 bug Something isn't working 👀 needs triage This issue needs to be triaged by the Rerun team labels Feb 2, 2024
@emilk emilk added this to the 0.13 milestone Feb 2, 2024
@emilk emilk self-assigned this Feb 2, 2024
@emilk emilk added egui Requires egui/eframe work and removed 👀 needs triage This issue needs to be triaged by the Rerun team labels Feb 5, 2024
@abey79
Copy link
Member

abey79 commented Feb 5, 2024

repro on main:

  • just py-build
  • python examples/python/face_tracking/main.py
  • let the script run for a few seconds then kill it
  • reset viewport

=> no endless UI refresh

mess just a little bit with the space view:

  • move the 3D space view tile around (tab / un-tab it)
  • zoom/scroll the 3D space view a little bit

After a few of those ops, the infinite UI refresh triggers.

@abey79
Copy link
Member

abey79 commented Feb 5, 2024

Edit: maybe not...

Still using the face tracking example, when setting the blueprint as follows and restarting, I can trigger the infinite refresh by just rotating/zooming the 3d view—no tile dragging needed.

image

@emilk emilk mentioned this issue Feb 5, 2024
4 tasks
emilk added a commit that referenced this issue Feb 5, 2024
teh-cmc pushed a commit that referenced this issue Feb 6, 2024
teh-cmc added a commit that referenced this issue Feb 6, 2024
### What
* Closes #5018

egui now also has a 300ms delay between stopping the mouse pointer over
something and showing the tooltip, as discussed during standup.

This expands the egui "style" panel to a debug panel with the egui
"inspection" ui in it.


![image](https://github.com/rerun-io/rerun/assets/1148717/1db3ed6d-d43c-4378-89a1-94f9b3ed7266)

---------

Co-authored-by: Clement Rey <cr.rey.clement@gmail.com>
@jleibs jleibs reopened this Feb 6, 2024
@jleibs
Copy link
Member

jleibs commented Feb 6, 2024

This issue is still affecting head of main. It doesn't impact all scenes, but for example in arkit_scnes the scene constant repaints.

@emilk
Copy link
Member Author

emilk commented Feb 6, 2024

@jleibs you just need to uncheck this checkbox:

image

It is off by default, but you ran an earlier version on main where it was on by default, and that is now saved. Or just reset your Rerun.

In other words: this won't be a problem for our users.

@emilk emilk closed this as completed Feb 6, 2024
@emilk
Copy link
Member Author

emilk commented Feb 6, 2024

nope, wrong again

@emilk emilk reopened this Feb 6, 2024
emilk added a commit that referenced this issue Feb 6, 2024
### What
* Closes #5018

When first loading a scene, before the user interacts, we want to center
the eye-camera on the scene, so each frame we call "interpolate to the
default eye". This should be fine, because we have an early-out if we're
already at target. However, the interpolation code had a rounding error
meaning we reached _very close_ to our goal, but not quite there. In
particular, in `arkit_scenes` it would lead to a forever repaint, since
the eye-camera would never reach its target, and so thus would require
more animation.

This manifested in `arkit_scenes` now due to another bug
(#5070) causing enormous point
clouds, making the rounding errors larger than usual.

### Checklist
* [x] I have read and agree to [Contributor
Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and
the [Code of
Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md)
* [x] I've included a screenshot or gif (if applicable)
* [x] I have tested the web demo (if applicable):
* Using newly built examples:
[app.rerun.io](https://app.rerun.io/pr/5071/index.html)
* Using examples from latest `main` build:
[app.rerun.io](https://app.rerun.io/pr/5071/index.html?manifest_url=https://app.rerun.io/version/main/examples_manifest.json)
* Using full set of examples from `nightly` build:
[app.rerun.io](https://app.rerun.io/pr/5071/index.html?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json)
* [x] The PR title and labels are set such as to maximize their
usefulness for the next release's CHANGELOG
* [x] If applicable, add a new check to the [release
checklist](tests/python/release_checklist)!

- [PR Build Summary](https://build.rerun.io/pr/5071)
- [Docs
preview](https://rerun.io/preview/d20d34685e6aaba1daf5c6417e1bb39d22448d40/docs)
<!--DOCS-PREVIEW-->
- [Examples
preview](https://rerun.io/preview/d20d34685e6aaba1daf5c6417e1bb39d22448d40/examples)
<!--EXAMPLES-PREVIEW-->
- [Recent benchmark results](https://build.rerun.io/graphs/crates.html)
- [Wasm size tracking](https://build.rerun.io/graphs/sizes.html)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🪳 bug Something isn't working egui Requires egui/eframe work
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants