Skip to content
This repository was archived by the owner on Feb 15, 2024. It is now read-only.
/ XRHackathon Public archive

Mixed Reality experience for Oculus Quest headsets. Load 3D models from Sketchfab using your voice.

License

Notifications You must be signed in to change notification settings

lvonasek/XRHackathon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

This is the first XR experience powered by your imagination. You'll be able to conjure up any object and play with it. The project works on AR/VR Quest headsets. To keep this project completely cost-free, a Sketchfab login is required.

Youtube video

Download APK

How to sideload apps on the Oculus Quest

How it works

Screenshot_20211121_170704

Used technology

The project is built using Unity 2019.4.32f1. It uses third party SDKs:

In Sketchfab Unity integration following changes were done:

  • Added SimpleJSON to fix missing dependency
  • Ported integration to Android
  • Removed prefab creation code
  • Removed Sketchfab exporter
  • Removed Sketchfab precompiled library
  • Removed UI which didn't make sense anymore
  • Replaced GLTF importer with GLTFUtility

Created art

  • Magic ball was inspired by Terminator 2 time travel effect. My version of the effect don't have lightning outside of the ball because it would make it too dramatic. Using passthrough layer I received automatically mask of the model and assign the secondary effect only on that object without need of writing complex shaders.

  • Background music was originally a remix of a song Gala - Come into my life I did 15 years ago. I reopened the project and made from it ambient music loop which has now with the original song nothing in common (except coords). This simple loop helped the experience to give it a nice relaxing feeling and also it is helped in audiovisual feedback.

Project scripts

The project scripts are located in Assets/Conjuring/Scripts.

Core - the main logic

  • MagicBall.cs - Magic ball state handling, assigning and destroying objects
  • ModelConjuring.cs - Logic of conjuring objects using VoiceSDK and modified Sketchfab integration
  • SketchfabIntegration.cs - Sketchfab login, model searching and downloading integration

Screen - actions called from UI

  • ScreenLogin.cs - Integrates login screen persistency and actions
  • ScreenWait.cs - Monitoring authentication process and decision of next screen to be shown

Utils - Audio, UI and other utilities

  • AudioVolumeHandler.cs - Handling of background music volume
  • UITransform.cs - Updates UI transformation to be visible to the user
  • VRPointer.cs - Using controller or hand, this class integrates usage of UI objects

Special thanks to

  • Facebook/Meta for organizing XRHackathon
  • the great hackathon community for sharing useful tips
  • Sketchfab who provided me with a temporary enterprise account after I told them about this project.
  • my girlfriend for supporting me

About

Mixed Reality experience for Oculus Quest headsets. Load 3D models from Sketchfab using your voice.

Topics

Resources

License

Stars

Watchers

Forks