C# ShaderLab Other
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
Action Maps WIP on proxyanimator Sep 29, 2017
Actions Register undo on object creation/destruction in CreatePrimitiveTool, … Dec 4, 2017
Editor Fix tests Dec 11, 2017
Fonts Clean up text issues in Inspector and Hierarchy Jun 26, 2018
Manipulators Reserialized assets Nov 22, 2017
Menus Upgrade numeric keyboard to TextMeshPro; Jun 25, 2018
Models Fix issue if scene camera clear flags are set to Nothing; Dec 8, 2017
Prefabs Upgrade numeric keyboard to TextMeshPro; Jun 25, 2018
Scripts Bring back code that destroys MouseInputToEvents since it doesn't wor… Aug 14, 2018
Shaders Modify fog shader to prevent workspace frame drawing on top of content; Nov 29, 2017
Tests Remove additional newline between variable declaration & if statement… Jul 13, 2018
Tools PR changes; micro-optimizations in Ring.cs; Disable inactive renderer… Aug 16, 2018
UndoPatch Add undo patch for 2018.1.0f1 Jun 28, 2018
Workspaces Perform minor cleanups to dev/trunk found after recent dev merges Jul 13, 2018
libs Fix inconsistent line endings Nov 30, 2017
.gitattributes Add SDF fonts to LFS storage Nov 13, 2017
.gitmodules Add tabs Mar 8, 2017
Action Maps.meta Create SixenseProxy class Jun 13, 2016
Actions.meta Fix a bunch of menu visibility bugs; Clean up action interfaces Oct 19, 2016
AssemblyInfo.cs Resharper->Edit->Reformat Code (Actions) Oct 9, 2017
AssemblyInfo.cs.meta Make Assembly-CSharp internals visible to Assembly-CSharp-Editor to f… Jan 11, 2017
Editor.meta Refactor BaseHandle's events; Add HandleFlags; Fix naming to match co… Aug 29, 2016
Fonts.meta Move required fonts into EditorVR folder Oct 6, 2016
LICENSE Use the new UCL template Mar 13, 2018
LICENSE.meta Add LICENSE.meta Jan 4, 2017
Manipulators.meta Add comment on AssetGridItem.Magnetize; Rename listClipFrag to listCl… Sep 16, 2016
Menus.meta Move menus out of Tools folder Dec 7, 2016
Models.meta Create SixenseProxy class Jun 13, 2016
Prefabs.meta Renamed and set up Mouse action map; Aug 14, 2018
README.md Add reference to new UCA Mar 12, 2018
README.md.meta Add README meta Jan 9, 2017
Scripts.meta Create SixenseProxy class Jun 13, 2016
Shaders.meta Renamed and set up Mouse action map; Aug 14, 2018
Tests.meta Add CCU test Jan 10, 2017
Tools.meta Reorganize tool folder to be separate from rest of system Jun 30, 2016
UndoPatch.meta Include a patched UnityEngine.CoreModule.dll for 2017.2.0p1, along wi… Dec 5, 2017
Workspaces.meta Refactor Chesboard/ChessboardRenderer to MiniWorld/MiniWorldRenderer Aug 8, 2016
libs.meta Add ray to proxy hands using VRLineRenderer, add VR.Proxies.Node enum Jun 18, 2016



Author XR in XR - Initial public release was on December 15, 2016 via blogpost

Experimental Status

It’s important to note that EditorXR is an experimental feature. As such, there is no formal support (e.g. FogBugz, support@unity3d.com, Premium Support, etc.) offered, so please do not use these channels. Instead, take your questions, suggestions, comments to our dedicated forum.

To help ensure you have a good experience, and to help us answer your questions (hey, we’re a small team!), we encourage you to try it out first with a small VR-ready scene. Please use life-sized objects, nothing too big or small. Dive in and have fun just playing around, instead of trying to use your existing project.

As with any experimental/preview/alpha/beta build, it is always a good idea to make a backup of your project before using the build.

Experimental means this:

  • We're still adding features!
  • The current menus, tools, workspaces, actions, etc. are not the end-all-be-all. Each of these have individual designs that will change as we experiment with what works best for UX. EditorXR was designed in such a way that we plan on you being able to replace all of these defaults, too, if you so desire.
  • Namespaces, classes, software architecture, prefabs, etc. can change at any point. If you are writing your own tools, then you might need to update them as these things change.
  • There won’t always be an upgrade path from one release to the next, so you might need to fix things manually, which leads to the next point...
  • Stuff can and will break (!)
  • There’s no guarantee that this project will move out of experimental status within any specific timeframe.
  • As such, there is no guarantee that this will remain an actively supported project.

Getting Started

If you've made it here, but aren't accustomed to using GitHub, cloning repositories, etc. and are simply looking to give EditorXR a spin, then take a look at the Getting Started Guide. Once you're up and running we recommend you join the discussion on the EditorXR forum.

For Software Developers

If you're a developer, we recommend that you take a look at the Getting Started Guide and the companion document Extending EditorXR. You'll need to clone the repository into an existing project using the instructions below.

Git Dependencies

Project Asset Dependencies


  1. Create a new Unity project or use an existing one
  2. From the command line change directory to your project's Assets directory.
  3. Run git lfs clone --recursive -b development https://github.com/Unity-Technologies/EditorXR (Use HTTPS!)


Because this project uses git-submodule, you'll need to execute git submodule update after pulling whenever a submodule is updated. You could execute this command always just to be safe or if you notice that a submodule is showing as modified after pulling changes.

Optionally, you could add a git hook for post-checkout or use a GUI (e.g. SourceTree) that does this automatically for you.

Project Settings

If you plan on making changes to EditorXR and/or contributing back, then you'll need to set the Asset Serialization property under Edit->Project Settings->Editor to Force Text.

We're using #if UNITY_EDITOR for now in order to keep our code out of your player builds. We will eventually explore a possible overlap between EditorXR and player builds. We recommend you do the same for your tools if you plan to distribute them to others.

All contributions are subject to the Unity Contribution Agreement (UCA)

By making a pull request, you are confirming agreement to the terms and conditions of the UCA, including that your Contributions are your original creation and that you have complete right and authority to make your Contributions.