Introduction

This is the project for operating system (H), spring 2022. We're designing a VR office system, supporting dynamically importing 3DSaaS files, and operating the model(zoom, rotate, move, set visibility, etc.); controlling remote endpoints with low latency; Operating remote devices(not computers. For example, a plane). All imported objects can be 3D surrounding. Things can be operated solely by hand, which means no handles.

Requirements

  1. python3 and corresponding packages:
    1. socket
    2. pynput
    3. win32api
  2. Unity 2020
  3. Oculus Quest 2
  4. A laptop with NVIDIA graphic card(recommend to use a game laptop)

Usage

3D object importing

  1. Put your right palm up to make the menu visible.
  2. Select 3D Object Import.
  3. Input the directory of the 3DSaaS file(folder "obj example" can be used as an example)
  4. Press "Submit" and see the imported objects.

Remote control

Attention: don't use the campus network unless testing on 127.0.0.1, because most campus network don't supporting UDP broadcasting.

  1. Set ScreenShare_server/ScreenShare.exe to be opened using Intel graphic card and open it.
  2. Open ScreenShare_server/controller.py using the administrator mode
  3. .
  4. Open remode desktop in oculus interface.
  5. The server port is 5901 in default.
  6. If you want to drag, press the virtual screen for as least 1.5 seconds.

Model plane

  1. Open Other Servers/plane_server.py.
  2. Open plane_client.py.
  3. The default port is 6666.

Team Members

I am the main person in charge, the rest of the members are in alphabetical order.

Example

Github:https://github.com/yichx/VR-fancy-office