Scriptable Render Pipeline
Clone or download
Verasl and phi-lira Shader Cleanup LWRP (#2464)
* UI work on Lit, Simple Lit and Unlit.
Shader property cleanup

* Added Render queue offset to shaders
Started work on particle shaders

* all current features of the particle shaders now working

* Added distortion back into the particle shaders

* Updated more GUI work on the particle shaders

* Work on making the Shader GUI modular

* Continued making shader gui modular

* Updated shader GUIs
Added dedicated shader model GUI classes
Added dedicated shader GUI classes

* Fixed excessive GUI updating
Added particle unlit shaderGUI
Fixed unlit shaderGUI

* Added Baked Lit shader

* Disable queue offset for now
Fix queue order

* Chanted lit-shader.md according to Shader Gui updates

* Updated simple lit according to shader GUI updates

* Added preliminary baked-lit-shader.md

Added UI overview for Baked Lit shader, according to GUI changes.
Still needs minor fixes (Sample GI, Global Illumination, Normal Map)
Still need UI inspector screenshot.

* Updated UI property names + Unlit shader according to GUI changes

* Updated Upgrader
Assorted fixes and cleanup

* Added baked lit to shaderutils

* Added updater for LWRP materials

* Updated test materials

* Fixed Emission description

Fixed the description for Emission in both Lit and Simple Lit shader docs

* Removed Experimental namespace

* Shading model updates

* material postprocessor added

* Update shading-model.md

Updated Shading Model according to Doc Editor comments.

* Update shading-model.md

Updated links to Shader MD-files

* PR notes batch 1

- SampleSpecularGloss renamed to SampleSpecularSmoothness
- SimpleLit renamed _GlossinessSource > _SmoothnessSource
- Removed _SAMPLE_GI keyword from BakedLit shader
- Changed all shader include paths to be absolute paths
- Removed unused keywords from particle shaders

* Update baked-lit-shader.md

Updated Baked Lit according to Docs review.

* Update TableOfContents.md

Updated TableofContents to contain Baked Lit and Unlit shaders

* Updated Shader docs

Updated Lit, Simple Lit, Baked Lit and Unlit according to most recent Doc Editor review.

* PR Cleanup v1

Added Material Post-processor
Resolved most PR issues
Cleaned up upgraders

* More rework

- Changed how smoothness worked internally, on simple lit it is now embedded in the alpha of the respective color properties
- Disable smoothness channel option when in transparent surface mode and defaults back to specular/metallic alpha channel
- Added better debugging log for material upgrading
- Changed Face Culling > Render Face and the respective enum
- Fixed IgnoreProjector typo

* Shader Docs update

- Updated Lit, Simple Lit, Baked Lit and Unlit according to Docs editor comments
- Added Particles Lit, Particles Simple LIt, and Particles Unlit
- Updated LWRP Asset to reflect changes
- Updated ToC so microsite links to active Particle Shader Docs and Baked Lit

* Small fixes

- Made smoothness a single shared property
- Fixed stereo instanced rendering in Particle shaders
- SRP Batcher support for Particle shaders
- Added V1 material upgrader for testing

* More tweaks

- Added LWRP particle upgraders
- Fixes to LWRP standard shader upgraders
- Added missing obsolete particle properties for upgrading
- Added IsLWShader check to ShaderUtils
- Updated default Lit material to have versioning

* Updated Test Materials

all materials in LWRP test project now have versioning

* Updated tooltips and particle GUI

- Updated all shader tooltips
- Added tweaks to builtin particle shader upgrader
- Updated particle shaders GUI for soft particles and camera fade
- Removed MaterialUpdater as it is now obsolete
- Fixed missing distortion support on unlit particle shader

* Updated documentation images

* Particle fix for bug 1115833

* Bugfix

* Updated Changelog

* fixed typo in changelog

* Turned on Sorting Priority and added _MainTex cloning for GI

* Update Shader docs

- Updated Particle docs with split tables for Advanced features on Transparent materials
- Added Sorting Priority to all Shaders

* Documentation & Particle bugfix

-Updated shader inspector images in docs
-Added undo support for vertex stream fixing on particle shaders

* Docs updates

* Update CHANGELOG.md

* Moved SoftParticles Keyword to shader feature
Latest commit 76e9c96 Jan 21, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update CODEOWNERS Nov 19, 2018
TestProjects enable VisualEffectGraph tests for Metal/AMD [Wait for C++] (#2665) Jan 9, 2019
Tools Merge Hdrp/staging (#2216) Oct 18, 2018
com.unity.render-pipelines.core udpated changelog dates (#2731) Jan 14, 2019
com.unity.render-pipelines.high-definition Reenabled frame statistics in playmode from Debug UI (#2777) Jan 18, 2019
com.unity.render-pipelines.lightweight Shader Cleanup LWRP (#2464) Jan 21, 2019
com.unity.shadergraph blackboard in SG remember expanded states (#2542) Jan 21, 2019
com.unity.testframework.graphics udpated changelog dates (#2731) Jan 14, 2019
com.unity.testing.srp.lightweight Shader Cleanup LWRP (#2464) Jan 21, 2019
com.unity.visualeffectgraph Fix speedrange expression access (#2755) Jan 16, 2019
.collabignore HDRenderLoop: Last commit miss a shader file, so disable code temporary Nov 24, 2016
.editorconfig Add editorconfig Aug 24, 2017
.gitattributes Remove large files. Jun 18, 2018
.gitignore Hdrp/resolve tech dept due to new CED (#2486) Dec 4, 2018
.gitmodules Remove pp submodule (#1770) Jul 24, 2018
CONTRIBUTING Update filename of CONTRIBUTING Jun 7, 2018
CONTRIBUTIONS.md Re-add Contributions Jun 7, 2018
LICENSE.md Update licenses and add CONTRIBUTIONS Apr 25, 2018
README.md Added clearer info about bug reporting (#2295) Nov 13, 2018
build.py fix bad build config (#2475) Nov 20, 2018
issue_template.md Upload a issue_template.md file Jun 7, 2018

README.md

NOTE: We have migrated reported issues to FogBugz. You can only log further issues via the Unity bug tracker. To see how, read this.

Unity Scriptable Render Pipeline

The Scriptable Render Pipeline (SRP) is a new Unity feature in active development. SRP has been designed to give artists and developers the tools they need to create modern, high-fidelity graphics in Unity. Including a built-in Lightweight Render Pipeline for use on all platforms, and a High Definition Render Pipeline (HDRP) for use on compute shader compatible platforms. These features are available in Unity 2018.1+.

We are committed to an open and transparent development process, and as such you are welcome to take a look around if you are really curious.

Detailed documentation is being added here: Wiki

This feature is currently in preview. Some features may change or be removed before we move to a full release.

Lightweight Pipeline Blogpost

High Definition Pipeline Blogpost

The High Definition Render Pipeline: Getting Started Guide for Artists

How to use the latest version

Note: The Master branch is our current development branch and may not work on the latest publicly available version of Unity. To determine which version of SRP you should use with your version of Unity, go to Package Manager (Window > Package Manager) to see what versions of SRP are available for your version of Unity Editor. Then you can search the Tags tab of the Branch dropdown in the SRP GitHub for that tag number. To use the latest version of the SRP, follow the instructions below:

This repository consists of a folder that should be cloned outside the Assets\ folder of your Unity project. We recommend creating a new project to test SRP. Do not clone this repo into an existing project unless you want to break it, or unless you are updating to a newer version of the SRP repo.

After cloning you will need to edit your project's packages.json file (in either UnityPackageManager/ or Packages/) to point to the SRP submodules you wish to use. See: https://github.com/Unity-Technologies/ScriptableRenderPipeline/blob/master/TestProjects/HDRP_Tests/Packages/manifest.json

This will link your project to the specific version of SRP you have cloned.

You can use the GitHub desktop app to clone the latest version of the SRP repo or you can use GitHub console commands.

To clone the repo using the GitHub Desktop App:

  1. Open the GitHub Desktop App and click Clone a Repository.
  2. Click the URL tab in the Clone a Repository window
  3. Enter the following URL: https://github.com/Unity-Technologies/ScriptableRenderPipeline
  4. Click the Choose… button to navigate to your project’s base folder.
  5. Click the Clone button.

After the repo has been cloned you will need to run the following console commands from the ScriptableRenderPipeline folder:

> git checkout Unity-2018.1.0b2 (or the latest tag)

To download the repo using console commands:

Enter the following commands in your console application of choice:

> cd <Path to your Unity project>
> git clone https://github.com/Unity-Technologies/ScriptableRenderPipeline
> cd ScriptableRenderPipeline
> git checkout Unity-2018.1.0b2 (or the latest tag)

Scriptable Render Pipeline Assets

The Scriptable Render Pipeline Asset controls the global rendering quality settings of your project and creates the rendering pipeline instance. The rendering pipeline instance contains intermediate resources and the render loop implementation.

You can create multiple Pipeline Assets to store settings for different built platforms or for different testing environments.

To create a Render Pipeline Asset:

  1. In the Project window, navigate to a directory outside of the Scriptable Render Pipeline Folder, then right click in the Project window and select Create > Render Pipeline > High Definition or Lightweight > Render Pipeline/Pipeline Asset.
  2. Navigate to Edit > Project Settings > Graphics and add the Render Pipeline Asset you created to the Render Pipeline Settings field to use it in your project.

Note: Always store your new Render Pipeline Asset outside of the Scriptable Render Pipeline folder. This ensures that your settings are not lost when merging new changes from the SRP repo.

Using the High Definition Render Pipeline (HDRP) or the Lightweight Pipeline

Using HDRP

To use HDRP you must edit your project’s Player and Graphics settings as follows:

  1. Navigate to Edit > Project Settings > Player and set the color space of your project to Linear by selecting Linear from the Color Space dropdown. HDRP does not support Gamma lighting.
  2. In the Project window, navigate to a directory outside of the Scriptable Render Pipeline Folder, then right in click the Project window and select Create > Render Pipeline > High Definition > Render Pipeline.
  3. Navigate to Edit > Project Settings > Graphics and add the High Definition Render Pipeline Asset you created to the Render Pipeline Settings field.

Note: Always store your High Definition Render Pipeline Asset outside of the Scriptable Render Pipeline folder. This ensures that your HDRP settings are not lost when merging new changes from the SRP repo.

Using Lightweight Pipeline

To use the Lightweight Pipeline you must edit your project’s Graphics settings as follows:

  1. In the Project window, navigate to a directory outside of the Scriptable Render Pipeline Folder, then right click in the Project window and select Create > Render Pipeline > Lightweight > Pipeline Asset.
  2. Navigate to Edit > Project Settings > Graphics and add the Lightweight Render Pipeline Asset you created to the Render Pipeline Settings field.

Note: Always store your new Render Pipeline Asset outside of the Scriptable Render Pipeline folder. This ensures that your Lightweight settings are not lost when merging new changes from the SRP repo.

Sample Scenes in ScriptableRenderPipelineData

If you want some sample scenes to use with SRP, you can find them at the ScriptableRenderPipelineData GitHub repository.

Clone the repo into your project's Assets\ folder.

Previous iterations of the ScriptableRenderPipeline repo owned this sample scene data, in case you noticed it before, and wondered where it went.