Git Product home page Git Product logo

scriptablerenderpipeline's Introduction

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. We hope to release both of these versions in beta with Unity version 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, but we cannot provide support for this feature yet.

For a more detailed overview of the planned features and philosophy behind SRP, refer to the following Gdoc: ScriptableRenderPipeline

This feature is currently a work in progress. We cannot promise that features will work as expected in their current state. Some features may change or be removed before we move to a full release.

Lightweight Pipeline Blogpost

High Definition Pipeline Blogpost

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. You should always use the latest release tag and latest Unity beta version for testing purposes. To use the latest version of the SRP, follow the instructions below:

This repository consists of a folder that needs to be placed in 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. Your project's packages.json file (in either UnityPackageManager/ or Packages/) does not have a dependency on any of the packages in this repository or the contained submodules.

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 Asset 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)
> git submodule update --init (This command fetches the Postprocessing module, which is needed to use SRP)

To download the repo using console commands:

Enter the following commands in your console application of choice:

> cd <Path to your Unity project>/Assets
> git clone https://github.com/Unity-Technologies/ScriptableRenderPipeline
> cd ScriptableRenderPipeline
> git checkout Unity-2018.1.0b2 (or the latest tag)
> git submodule update --init (This command fetches the Postprocessing module, which is needed to use SRP)

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, likely alongside your ScriptableRenderPipeline clone folder. You can use the same cloning process as described above for the main ScriptableRenderPipeline repo.

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

scriptablerenderpipeline's People

Contributors

sebastienlagarde avatar evgeniig avatar julienignace-unity avatar phi-lira avatar fredericv-unity3d avatar chman avatar remyunity avatar robbiesri avatar fredpointzero avatar mmikk avatar uygar3d avatar paulm-unity avatar lou-andreev avatar stramit avatar pbbastian avatar aras-p avatar johnpars avatar aleks01010101 avatar alexlian avatar tlaedre avatar arnaudcarre avatar verasl avatar keijiro avatar aet avatar wadarass avatar notrobsheridan avatar lyndon-unity avatar joeldevahl avatar pauldemeulenaere avatar salvadorj avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.