Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/saurabhchalke/awesome-mixed-reality

🌟 A curated list of awesome resources for Mixed Reality development.
https://github.com/saurabhchalke/awesome-mixed-reality

List: awesome-mixed-reality

awesome awesome-list csharp game-development headset mixed-reality mr unity unreal-engine virtual-reality vr xr

Last synced: 3 months ago
JSON representation

🌟 A curated list of awesome resources for Mixed Reality development.

Awesome Lists containing this project

README

        

# Awesome Mixed Reality [![Awesome](https://awesome.re/badge.svg)](https://awesome.re)

> 🌟 A curated list of awesome resources for Mixed Reality development.

## Contents

- [Awesome Mixed Reality ](#awesome-mixed-reality-)
- [Contents](#contents)
- [YouTube Tutorials](#youtube-tutorials)
- [Websites](#websites)
- [Tools](#tools)
- [Debugging](#debugging)
- [Packages \& Services](#packages--services)
- [SDKs](#sdks)
- [Assets](#assets)
- [GitHub Projects](#github-projects)
- [Interesting Hardware](#interesting-hardware)
- [Books](#books)
- [Supporting Apple Vision Pro](#supporting-apple-vision-pro)
- [Apple Vision Development on Xcode](#apple-vision-development-on-xcode)
- [Quest 3 Mixed Reality](#quest-3-mixed-reality)
- [Using Meta XR SDK](#using-meta-xr-sdk)
- [Use XR Interaction Toolkit](#use-xr-interaction-toolkit)
- [Industry Experts and Companies](#industry-experts-and-companies)
- [Contribute](#contribute)

## YouTube Tutorials

- [Unity tutorials](https://www.youtube.com/watch?v=XtQMytORBmM) - Comprehensive Unity tutorials for mixed reality development.
- [Unity Fireship](https://www.youtube.com/watch?v=iqlH4okiQqg) - Advanced Unity topics, covering various aspects of Unity development.
- [C# Fireship](https://www.youtube.com/watch?v=ravLFzIguCM) - In-depth guide to C# programming, essential for Unity developers.
- [.NET framework explained](https://www.youtube.com/watch?v=bEfBfBQq7EE) - Overview of the .NET framework, useful for understanding Unity's backend.
- [Valem - VR Dev for Beginners](https://www.youtube.com/watch?v=i3DbJwy0R6E) - Beginner-friendly tutorials on VR development using Unity.
- [Valem's Let's make a VR game](https://www.youtube.com/watch?v=QCvqimfrMZw&list=PLpEoiloH-4eM-fykn_3_QcJ-A_MIJF5B9&index=1) - Step-by-step guide to creating VR games from scratch.
- [Dilmer Valecillos's YT Channel](https://www.youtube.com/@dilmerv)
- [Justin P Barnett's YT Channel](https://www.youtube.com/@JustinPBarnett)
- [Samyam's YT Channel](https://www.youtube.com/@samyam)
- [Brackey's YT Channel (Gamedev GOAT)](https://www.youtube.com/@Brackeys)
- [Black Whale Studio YT Channel](https://www.youtube.com/@blackwhalestudio)
- [Procedural Animation](https://www.youtube.com/watch?v=qlfh_rv6khY)
- [GeoHot on AI Girlfriend](https://www.youtube.com/watch?v=RA7fivgW8TM) - Exploration of AI integration in mixed reality applications.

## Websites

- [Awesome Unity GitHub](https://github.com/RyanNielson/awesome-unity) - A curated list of Unity resources, tools, and tutorials.
- [Quest Docs](https://developer.oculus.com/resources/) - Official Oculus Quest documentation and resources for developers.

## Tools

- **Meta XR Simulator** - [Simulate and test XR applications](https://developer.oculus.com/documentation/tools/tools-overview/).
- **Meta Quest Developer Hub** - [Comprehensive development tools for Oculus Quest](https://developer.oculus.com/downloads/package/oculus-developer-hub/).
- **Wonderland Engine (WebXR)** - [Wonderland Engine for creating WebXR applications](https://wonderlandengine.com/).
- **Cognitive3D (Analytics)** - [Analytics platform tailored for XR applications](https://cognitive3d.com/).
- **Meta Haptics Studio** - [Development tools for creating haptic feedback experiences](https://developer.oculus.com/documentation/unity/unity-haptics/).
- [wit.ai](https://wit.ai/) (NLP) - Natural language processing tools for VR/AR applications.
- [webxr.tools](https://webxr.tools) - A collection of tools for WebXR development.
- **Mattercraft** - [Mixed reality development tools](https://mattercraft.io/).
- **Spark AR Studio** - [Tool for creating augmented reality experiences](https://sparkar.facebook.com/ar-studio/).
- [Meta tools](https://developer.oculus.com/downloads/unity/) - A suite of tools provided by Meta for XR development.

## Debugging

- **Immersive Debugger** - [Immersive Debugger inside the headset by Meta SDK](https://developer.oculus.com/documentation/unity/immersivedebugger-overview/)
- **RenderDoc for Oculus** - [Frame capture and analysis tool for Oculus applications](https://developer.oculus.com/documentation/native/pc/dg-renderdoc-tutorial/).
- **Unity Profiler** - [Built-in performance profiling tool for Unity applications](https://docs.unity3d.com/Manual/Profiler.html).
- **OVR Metrics Tool** - [Oculus VR metrics analysis tool](https://developer.oculus.com/documentation/tools/tools-ovrmetricstool/).
- **ovrgpuprofiler** - [GPU profiling tool for Oculus applications](https://developer.oculus.com/blog/gpu-profiling-with-oculus-tools/).
- **VrApi Logcat** - [Logging tool for VR applications, useful for debugging](https://developer.oculus.com/documentation/native/android/logcat/).
- **XRGizmos** - [Gizmos for XR development in Unity](https://github.com/darktable/XRGizmos).
- **Graphy** - [Performance monitoring tool for Unity applications](https://assetstore.unity.com/packages/tools/gui/graphy-ultimate-stats-monitor-debugger-105778).

## Packages & Services

- [OpenAI](https://github.com/srcnalt/OpenAI-Unity) - Integration of OpenAI services with Unity.
- [Ezy Slice](https://github.com/DavidArayan/ezy-slice) - Mesh slicing framework for Unity.
- **Unity third person character controller** - [Pre-built character controller for Unity](https://assetstore.unity.com/packages/essentials/characters/standard-assets-32351).
- **Unity Gaming Services (Netcode)** - [Networking services provided by Unity for game development](https://unity.com/products/multiplay).
- **ParrelSync (multiplayer)** - [Tool for synchronizing multiplayer sessions in Unity](https://github.com/VeriorPies/ParrelSync).
- **Unity Relay** - [Networking relay service for Unity games](https://unity.com/products/multiplay).
- **Unity Lobby** - [Lobby service for multiplayer games](https://unity.com/products/lobby).
- **Shadow Receiver URP** - [Universal Render Pipeline shadow receiver for Unity](https://assetstore.unity.com/packages/vfx/shaders/shadow-receiver-urp-188251).

## SDKs

- **Meta XR all-in-one SDK** - [Comprehensive SDK for developing Meta XR applications](https://developer.oculus.com/downloads/package/oculus-integration/).
- **Meta Building Blocks** - [Pre-built components for XR development](https://developer.oculus.com/documentation/unity/unity-prefabs-building-blocks/).
- **Meta Spatial SDK** - [Native Android Framework for Meta XR](https://developers.meta.com/horizon/develop/spatial-sdk)
- **MR Utility Kit** - [Utility kit for mixed reality development](https://github.com/microsoft/MixedRealityToolkit-Unity).
- **SteamVR** - [SDK for developing VR applications for Steam](https://store.steampowered.com/app/250820/SteamVR/).
- **Unity XR Interaction Toolkit** - [Toolkit for creating XR interactions in Unity](https://docs.unity3d.com/Packages/[email protected]/manual/index.html).
- **MRTK** - [Mixed Reality Toolkit by Microsoft](https://github.com/microsoft/MixedRealityToolkit-Unity).
- **VRTK** - [VR Toolkit for Unity, providing a range of tools and components](https://vrtoolkit.readme.io/).
- **HurricaneVR** - [VR interaction framework](https://assetstore.unity.com/packages/tools/physics/hurricane-vr-complete-physics-interaction-framework-182937).
- **AutoHandVR** - [Tool for hand interactions in VR](https://assetstore.unity.com/packages/tools/interaction-systems/autohand-physics-based-vr-interaction-186761).
- **VR Interaction Framework** - [Comprehensive framework for VR interactions](https://assetstore.unity.com/packages/templates/packs/vr-interaction-framework-178370).
- **VR Physics Player Controller** - [Physics-based player controller for VR applications](https://assetstore.unity.com/packages/tools/physics/vr-physics-player-controller-150258).
- **Portals for VR** - [Portal system for VR applications](https://assetstore.unity.com/packages/tools/portals/portals-169995).
- **Final IK** - [Inverse kinematics system for VR](https://assetstore.unity.com/packages/tools/animation/final-ik-14290).
- **VR Hand Models** - [Hand models for VR applications](https://assetstore.unity.com/packages/3d/characters/humanoids/vr-hands-121680).
- **Amplify Impostor** - [Impostor rendering system for Unity](https://assetstore.unity.com/packages/tools/terrain/amplify-impostors-119877).
- **Easy Save** - [Data saving tool for Unity](https://assetstore.unity.com/packages/tools/input-management/easy-save-the-complete-save-load-asset-768).
- **Aura 2** - [Volumetric lighting system for Unity](https://assetstore.unity.com/packages/tools/particles-effects/aura-2-volumetric-lighting-fog-202020).
- **RayFire** - [Destruction and fragmentation tool for Unity](https://assetstore.unity.com/packages/tools/modeling/rayfire-for-unity-148690).
- **Poly Universal** - [Universal assets for VR/AR development](https://assetstore.unity.com/packages/3d/environments/poly-universal-sci-fi-kit-176439).
- **Synty Studios** - [Provider of stylized assets for Unity](https://syntystore.com/).
- **Niantic Lightship** - [AR development platform by Niantic](https://lightship.dev/).
- **LOVR** - [Lua Virtual Reality Framework](https://github.com/bjornbytes/lovr)
- **AR Foundation** - [Unity framework for AR development](https://docs.unity3d.com/Packages/[email protected]/manual/index.html).
- **XR Hands** - [Hand tracking tools for XR applications](https://docs.unity3d.com/Packages/[email protected]/manual/index.html).
- **Meta XR interaction SDK OVR Samples** - [Sample projects for Meta XR](https://developer.oculus.com/resources/sample-apps-unity/).
- **Meta XR Haptics SDK** - [SDK for developing haptic feedback in XR](https://developer.oculus.com/documentation/unity/unity-haptics/).
- **Meta Avatars SDK** - [SDK for creating avatars in XR applications](https://developer.oculus.com/documentation/unity/unity-avatars-sdk/).
- **Meta Voice SDK** - [SDK for integrating voice interactions in XR](https://developer.oculus.com/documentation/unity/unity-voice-sdk/).

## Assets

- [Unity Asset Store](https://assetstore.unity.com/) - Marketplace for Unity assets.
- [Sketchfab](https://sketchfab.com/) - Repository of 3D models.
- [TurboSquid](https://www.turbosquid.com/) - Marketplace for 3D models.
- [Free3D](https://free3d.com/) - Free 3D models for various applications.
- [CGTrader](https://www.cgtrader.com/) - 3D model marketplace.
- **Pro builder** - [3D modeling tool for Unity](https://unity.com/features/probuilder).
- **Mixamo** - [Tool for 3D character animations](https://www.mixamo.com/).
- [Poliigon](https://www.poliigon.com/search/free) - 3D Assets and Textures
- [Kenney.nl](https://kenney.nl/) - Free game assets.
- [Ready Player Me](https://readyplayer.me/) - Avatar creation tool.
- **Character Creator** - [Tool for creating detailed 3D characters](https://www.reallusion.com/character-creator/default.html).
- **Oculus Lipsync** - [Lip sync tool for Oculus](https://developer.oculus.com/downloads/package/oculus-lipsync-unity/).
- **Meta 3DGen** - [Tool for generating 3D models](https://developer.oculus.com/downloads/package/oculus-3dgen/).
- [Luma AI](https://lumalabs.ai/) - AI-based tool for creating 3D models.
- **AR Foundation Remote** - [Remote testing tool for AR Foundation](https://assetstore.unity.com/packages/tools/utilities/ar-foundation-editor-remote-202080).
- **DoTween Pro** - [Tweening engine for Unity](https://assetstore.unity.com/packages/tools/animation/dotween-hotween-v2-27676).
- **Hologram Shaders Pro** - [Hologram shaders for Unity](https://assetstore.unity.com/packages/vfx/shaders/hologram-shaders-pro-155998).
- [InWorld.ai](https://inworld.ai/) - AI-based character behavior tool.
- **Live Script Reload** - [Live scripting tool for Unity](https://assetstore.unity.com/packages/tools/utilities/live-script-reload-201808).
- **Odin Inspector & Serializer** - [Advanced inspector and serialization tool for Unity](https://assetstore.unity.com/packages/tools/utilities/odin-inspector-and-serializer-89041).
- **Vour** - [VR asset creation tool](https://vour.co/).
- **SRDebugger** - [Debugging tool for Unity applications](https://assetstore.unity.com/packages/tools/gui/srdebugger-console-in-game-debug-tools-on-device-visibility-38153).
- **Stable Fast 3D** - [Rapid 3D Asset Generation From Single Images](https://platform.stability.ai/docs/api-reference#tag/Control/paths/~1v2beta~1stable-image~1control~1style/post)
- **Mesh Effects** - [Mesh effects tool for Unity](https://assetstore.unity.com/packages/vfx/particles/spells/mesh-effects-67803).
- **Pro Sound Collection** - [Sound effects collection for Unity](https://assetstore.unity.com/packages/audio/sound-fx/pro-sound-collection-50235).

## GitHub Projects

- [Oculus Samples](https://github.com/oculus-samples) - Sample projects provided by Oculus.
- [Unity Showcase](https://developer.oculus.com/documentation/unity/unity-showcases/) - Showcase of Unity projects.
- [AR Foundation Samples](https://github.com/Unity-Technologies/arfoundation-samples) - Sample projects for AR Foundation.
- [Mixed Reality Example for Meta-OpenXR](https://github.com/Unity-Technologies/mr-example-meta-openxr) - Example project for Meta-OpenXR.
- [First Hand](https://github.com/oculus-samples/Unity-FirstHand) - Hand interaction sample projects.
- [The World Beyond](https://github.com/oculus-samples/Unity-TheWorldBeyond) - Sample project for world-building in VR.
- [Phanto](https://github.com/oculus-samples/Unity-Phanto) - VR interaction sample project.
- [XR Interaction Toolkit Example](https://github.com/Unity-Technologies/XR-Interaction-Toolkit-Examples) - Example projects for XR Interaction Toolkit.
- [VR Beginner The Escape Room](https://assetstore.unity.com/packages/templates/tutorials/vr-beginner-the-escape-room-163264) - VR beginner tutorial project.
- [Scape Scraper](https://www.youtube.com/watch?v=QCvqimfrMZw&list=PLpEoiloH-4eM-fykn_3_QcJ-A_MIJF5B9&index=1&t=0s) - VR game development series.
- [Open Brush](https://github.com/icosa-foundation/open-brush) - Open-source VR painting application.
- [VR Alchemy Lab](https://github.com/Unity-Technologies/VRAlchemyLab) - VR interaction sample projects.
- [Move Fast](https://github.com/Unity-Technologies/mr-example-meta-openxr) - Mixed reality interaction sample project.
- [Whisperer](https://github.com/oculus-samples/voicesdk-samples-whisperer) - Voice SDK sample projects.
- [Ultimate Glove Ball](https://github.com/oculus-samples/Unity-UltimateGloveBall) - VR glove interaction sample project.

## Interesting Hardware

- **WEART Haptic Gloves** - [Advanced haptic feedback gloves](https://www.weart.it/).
- **Magic Leap 2** - [Mixed reality headset](https://www.magicleap.com/magic-leap-2).
- **Tilt Five AR Glasses** - [Augmented reality glasses](https://www.tiltfive.com/).
- **Logitech MX Ink pen** - [MR Stylus](https://www.logitech.com/en-us/products/vr/mx-ink.html).

## Books

- [Virtual Reality - Steven Lavalle](https://lavalle.pl/vr/) - Comprehensive guide to virtual reality, providing foundational knowledge and advanced techniques.
- [Interactive Computer Graphics - Edward Angel](https://tinnakorn.cs.rmu.ac.th/Courses/ComputerGraphic/Pearson.Interactive.Computer.Graphics.A.Top-Down.Approach.with.WebGL.7th.Edition.pdf) - Textbook on computer graphics with a focus on WebGL.

## Supporting Apple Vision Pro

- **Unity is building PolySpatial** to use Unity assets in Apple's headset.
- **URP and Standard Render Pipeline** are supported, including shader graphs for custom shaders.
- **Gaze interactor for eye tracking** is available.
- **Unity editor preview** is supported.
- **Signup for PolySpatial beta** to get early access.
- **Ensure Unity version 6 and above** for compatibility.

### Apple Vision Development on Xcode

- **Use the latest version of Xcode** with visionOS, and install Reality Composer Pro.
- **Familiarize with concepts from SwiftUI and RealityKit**.
- **Use the built-in simulator** to test applications.

## Quest 3 Mixed Reality

### Using Meta XR SDK

- **Ensure the headset is in developer mode**.
- **Create a passthrough component**:
- Set underlay placement.
- Remove the skybox in OVR rig.
- Enable passthrough support, Quest 3 in OVR manager.
- **Scene model**:
- Create a scene manager component on a game object.
- Add a plane and volume prefab to it.
- Enable scene support in OVRCameraRig.
- **Enable depth**:
- Create a new mixed reality depth material.
- Recommended: use Meta's depth API.
- **Shadows**:
- Create a texture and set it to the shadow material.
- Use a Raycast with the same layer mask as the scene's global mesh.
- Recommended: Use the shadow receiver custom shader and add that to the scene's plane, and enable shadow in all the mesh renderers.

## Use XR Interaction Toolkit

- **Ensure to use Unity version 6 and above**.
- **Install the dependencies**:
- XR Plugin Management
- XR Interaction Toolkit
- OpenXR Plugin
- AR Foundation
- meta-openxr
- **Configurations**:
- Enable Meta quest feature group.
- Disable auto graphics API, and set color space to linear, target architecture to ARM64, Vulkan above OpenGLES3.
- Disable terrain holes and HDR, post-processing.
- **Edit the project hierarchy**:
- Add AR Session.
- Add AR Plane Manager in XR Rig.
- Add AR Camera Manager and AR Camera Background in Main Camera, remove the skybox.
- **Customize the plane** by adding a plane prefab to the AR Plane Manager.
- **Anchor**:
- Add AR Anchor Manager to XR Rig.
- Add AR Anchor to the prefab.

## Industry Experts and Companies

Thanks to Robert Scoble for his valuable contribution. Here are the lists of VR/AR experts and companies curated by him:

- **VR/AR Experts**:
- [List 1 (550 people)](https://x.com/i/lists/733162578625449985)
- [List 2](https://x.com/i/lists/1786062895668974066)

- **Companies in XR**:
- [Companies List](https://x.com/i/lists/733277650085511168)

## Contribute

Contributions welcome! Read the [contribution guidelines](CONTRIBUTING.md) first.

Feel free to reach out to me on [Twitter/X](https://x.com/saurabhchalke) for any sort of help related to MR :)

-----