diff --git a/core/IvmiScene.gd b/core/IvmiScene.gd index 05d54518949789f27d5c9795b5728aceb1d26821..41a0b1ee159e99c729ffd6a85a6fb2dfb6119c73 100644 --- a/core/IvmiScene.gd +++ b/core/IvmiScene.gd @@ -23,29 +23,22 @@ var _output_buffer var _buffer_size = 64 var phase = 0 +@export var _debug_osc: bool = false + #XR variables @export_group("XR") enum XRMode {Mono, OpenXR} @export var _xr_mode: XRMode = XRMode.OpenXR @export var _open_xr_passthrough: bool=false -@export_group("ScreenVR") -enum VRMode {SplitHorizontal, SplitVertical, Anaglyph, QuadBuffer} -@export var _screen_vr_mode: VRMode=VRMode.SplitHorizontal -@export var _screen_vr_iod=0.06 : set = set_screen_vr_iod -@export var _screen_vr_head_position=Vector3(0,0,3) : set = set_screen_vr_head_position -@export var _screen_vr_screen_size=Vector2(3,2) : set = set_screen_vr_screen_size -@export var _screen_vr_window_size=Vector2(1024,600) : set = set_screen_vr_window_size -@export var _screen_vr_window_position=Vector2(640,480) : set = set_screen_vr_window_position var _xr_interface : XRInterface = null -var _config # Network variables @export_group("Network") enum NetMode {None, Peer, Client, Server} @export var _network_mode: NetMode = NetMode.None -enum NetProto {Enet, WebRTC} -@export var _network_protocol: NetProto = NetProto.Enet +enum NetProto {Enet} +var _network_protocol: NetProto = NetProto.Enet var _client_name = "" var _is_connected = false @export var _server_ip = "127.0.0.1" : set = set_server_ip @@ -66,8 +59,6 @@ var _recording_time = 0 var _recording_index = 0 -@export var _debug_osc: bool = false - var _is_2D : bool = true var _ivmi_node = load("res://addons/ivmi-builder/core/IvmiNode.gd") @@ -104,30 +95,12 @@ func _ready(): print("Error : Could not activate OpenXR Passthrough") else: print("Error : Could not initialize OpenXR interface") -# XRMode.ScreenVr: -# XRServer.add_interface(Gd4ScreenVR.new()) -# _config = XRServer.find_interface("Gd4ScreenVR") -# if _config and _config.initialize(): -# #get_viewport().arvr = true -# #get_viewport().use_xr = true -# #_config = load("res://addons/gdscreenvr/ScreenVRConfig.gdns").new() -# _config.set_intraocular_dist(_screen_vr_iod) -# _config.set_stereo_mode(_screen_vr_mode+1) -# _config.set_head_pos(_screen_vr_head_position) -# _config.set_screen_size(_screen_vr_screen_size) -# _config.set_window_size(_screen_vr_window_size) -# _config.set_window_position(_screen_vr_window_position) -# print("IVMI : Initialised ScreenVR Interface") -# else: -# print("Error : Could not activate ScreenVR") -# pass # PureData mode if _pd_mode==PdMode.LIBPD : - var gdpd_dir = FileAccess - var exists = gdpd_dir.dir_exists("res://addons/gdpd") - if exists : - _gdpd = load("res://addons/gdpd/bin/gdpd.gdns").new() + var gdpdir = DirAccess.open("res://addons/gdpd") + if gdpdir : + _gdpd = load("res://addons/gdpd/gdpd.gdextension").new() add_child(_gdpd) _input_buffer = PackedVector2Array() _input_buffer.resize(_buffer_size) @@ -233,17 +206,14 @@ func _process(delta) : func _on_found_server(server_ip, port) : match _network_protocol : - NetProto.WebRTC : - #_network_client.connect_to_server(server_ip, port) - pass - NetProto.Enet : - if !_is_connected or _server_ip!=server_ip : - print("IVMI : Connecting to server ", server_ip, " ", port) - var peer = ENetMultiplayerPeer.new() - _server_ip=server_ip - peer.create_client(server_ip, port) - multiplayer.multiplayer_peer = peer - multiplayer.connected_to_server.connect(_on_network_ready) + NetProto.Enet : + if !_is_connected or _server_ip!=server_ip : + print("IVMI : Connecting to server ", server_ip, " ", port) + var peer = ENetMultiplayerPeer.new() + _server_ip=server_ip + peer.create_client(server_ip, port) + multiplayer.multiplayer_peer = peer + multiplayer.connected_to_server.connect(_on_network_ready) func _on_timeout() : @@ -253,11 +223,6 @@ func _on_timeout() : _network_mode=NetMode.Server _network_discov.set_server(_server_port) match _network_protocol : - NetProto.WebRTC : - _network_server = IvmiServer.new() - _network_server._port = _server_port - add_child(_network_server) - _on_found_server("127.0.0.1", _server_port) NetProto.Enet : var peer = ENetMultiplayerPeer.new() peer.create_server(_server_port) @@ -406,38 +371,6 @@ func get_xr_mode(): func is_2D() : return _is_2D -func set_screen_vr_iod(iod) : - _screen_vr_iod=iod - if is_inside_tree(): - _config.set_intraocular_dist(_screen_vr_iod) - -func set_screen_vr_head_position(pos) : - _screen_vr_head_position=pos - if is_inside_tree(): - _config.set_head_pos(_screen_vr_head_position) - -func set_screen_vr_screen_size(size) : - _screen_vr_screen_size=size - if is_inside_tree(): - _config.set_screen_size(_screen_vr_screen_size) - -func set_screen_vr_window_size(size) : - _screen_vr_window_size=size - if is_inside_tree(): - _config.set_window_size(_screen_vr_window_size) - -func set_screen_vr_window_position(pos) : - _screen_vr_window_position=pos - if is_inside_tree(): - _config.set_window_position(_screen_vr_window_position) - -func set_screen_vr_stereo_images(imgL, imgR) : - if is_inside_tree(): - if imgL!=null : - _config.set_stereo_images(imgL,imgR) - else : - _config.unset_stereo_images() - func vector3_to_array(vec): return [vec.x,vec.y,vec.z] diff --git a/techniques/manipulation/Cursor.gd b/techniques/manipulation/Cursor.gd index 64290013745ce59a957ee76e62d8bff48ed1b4ad..c2e4f16446b1753895f89572f1960ab4ba115834 100644 --- a/techniques/manipulation/Cursor.gd +++ b/techniques/manipulation/Cursor.gd @@ -112,20 +112,20 @@ func _on_node_entered(node): _grabbed[_parent.name] = false func _on_Controller_button_pressed(button): - if button == JOY_GR + if button == "grip_click" : _grabbing = true for k in _selected.keys(): _grabbed[k] = true - if button == JOY_VR_TRIGGER : + elif button == "trigger_click" : for k in _selected.keys(): _selected[k].set_property("triggered", [1]) func _on_Controller_button_release(button): - if button == JOY_VR_GRIP : + if button == "grip_click" : _grabbing = false for k in _selected.keys(): _grabbed[k] = false - if button == JOY_VR_TRIGGER : + elif button == "trigger_click" : for k in _selected.keys(): _selected[k].set_property("triggered", [0])