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

Support for headless HITL apps, first pass #1768

Merged
merged 6 commits into from
Jan 23, 2024

Conversation

eundersander
Copy link
Contributor

@eundersander eundersander commented Jan 18, 2024

Motivation and Context

"Headless" means no attached local display. A headless mode is useful for (1) unit-testing on headless CI machines, and (2) the client/server model, with Pick_throw_vr running as a server (remote_gui_mode) on e.g. a headless cloud machine.

With this PR, the Unity client can connect to the headless server and e.g. view the animated scene. However, as a first pass, this doesn't actually 100% work with clients yet because of the way I've completely stubbed out GuiInput (which RemoteGuiInput needs).

How Has This Been Tested

Locally tested on Macbook. Tested on headless Ubuntu EC2 instance with Unity client connected.

Types of changes

  • [HITL Framework]

Checklist

  • My code follows the code style of this project.
  • I have updated the documentation if required.
  • I have read the CONTRIBUTING document.
  • I have completed my CLA (see CONTRIBUTING)
  • I have added tests to cover my changes if required.

@facebook-github-bot facebook-github-bot added the CLA Signed Do not delete this pull request or issue due to inactivity. label Jan 18, 2024
@@ -0,0 +1,13 @@
# @package _global_
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"experiment" is an odd name for a folder that conceptually contains config overrides, but Hydra is really confusing and I was looking to match the naming convention they use in their docs and examples. The name here is unrelated to my use of "experimental" in the config, btw--in the future, we'll put all config overrides in this folder, even if they're not experimental features.

@henrysamer
Copy link
Contributor

Tested the changes from this PR on my Mac (Intel i9, Intel UHD Graphics 630).

Copy link
Contributor

@henrysamer henrysamer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-Docstrings for DebugVideoWriter and StubTextDrawer recommended.
-can keep the name Appdriver for now

Thanks!

Copy link
Contributor

@0mdc 0mdc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@eundersander eundersander merged commit d6ea788 into main Jan 23, 2024
3 of 4 checks passed
@eundersander eundersander deleted the eundersander/hitl_headless branch January 23, 2024 14:24
dannymcy pushed a commit to dannymcy/habitat-lab that referenced this pull request Jul 8, 2024
* add DebugVideoWriter

* fix for FrequencyLimiter

* polish for AverageRateTracker

* add headless mode with stub versions of DebugLineRender, GuiInput, and TextDrawer

* update README

* add docstrings for DebugVideoWriter and StubTextDrawer
HHYHRHY pushed a commit to SgtVincent/habitat-lab that referenced this pull request Aug 31, 2024
* add DebugVideoWriter

* fix for FrequencyLimiter

* polish for AverageRateTracker

* add headless mode with stub versions of DebugLineRender, GuiInput, and TextDrawer

* update README

* add docstrings for DebugVideoWriter and StubTextDrawer
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed Do not delete this pull request or issue due to inactivity.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants