[FEATURE] Interactive viewer plugins
Description
nice-to-have feature, allows users to integrate interactive viewer plugins.
Related Issue
N/A
Motivation and Context
Enables directly interfacing with pyviewer mouse/keyboard controls
How Has This Been / Can This Be Tested?
todo
Screenshots (if appropriate):
https://github.com/user-attachments/assets/11049dac-deb3-47c2-9198-f45a59636359
Checklist:
- [x] I read the CONTRIBUTING document.
- [x] I followed the
Submitting Code Changessection of CONTRIBUTING document. - [x] I tagged the title correctly (including BUG FIX/FEATURE/MISC/BREAKING)
- [ ] I updated the documentation accordingly or no change is needed.
- [ ] I tested my changes and added instructions on how to test it for reviewers.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.
This feature looks very convenient!
- Should we keep under
genesis/ext/pyrender/interaction/plugins/orgenesis/vis/plugins? - Do we want to use Vec3, Quat, Color, Ray, etc. classes in the codebase?
- now that pyrender viewer mouse/keyboard interaction is exposed, we can get rid of
pynputin examples
Should we keep under genesis/ext/pyrender/interaction/plugins/ or genesis/vis/plugins ?
Do you consider this as a "universal" plugin or something pyrender-specific? This would give you the answer :)
Do we want to use Vec3, Quat, Color, Ray, etc. classes in the codebase?
I'm not a fan of these objects. Overly complicated and not very pythonic in my view.
now that pyrender viewer mouse/keyboard interaction is exposed, we can get rid of pynput in examples
That would be great! But we need a way to expose this in a clean way.