Setting up a Unity Project for the High Definition Render Pipeline (HDRP)
If you have an existing Unity project that you want to finish off in the HDRP, this is the place to start.
First of all, I exported my game scene as a Unity Package. You can do this by right clicking on the scene in the Projects folder (in Unity), and then selecting the export package option.
In Unity Hub, a new project is created using Unity 2020.3.5.
Select the High Definition RP template, name your project and then select a save location on your hard drive.
The Hierarchy should look like this upon loading the default HDRP template.
There is a first person controller automatically setup, so you can push play right away and move through the default Unity game scene!
To import the Unity package for your project, simply drag and drop it into the Project folder.
You will see some options as far as what assets you want to include or exclude in the import.
I am using the Filebase asset library by GameDevHQ. If you are doing the same, I find it helps to import Filebase directly into your project, rather than bringing it in through the exported Unity package. You will avoid some potential errors, as well as ensure you can quickly auto-upgrade the materials to be HDRP materials.
After importing, the assets as well as the game scene appear in the Project folder. Double click on the scene to load it.
The imported scene comes in hot…like hot pink! Not to worry, this is just Unity’s way of telling you that your materials need to be upgraded to be HDRP materials. To quickly upgrade your materials, navigate to Edit>RenderPipeline>HD Render Pipeline>Upgrade from Built-in Pipeline>Upgrade Project Materials to High Definition Materials. This should take care of most if not all of your material upgrades automatically. If there are any pesky materials that remain pink, you can try selecting the material in the Project folder, and then take the same Edit path only ending on the Upgrade Selected Materials option. If all else fails, you can manually change the shader on the material to be HDRP. When that happens though, texture maps will become detached, so you will need to reassign them in the inspector on the material. HDRP Lit is the option to choose when you need to assign emission and normal maps to your materials.
If you are using Filebase, now is a good time to open it to make sure everything loads ok.
You should see a message about having 0 downloads near the top. Click that and choose the rescan option, which will send Filebase looking through your assets folder specifically for Filebase assets, so it can reconnect with them.
Once the materials are finished upgrading to HDRP materials, your game scene should be back to normal. Here the roof has ben removed to let in some mid-day sunlight.
Looking over the Shader on the upgraded materials shows me that they all have been reassigned to the HDRP/Lit option. If you have a glass material that doesn’t look right, the Surface Type option might need to be changed from Opaque to Transparent.
If you do need to reassign things manually, you can see here where the Base Map and Normal Maps get assigned. The Mask Map was auto-generated when I upgraded the materials.
Just below Surface Inputs are Emission Inputs. This is where the emission map can be assigned if you have one.
The Mask Map holds different values within it’s RGB channels. Here is a reference shot from the Unity documentation regarding what each channel represents.
I have imported some cool grey/blue textures that I created when moving through the URP setup. I can now assign those to all of my room material Base Maps to change the color of the walls and floors.
I also have some emission maps that were created during my run through the URP, so I also assign those now.
Ahh..there is the cool silvery game environment I was looking for. I am now all setup and ready to go in Unity with the HDRP. I hope you found this guide helpful for setting up your own projects, and thanks for reading!