diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000..470d3a7 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,35 @@ +# WIP documentation + +## Hierarchy + +``` +OverlayManager +- MyOverlayInstance + - [...] + - OverlayViewport + - Container + - MyOverlay + - [...] + - OverlayInteraction + - VR + - [colliders for vr trackers etc] + - Grabbable + - Clickable + - Touchable + +``` + + +## overlay interaction types +Each overlay instance has a OverlayInteraction node, which spawns the different interaction modules depending on what is defined in the OVERLAY_PROPERTIES. + +The modules/interaction types are: +- Grabbable +- Touchable +- Clickable + +These modules connect signals from different places to the interaction manager (`OverlayInteraction`) +Touchable connects collision signals to mouse inputs (potentially logic between to help prevent double presses) +Clickable connects vr button signals to mouse inputs +Grabbable connects vr button signals to grab logic, while telling the interaction manager to pause normal interaction + diff --git a/src/addons/openvr_overlay/overlay_init.gd b/src/addons/openvr_overlay/overlay_init.gd index 3d46849..3abdeef 100644 --- a/src/addons/openvr_overlay/overlay_init.gd +++ b/src/addons/openvr_overlay/overlay_init.gd @@ -30,7 +30,10 @@ func _init() -> void: func _ready() -> void: + OS.window_size = Vector2(16, 16) + OS.window_position = Vector2(32, 32) OS.window_minimized = true + ARVRServer.connect("tracker_added", self, "_tracker_added") ARVRServer.connect("tracker_removed", self, "_tracker_removed") update_hand_ids()