A Unity template for developing Mixed Reality (MR) applications on PICO4 and PICO4 Ultra devices.
This repository provides a ready-to-use Unity project template specifically designed for Mixed Reality application development on PICO4 and PICO4 Ultra devices. The template includes pre-configured settings, essential packages, and a GitHub Actions workflow for automated builds.
- Unity 6000.0.48f1 - Latest LTS Unity version
- PICO Unity OpenXR SDK - Official PICO development SDK
- XR Interaction Toolkit - Unity's XR interaction framework
- AR Foundation - Cross-platform AR development
- Universal Render Pipeline (URP) - Optimized rendering for mobile VR/AR
- Input System - Modern input handling
- GitHub Actions - Automated Android build pipeline
For detailed setup instructions and development guide, please refer to the comprehensive tutorial on Qiita:
📖 PICO4/4Ultra MR App Development Setup Guide
- Clone or download this repository
- Open in Unity 6000.0.48f1 or later
- Follow the Qiita tutorial for detailed PICO development environment setup
- Build and deploy to your PICO4/4Ultra device
This template includes a GitHub Actions workflow for automated Android builds. The workflow automatically triggers on pushes to the main branch and can also be manually executed.
If you want to use the automated build feature:
- Fork this repository to your GitHub account
- Set up the following Secrets in your repository settings:
UNITY_LICENSE- Your Unity license file content (see below)UNITY_EMAIL- Your Unity account emailUNITY_PASSWORD- Your Unity account password
To run Unity on GitHub Actions, you need a Unity license file (.ulf), even for Personal licenses.
The Unity license file can be found at the following locations:
- Windows:
C:\ProgramData\Unity\Unity_lic.ulf - Mac:
/Library/Application Support/Unity/Unity_lic.ulf - Linux:
~/.local/share/unity3d/Unity/Unity_lic.ulf
- Copy the content of your Unity license file
- In your forked repository, go to Settings > Secrets and variables > Actions
- Create a new secret named
UNITY_LICENSE - Paste the license file content as the secret value
For detailed instructions on Unity license activation for CI/CD, refer to the official GameCI documentation: 🔗 GameCI Unity Activation Guide
Assets/
├── Scenes/
│ └── SampleScene.unity # Main scene with basic MR setup
├── Settings/ # XR and project settings
├── XR/ # XR-related assets and configurations
├── XRI/ # XR Interaction Toolkit assets
└── Resources/ # Runtime resources
Packages/
└── manifest.json # Package dependencies including PICO SDK
.github/
└── workflows/
└── android-debug-build.yml # GitHub Actions build workflow
This template includes the following key packages:
- PICO Unity OpenXR SDK (v1.4.0) - Official PICO development framework
- XR Interaction Toolkit (v3.2.0) - Unity's XR interaction system
- AR Foundation (v6.2.0) - Cross-platform AR development framework
- XR Hands (v1.6.0) - Hand tracking support
- OpenXR (v1.14.3) - Open standard for XR applications
- Universal Render Pipeline (v17.0.4) - Optimized rendering pipeline
- Input System (v1.14.0) - Modern input handling system
This template supports HDR (High Dynamic Range) and Post Processing effects (such as Bloom) on PICO4 devices through a workaround using the Unity OpenXR Meta package.
- HDR Support: Enable HDR rendering while maintaining passthrough functionality
- Post Processing: Apply visual effects like Bloom, Color Grading, and more
- URP Integration: Works seamlessly with Universal Render Pipeline
To enable HDR and Post Processing in your PICO4 MR application:
-
Camera Settings:
- Enable
Post Processingon the Main Camera - Enable
HDRon the Main Camera
- Enable
-
URP Settings:
- Set HDR Precision to
64 Bits - Enable
Alpha Processingin Post Processing settings
- Set HDR Precision to
-
Meta OpenXR Package:
- Install Unity OpenXR Meta package (required even for PICO devices)
- Apply the passthrough initialization patch - see Meta OpenXR Patch Guide
-
Android Settings:
- Set Target API Level to
32or higher
- Set Target API Level to
-
Post Processing Volume:
- Add a Global Volume to your scene
- Configure desired effects (Bloom, Tonemapping, etc.)
For comprehensive step-by-step instructions, including troubleshooting and advanced configurations, refer to the Post Processing guide on Qiita:
📖 PICO4 Ultra MR App Development - Post Processing Guide
- This workaround is not an official PICO solution and should be used at your own discretion
- The Meta OpenXR package requires a patch to ensure proper passthrough initialization order
- Always test thoroughly on actual PICO4/4Ultra devices as behavior may differ from Unity Editor
- Development Environment: Follow the Qiita setup guide to configure your development environment
- Scene Setup: Start with the included
SampleScene.unitywhich contains basic MR components - Build Settings: The project is pre-configured for Android builds targeting PICO devices
- Testing: Deploy to your PICO4/4Ultra device for testing
- Unity 6000.0.48f1 or later
- PICO4 or PICO4 Ultra device
- Android SDK for building
- PICO Developer Account for device development setup
Feel free to submit issues and enhancement requests. This template is designed to be a starting point for PICO4 MR development.
This project is licensed under the MIT License - see the LICENSE file for details.
- 📖 Setup Guide (Qiita)
- 📖 Post Processing (HDR) Guide (Qiita)
- 🔗 PICO Developer Documentation
- 🔗 Unity XR Interaction Toolkit
- 🔗 GameCI Documentation
Happy MR Development! 🥽✨