Make a backup of any projects before upgrading to URP, the new project is not reversible. Projects previously made with Post Processing Stack must remove all the PPS elements, uninstall PPS through the Window->Package manager. Projects made with HDRP are not compatible.
The real-time lighting is limited, the only light that can cast shadows in realtime is the directional light. Directional lights work by angling the light, not by position. No more than one light can cast shadows unless you bake the lights, this adds a lot of time to the render baking..
WebGL publish works with URP, but Post Processing is much faster to set up and can look better. Not to mention, it takes too long to bake with URP. You do not need to bake Post Processing.
URP Render, WebGL 1.0 there is no anti-aliasing, Guy Debord model from McKenzie Wark
Maya modeling suggestions:
Keep inner floors, ceilings and walls separate. Combine outer walls. Use Mesh->Triangulate all models.
UV Settings for models in Maya: (especially if you see light map UV errors.)
Select your object
Percentage space: .5
Select Window->Package Manager
Select Universal RP
Select Install (wait)
Select Shader Graph (This was automatically installed with URP)
Select Procedural Patterns click Import into project.
Create a URP Pipeline Asset
Select Assets->Create->Rendering->Universal Render Pipeline->Pipeline Asset
This creates UniversalRenderPipelineAsset and UniversalRenderPipelineAsset_Renderer in Assets.
Add the URP Asset to your Graphics Settings
Select Edit->Project Settings...
Under Scriptable Render Pipeline Settings add UniversalRenderPipelineAsset
Uncheck all Levels except Ultra
Under Rendering change none to UniversalRenderPipelineAsset
Select Edit->Render Pipeline->Universal Pipeline->Upgrade Project Materials to UniversalRP Materials
(This is not reversible.)
Add a Post-process Volume
Select Game-Object->Volume->Global Volume
Name it Post-process Volume
In the Inspector click New
Click Add Override
Click the right arrow and select a Post-processing filter such as:
Check Threshold 1
Check Intensity 2+, try 20
Lift Gamma Gain
Adjust the slider
Select your Camera
Set FOV Axis to Horizontal
Select Post Processing
Select Anti-aliasing->Fast Appoximate Anti-aliasing
Select your Directional light
Keep Mode set to Mixed (default Mixed, this light does not like to be baked.)
Lower the Strength of your Realtime Shadows to make them lighter (default 1)
Change Near Plane to .1 (default .2)
When you use a Point Light the Mode should be Baked for shadows.
Make a new SkyBox
In the Inspector change the Shader to Skybox/Procedural
Play with the color settings
Select Window->Rendering->Lighting Settings (Or click the button lower right of screen.)
Change the Skybox Material to your new SkyBox
(Leave Baked Global Illumination checked)
Change Mixed Lighting to Baked Indirect (default Shadowmask)
Change Indirect Samples to 256 (default 512)
Change Environment Samples to 256 (default 512)
Change Lightmap Resolution to 32 (default 40)
Change Lightmap Size to 1024
Select Ambient Occlusion (This adds light map baking time)
Change Direct Contribution to .3 (default 0)
Change Directional Mode to Non-Directional (default Directional)
Change Density to .04 (default .01)
Universal Render Pipeline Settings
Select the UniversalRenderpipelineAsset from your Assets
Use the Inspector to change:
Turn on HDR
Change Anti Aliasing (MSAA) to 8x (default none)
Select Cast Shadows
Set Shadow Distance to 40 (default 50)
Change Cascades to Two Cascades
Select Soft Shadows
Add Light Bounce Calculations to Walls and large objects
For indoor scenes, choose any large objects, walls, ceilings, floors
Select Contribute Global Illumination
This effect needs to baked, expect long wait times..
Do not make your objects Static, this tool will do it automatically. Static will cause more baking than you want.
You may need to re-work the UV mapping on these objects for the Global Illumination lightmaps, you will see error messages in the Inspector.
In Maya: Adjust UV Settings
Select your object
Percentage space: .5
If you are not using SteamVR this is a nice script to WASD,QE and mouse rotate the camera.
PC: Right mouse Extract All... to unzip
Place in your Assets folder.
Drag and drop the script onto your camera
Publish to WebGL 1.0
You can put this folder on a website server and access via the internet
Select File->Build Settings...
Select Player Settings...
Select Player section
Under Resolution and Presentation
Select Minimal WebGL Template
Under Other Settings
Change Color Space to Gamma (Linear which makes WebGL 2.0 does not work with Safari and Explorer.)
Select Auto Graphics API
Close the Project Settings window
Select Switch Platform
Select Build And Run button
Create a new folder outside of your Unity project, name it
Save to the folder...
WebGL 1.0 works on all platforms, URP does not publish anti-aliasing or Post Processing Effects with WebGL 1.0.
WebGL2.0 will not play in Safari or Explorer, it does work in Chrome and Firefox. If you want all browsers to have anti aliasing and effects, use Post Processing rather than URP.