The Ultimate XR Developers Resource Guide
I created this resource list for my personal use. I hope you find it useful too. Much of the content overlaps with general game development, and there is an emphasis on Unreal Engine and Meta Quest headsets.
Table of Contents
- Headsets (Head Mounted Displays)
- XR Guides, Tutorials and Articles
- Social & Community
- XR YouTube Channels
- Game Engines
- Assets
- Shaders & 3D Graphics
- Motion Capture, Tracking & Rigging Tools
- Hand Tracking
- Spatial Computing
- XR Development Tools & Frameworks
- Performance and Benchmarking
- Sketching, Prototyping & Design Tools
- VR Streaming
- Interesting Projects
- How to Contribute
- Issues
- My Other Projects
Headsets (Head Mounted Displays)
๐ Choosing a VR headset (wiki from r/virtualreality)
๐ VR-Compare is a website that allows users to compare virtual reality (VR) products and experiences.
๐ HMD Geometry Database lists the calculated values of rendered FOVs and other view geometry of some commercially available headsets
XR Guides, Tutorials and Articles
General
๐ Practical VR: A Design Cheat Sheet
๐ Sense of Presence in Social VR Experience
๐ XR Collaboration Resource Guide
๐ Start designing and prototyping for mixed reality (Microsoft)
๐ Oculus - Designing Accessible VR Experiences A set of guidelines for designing accessible VR experiences.
๐ Comparing Unity vs Unreal for VR, MR or AR Development Projects
๐ Get started with VR: user experience design
๐ VR Fonts (Reddit)
๐ Designing User Experience for Virtual Reality (VR) applications
๐ The User Experience of Virtual Reality (uxofvr.com)
๐ Design Practices in Virtual Reality
๐ Simulating Weight in VR
๐ Understanding Binocular Overlap and Why Itโs Important for VR Headsets
๐บ Interaction Design in VR: Valveโs Lessons
๐บ Google I/O 2015 โ Designing for virtual reality
๐บ Daydream Labs: Lessons Learned from VR Prototyping โ Google I/O 2016
๐บ 2014 Oculus Connect โ Introduction to Audio in VR
๐บ Lessons learned at the Vive Game Jam
๐บ How NOT to Build a VR Arcade Game
๐บ VR Interface Design Pre-Visualisation Methods
๐บ VR Interface Design Manifesto
๐บ Locomotion in Virtual Reality
๐บ Locomotion in VR: Overview of different locomotion methods on HTC Vive
๐บ Did You Hear That? Designing Jeff with Sound and Silence 'Half-Life: Alyx' | SIGGRAPH Tech Talk
John Carmack
๐บ John Carmack Tech Talk with UMKC-SCE
๐บ Deep Thoughts Engineering Speaker Series
๐บ Oculus Connect 2 Keynote with John Carmack
๐บ John Carmack at the University of Texas at Dallas
๐บ John Carmack: Live & Unscripted | Facebook Connect
๐บ Meta Connect 2022 | Carmack Unscripted
Unity
๐ Unity Manual: XR
๐ Intro to VR Development with Oculus Rift (Unity)
Unreal Engine
๐ Developing for XR experiences in Unreal Engine
๐ Mike Royal โ Unreal Engine Guide
๐ Epic Games Learning Library for Unreal Engine & MetaHuman
๐ Your First Hour in Unreal Engine 5
๐ XR Best Practices in Unreal Engine
๐บ Virtual Reality and OpenXR in UE5 | Unreal Fest 2022
๐บ What You Didnโt Know About VR Development in Unreal Engine | Inside Unreal
Social & Community
Discord Servers
Virtual Reality
Unreal Slackers
XR Creators
Flatscreen to VR Modding
LucidVR
Subreddits
r/oculus
r/OculusQuest
r/QuestPro
r/SteamVR
r/Unity
r/Unity3D
r/Unrealengine
r/Virtualreality
r/VRGaming
r/augmentedreality
r/learnVRdev
r/blender
r/mixedvr
r/WindowsMR
Forums & Development Hubs
Developer Forum (oculusvr.com)
AR/VR (XR) Discussion โ Unity Forum
Oculus Developer Center
Google VR for everyone | Google Developers
XR YouTube Channels
General
VR Playground
Quinn Kuslich
Just2Devs
XR Bootcamp
Circuit Stream
Lucas VRTech
GDXR
VR with Andrew
Fist Full of Shrimp
Valem
Justin P Barnett
Dilmer Valecillos
WINBUSH
Game Development
Game Maker's Toolkit
UnrealSensei
Awesome Tuts
Virtus Learning Hub
Smart Poly
PrismaticaDev
Ivica Milariฤ
UnrealSensei
Game Maker's Toolkit
Awesome Tuts
Virtus Learning Hub
Ivica Milariฤ
Blender
CG Cookie
Blender Guru
YanSculpts
Grant Abbitt
CG Masters
Ducky 3D
IanHubert
Related
FlippedNormals
Cinematography Database
RelaxKiral
Eric V. Tuber
iBrews
Game Engines
โ๏ธ Unreal Engine
โ๏ธ Unity
โ๏ธ Cry Engine
๐โ๏ธ Godot Engine
๐โ๏ธ AppGameKit VR
๐โ๏ธ Open 3D Engine
๐โ๏ธ ApterusVR
Getting Started with Unreal Engine
๐ Unreal Engine Guide (META)
๐ Creating Your First Meta Quest VR App in Unreal Engine (META)
๐ Oculus Integration for Unreal Engine Basics (META)
๐ Configure the Oculus Plugin for Unreal Engine (META)
๐ Developing for Oculus in Unreal Engine (Epic Games)
๐ VR Template in Unreal Engine (Epic Games)
Unreal Engine Plugins
๐โ๏ธ VR Expansion Plugin
Getting Started with Unity
๐ Next Steps with Unity (META)
Assets
Premade Models
3D Scan Store
RenderPeople
Sketchfab
TurboSquid
CGTrader
๐ Smithsonian 3D
๐ 3dmodelscc0
๐ Quixel Megascans
๐ Quixel Bridge
๐ Poly Haven
Pixel Lab
๐ Free3D
Hum3D
๐ MorphoSource
๐ poly.pizza
๐ HDRi Haven
3D Modelling Tools
๐โ๏ธ Blender
๐โ๏ธ ZBrushCoreMini
๐โ๏ธ Clara.io
๐โ๏ธ MetaHuman Creator
๐โ๏ธ Mixamo
๐โ๏ธ Wings 3D
๐โ๏ธ FreeCAD
๐โ๏ธ Adobe Medium
โ๏ธ 3DCoat
โ๏ธ Cinema 4D
โ๏ธ Adobe Substance 3D Modeler
โ๏ธ Maya
โ๏ธ Marvelous Designer
โ๏ธ 3D Character Maker
Photogrammetry
Photogrammetry is a technique that uses photographs to construct 3D models of objects, buildings, or landscapes. The process involves taking multiple photos of the subject from various angles and then analysing them with specialised software to generate a 3D model.
โ๏ธ Adobe Substance 3D Sampler
๐บ Basic 3D Capture - Capturing an outdoor scene in Substance 3D Sampler
๐บ Advanced 3D Capture with Substance 3D Sampler (Playlist)
๐โ๏ธ RealityCapture
๐โ๏ธ RealityScan
๐โ๏ธ Polycam
โ๏ธ 3DF ZEPHYR
โ๏ธ Qlone 3D Scanner
๐บ The Ultimate Guide to 3D Scanning | FULL WORKFLOW
๐บ William Faucher: RealityCapture to UE5 - Workflow Tutorial
๐บ William Faucher: How to 3D Scan All Sides of Objects - RealityCapture
๐บ William Faucher: The Key to Cleaner 3D Scans: Cross-Polarization
๐บ William Faucher: FREE Ways to Improve your 3D Scans!
๐ Getting started with Photogrammetry โ with a Smartphone camera (2019)
๐ A Guide to Photogrammetry Photography (2020)
NeRF: Neural Radiance Fields
๐ NeRF: Neural Radiance Fields (matthewtancik.com)
๐ โ๏ธ NVIDIA labs: Instant Neural Graphics Primitives
๐ โ๏ธ GitHub โ bmild/nerf: Code release for NeRF (Neural Radiance Fields)
๐ โ๏ธ Luma AI
๐บ Why THIS is the Future of Imagery: The Corridor Crew (YouTube)
Textures
โ๏ธ Adobe Substance 3D Painter
โ๏ธ Adobe Substance 3D Sampler
๐โ๏ธ Materialize: An image to material tool
๐ MatCap
๐ ArtStation: Miloลก Belanec
๐ Poliigon: Free Textures
๐ 30 free PBR materials
๐ Poly
Game Textures
Plain Textures
Textures.com
Audio
๐บ Oculus Connect: Introduction to Audio in VR
๐บ BEST 3D Spatial Audio Workflow 2022 for Meta Quest 2 and YouTube VR
๐ Sound Design for VR (Meta)
Link | Description |
---|---|
๐โ๏ธ Facebook 360 Spatial Workstation | The Facebook 360 Spatial Workstation is a suite of tools designed to create immersive audio and video experiences for virtual reality (VR) and 360-degree video. This workstation is now unsupported by Meta/Facebook but is still widley used. Thank you Hugh Hou for keeping these files available for download. |
๐โ๏ธ Resonance Audio | With Resonance Audio, bring dynamic spatial sound into your VR, AR, gaming, or video experiences at scale. |
๐โ๏ธ Valve: Steam Audio | Steam Audio delivers a full-featured audio solution that integrates environment and listener simulation. HRTF significantly improves immersion in VR; physics-based sound propagation completes aural immersion by consistently recreating how sound interacts with the virtual environment. |
๐โ๏ธ Microsoft: Spatial Audio for Unity | This repository provides plugins and tools for integrating spatial audio into your Unity 3D applications and games. |
โ๏ธ Adobe Audition | Adobe's professional audio workstation. |
๐โ๏ธREAPER | A digital audio workstation. |
๐โ๏ธ FMOD | A software audio engine that allows developers to easily implement audio playback and effects in their games, applications, and other interactive media. |
๐โ๏ธ Audacity | A free and open-source digital audio editor and recording application. |
๐ ZapSplat | Free sound effects and royalty free music soundtracks. |
๐ Purple Planet | A collection of music written and performed by Chris Martyn and Geoff Harvey. |
Shaders & 3D Graphics
๐บ Freya Holmรฉr: Shaders For Game Devs - YouTube Playlist
๐โ๏ธ Shadertoy
๐ A Beginner's Guide to Coding Graphics Shaders
๐ NVIDIA GPU Gems 1
๐ NVIDIA GPU Gems 2
๐ NVIDIA GPU Gems 3
๐ The Book of Shaders
๐ Computer Graphics from Scratch
๐๐บ NedMakesGames: Shader Tutorials
Motion Capture, Tracking & Rigging Tools
โ๏ธ Rokoko
Xsens
โ๏ธ RADiCAL
๐โ๏ธ Amethyst
๐โ๏ธ Live Link Face for Unreal Engine (iOS)
๐โ๏ธ accuRIG
SlimeVR
VIVE Tracker
April Tag VR FullBody Tracker
HaritoraX
Hand Tracking
Mostly hand tracking information for Unreal Engine with Quest headsets
๐โ๏ธ Unreal Hand Gameplay Showcase (GitHub)
๐ Designing for Hands (Meta/Oculus)
๐ Introducing โFirst Hand,โ Our Official Hand Tracking Demo Built With Presence Platformโs Interaction SDK
๐ โ๏ธ Oculus VR Hands Models
Ultraleap
Quinn Kuslich (YouTube)
๐บ VR Hands and Animations in UE5 & UE4.27 | Tutorial Part 1 | Adding Hands and Gesture Animations
๐บ VR Hand Animation in UE5 & UE4.27 | Tutorial Part 2 | Object Specific Grip States for VR Weapons
๐บ Procedural VR Hand Animation in UE5 | Tutorial Part 3 | Half Life: Alyx Procedural Grip Animations
Just2Devs (YouTube)
๐บ Enable Hand Tracking 2.0 in Unreal Engine
๐บ Hand Tracking in Unreal Engine 5.0
๐บ The Just2Devs website
VRPlayground (YouTube)
๐บ Oculus Quest Hand Tracking Setup โ Unreal Engine VR Tutorial
๐บ Unreal Engine Hand Animations โ Unreal Engine 5 VR Tutorial
Spatial Computing (Apple visionOS)
๐โ๏ธ Apple VisionOS SDK
๐โ๏ธ Apple - Creation Tools for Spatial Apps
๐โ๏ธ Unity Vision Pro SDK (beta)
๐บ Apple - Spatial Computing Videos (PolySpatial)
๐ Apple - Designing for visionOS
๐ Apple - Design Resources
๐โ๏ธ Unity Vision Pro SDK (beta)
XR Development Tools & Frameworks
Link | Description |
---|---|
๐โ๏ธ Babylon.js | A JavaScript library for building 3D graphics and animations using WebGL (Web Graphics Library). |
๐โ๏ธ VR Builder | A VR creation open-source toolkit for Unity. |
๐โ๏ธ ARKit | A development platform that enables app developers to build AR experiences quickly and easily into their apps and games (Apple). |
๐โ๏ธ RealityKit | Simulate and render 3D content for use in your augmented reality apps (Apple). |
๐โ๏ธ SceneKit | A high-level 3D graphics framework that helps you create 3D animated scenes and effects in your apps (Apple). |
๐โ๏ธ PLAYCANVAS | PlayCanvas is a WebXR creation platform. It exposes the full power of the WebXR spec making it easy to create high performance, browser-based virtual reality applications. |
๐โ๏ธ BlenderXR | A library to use Blender with common VR/AR hardware. It supports Oculus Rift, HTC Vive, WindowsMR (via SteamVR), and Fove headsets. |
๐ XRAccessibility project | A initiative driven by the XR Association and XR Access to provide a central place for developers to find solutions for creating accessible code across various XR platforms. |
๐ Inclusive User Testing in VR | This Unity plugin allows users to directly give feedback in VR and allows user researchers to view this feedback asynchronously using a web-based dashboard. |
๐โ๏ธ A-Frame | A web framework for building virtual reality experiences. Users can make WebVR with HTML and Entity-Component, which can be viewed on Vive, Rift, Daydream, GearVR, and desktops. |
๐โ๏ธ Unity XR Interaction Toolkit package | A high-level, component-based, interaction system for creating VR and AR experiences. It provides a framework that makes 3D and UI interactions available from Unity input events. |
๐โ๏ธ UltimateXR | UltimateXR is a free, open source framework and toolkit for Unity that includes powerful features such as cross-device compatibility, state-of-the-art grab and manipulation mechanics, inclusion through a library of gender- and race-agnostic hands, customizable full body avatar representation, advanced UI components, locomotion mechanics, and much more. |
โ๏ธ VR Interaction Framework | The VR Interaction Framework for Unity makes it easy to create your own interactive objects and be productive quickly. This framework will give you the foundation you need to create polished VR experiences. |
โ๏ธ Auto Hand: VR Physics Interaction | Auto Hand is a user-friendly, VR interaction system for Unity, which includes a posing system that automatically figures out what pose a hand should take when grabbing. |
โ๏ธ Hurricane VR: Physics Interaction Toolkit | HurricaneVR is a complete VR Interaction Framework with a heavy emphasis on quality physics interactions. The Physics Hands are controlled by tuned PD Controllers enabling smooth and responsive hand physics, high quality collision, two handed holding, throwing, and interactions with your physics objects. |
โ๏ธ Advanced Framework Core | A complete framework to develop professional VR, Mobile and Desktop applications such as games, experiences, Architectural Viz or product presentations. |
๐โ๏ธ Oculus Source Distribution for Unreal Engine | |
๐โ๏ธ LรVR | An open source framework for rapidly building immersive 3D experiences. |
๐โ๏ธ Oculus Haptics Studio | Meta Haptics Studio is a desktop application and companion VR application. It allows you to design and audition haptic clips, which can be exported and played in your app via the Meta Haptics SDK for Unity. |
๐โ๏ธ ApertusVR |
Performance and Benchmarking
General VR Performance
๐บ Achieving PCVR Quality on a Mobile Headset with OwlChemy Labs
๐บ SUPERHOT VR on Quest: From 100W to 4W in 12 Months
๐บ Oculus Connect 5 | Reinforcing Mobile Performance with RenderDoc
Unreal Engine Performance
๐ Unreal Engine Performance Guide (GPUOpen)
๐ Unreal Engine 5: Testing and optimizing Your Content
๐ Unreal Engine 5: XR Performance and Profiling
๐ Unreal Engine 5: VR profiling Tools
๐ Advanced Rendering (Oculus Quest)
๐ Guidelines for Optimizing Rendering for Real-Time
๐ Unreal Art Optimization
๐ Understanding Textures And Optimizing Materials For Mobile VR in UE 5.1 - Part 1
๐บ Unreal Engine Game Optimization on a Budget, by Tom Looman
๐บ Maximizing Your Game's Performance in Unreal Engine | Unreal Fest 2022
Meta Quest Performance
๐ Performance and Optimization
๐ Down The Rabbit Hole w/ Oculus Quest: Developer Best Practices + The Store
๐ Art Direction for All-in-One VR Performance
๐ Basic Optimization Workflow for Apps
๐ Open World Games and Asset Streaming with Unity
๐ Testing and Performance Analysis
๐ Performance Analyzer and Metrics (Perfetto-trace)
๐ Getting a Handle on Meta Quest Memory Usage
๐ Showdown on Quest Part 1: How App SpaceWarp Improves Performance
RenderDoc with Oculus + Unity
๐ Use RenderDoc Meta Fork for GPU Profiling
๐ Using RenderDoc Meta Fork to Optimize Your App - Part 1
๐ Using RenderDoc Meta Fork to Optimize Your App - Part 2
๐ Taking and Loading a Capture
๐ Performing a Render Stage Trace
๐ Performing a Draw Call Trace
๐ Accessing Vulkan Shader Stats
๐ Recommended Settings
Profiling Tools
A profiler tool helps developers optimize performance by providing detailed information on how an application uses the GPU and CPU to render graphics and identify performance bottlenecks.
๐โ๏ธ Oculus Debug Tool
๐โ๏ธ RenderDoc
๐โ๏ธ OVR Metrics Tools
๐โ๏ธ Android GPU Inspector (AGI) - for Android based HMDs
๐โ๏ธ ARM: Streamline Performance Analyzer
๐โ๏ธ SteamVR Frame Timing
๐โ๏ธ NVIDIA Visual Profiler
๐โ๏ธ NVIDIA Nsight Graphics
๐โ๏ธ NVIDIA VR Capture & Replay - Early Access
๐โ๏ธ NVIDIA Performance Analysis Tools
๐โ๏ธ AMD Radeon GPU Profiler
๐โ๏ธ Intelยฎ Graphics Performance Analyzers:
๐โ๏ธ Intelยฎ VTuneโข Profiler
๐โ๏ธ PVRTune
โ๏ธ Superluminal
Peformance Tools & Plugins
Link | Description |
---|---|
๐โ๏ธ Deep Learning Super Sampling (DLSS) NVIDIA | A neural graphics technology that multiplies performance using AI to create entirely new frames and display higher resolution through image reconstructionโall while delivering best-in-class image quality and responsiveness. |
๐โ๏ธ OpenVR Benchmark | The first benchmark tool for reproducibly testing your real VR performance, rendering inside of your VR headset. See if your hardware performs correctly! VR headset required. |
๐โ๏ธ VR Performance Toolkit | Performance-oriented collection of mods for VR games. |
๐โ๏ธ OpenXR Explorer | An open-source tool that allows developers to explore and test OpenXR runtimes and applications. |
๐โ๏ธ Quest Games Optimizer | A community-based tool to improve the Quest graphics and gaming experience. |
๐โ๏ธ ReShade | A generic post-processing injector for games and video software. |
โ๏ธ Simplygon | Perform automatic 3D optimization, based on proprietary methods for creating levels of detail through Polygon mesh reduction and other optimization techniques. |
โ๏ธ fpsVR | A utility for SteamVR for keeping track of FPS, frame time and other performance metrics in the in-game overlay. |
๐โ๏ธ VRToolkit: Reshade-vrtoolkit | Modular shader to enhance you HMD clarity & sharpness with minimal performance impact. |
๐โ๏ธ Cognitive3D | Captures Spatial Data to observe player behaviour in AR, VR, or XR. Plug-in for Unreal and Unity. |
Sketching, Prototyping & Design Tools
Link | Description |
---|---|
๐โ๏ธ Gravity Sketch | An intuitive 3D design platform. |
โ๏ธ XR Wireframe Kit for Gravity Sketch | The XR Wireframe kit, is to be used in Gravity Sketch for the process of UX/ UI design. |
โ๏ธ Adobe Aero | An way to build, view and share robust immersive storytelling experiences in mobile AR. |
๐ โ๏ธ 360ยฐ Art | A free 360ยฐ Art Photoshop Plugin which letโs you create VR ready artworks and comics. |
๐ โ๏ธ Snap AR Lens Studio | An application designed for artists and developers to build augmented reality experiences for hundreds of millions of Snapchatters. |
๐โ๏ธ Meta Spark AR Studio | Metaโs full suite of technology, tools and educational resources that enable AR content across all Meta technologies. |
โ๏ธ Byldr | A no-code platform that maximizes the capability of on-device app development. |
โ๏ธ XR Thinking: | XR prototyping and mockups. |
๐โ๏ธ Tvori | Prototyping interfaces, products, and design experiences for XR. |
โ๏ธ ShapesXR | A VR creation and collaboration platform for remote teams. |
โ๏ธ Bezel | A VR creation and collaboration platform for remote teams. |
๐โ๏ธ Nvidia Omniverse Create XR | A platform for creating and collaborating on immersive, real-time 3D experiences. It allows users to design, visualize, and simulate 3D environments and objects, and to collaborate with others in real-time. |
VR Streaming
โ๏ธ NVIDIA CloudXR
๐โ๏ธ Air Link
โ๏ธ Virtual Desktop
โ๏ธ VIVE Business Streaming
Interesting Projects
Link | Description |
---|---|
๐โ๏ธ Environmake | Environmake is a Blender addon that makes simple 3D environments in seconds using the power of AI. |
๐โ๏ธ VRChat | A virtual reality social platform that allows users to interact with each other in virtual worlds and environments. It allows users to create and customize their own avatars, explore virtual worlds and participate in activities such as games, conversations, and events. |
๐โ๏ธ LucidVR | So you want to have yourself a pair of working VR Haptic Gloves? |
๐โ๏ธ OpenGloves | An open source, OpenVR Driver that allows for use of DIY Virtual Reality Hardware in SteamVR games. |
๐โ๏ธ ALVR | Air Light VR allows you to stream VR games from your PC to your headset via Wi-Fi. |
๐โ๏ธ OpenXR | An open standard that allows virtual reality and augmented reality applications to be developed and run on multiple different hardware platforms, such as VR headsets and AR devices. This means that developers can create VR and AR experiences that can be used on any device that supports the OpenXR standard, rather than being limited to a specific brand or model. This makes it easier for developers to create and distribute their VR and AR applications, and also allows users to access a wider variety of content on their devices. |
๐โ๏ธ OpenHaptics | An open-source firmware for haptic-feedback devices that are used in Virtual Reality environments. OpenHaptics is designed to be easy to use and integrate with existing VR systems, making it a valuable tool for anyone working in the field of VR. The source code for OpenHaptics is available for free on GitHub, allowing anyone to contribute to its development and improvement. |
๐โ๏ธ EyeTrackVR | An open source and affordable VR eye tracker platform for VRChat. |
๐โ๏ธ Ethereal Engine | An end-to-end framework for the web, built on popular Javascript frameworks. Scalable multiplayer infrastructure with voice, video, expressive avatars, a visual editor and portals between worlds. Build your own games and social experiences and link them together. |
๐โ๏ธ Half-Life: Alyx Workshop Tools | A set of software utilities available as a free download for Half-Life: Alyx that allow you to create items for inclusion in the Steam Workshop and your own custom game addons. |
Relativty | An open-source VR headset. |
๐ DIY VR Headset | DIY VR HEADSET FOR THE STEREOPI. 10 MS LATENCY FOR JUST $135 |
๐โ๏ธ OpenHMD | A Free and Open-Source API and drivers for immersive technology, such as head mounted displays with built in head tracking. |
โ๏ธ Natural Locomotion | Helps to reduce motion sickness. |
๐โ๏ธ Interhaptics by Razor | Design your haptics effects based on your audio. Extract the haptics features and optimize them with the editing tool. |
How to Contribute
- Clone repository and create a new branch:
$ git checkout https://github.com/authorTom/ultimate-XR-dev-guide -b name_for_new_branch
- Make changes and test
- Submit Pull Request with description of contribution
Issues
This project is actively maintained, please raise an issue if you feel the need to.
Like what has been done? please give the repository a star โญ