Skip to content
A new SRP from scratch
Branch: master
Clone or download
Latest commit 631712c Apr 22, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Assets reflection probe data reset when SRP batcher is on Apr 21, 2019
Packages update to 2019.1 release Apr 18, 2019
ProjectSettings fix player build Apr 21, 2019
READMEImages update image Apr 22, 2019
.gitignore basic pipeline Feb 8, 2019
README.md update readme Apr 22, 2019

README.md

CustomSRP

A new SRP from scratch

Unity version : 2019.1.0f1
Tested with : Win DX11, Mac Metal

Scene Image Description
SRP0101_Basic Super basic SRP that renders unlit material objects
SRP0102_AssetSettings Let the SRP Asset to pass some custom variables
SRP0103_CustomGUI Have a proper interface for the SRP Asset
SRP0201_FrustumCulling Frustum culling always work. This is a test scene to verify the culling results
SRP0202_OcclusionCulling Baked Occlusion Culling always work also. This is jsut a test scene to verify it
SRP0301_Batching Use Static Batching, Dynamic Batching, GPU Instancing and SRP Batcher
SRP0401_NoSpecificPass To draw the shaders that do not have a tag, e.g. default Unlit shaders
SRP0402_Multipass In SRP we need to specify the pass names, so no more infinite pass. But we can specify the orders of passes
SRP0403_Compute Use compute shader to achieve simple edge detection
SRP0404_DrawCommands using CommandBuffer functions (DrawMeshInstancedIndirect)
SRP0405_Callback Make your custom callback function so that you can insert extra rendering code with other scripts
SRP0501_SoftParticle Setup CameraDepthTexture to achieve soft-particle effect
SRP0502_Distortion No more grab pass but we can implement our own
SRP0101_Fog Use Fog on Lighting Settings
SRP0601_RealtimeLights Directional / Point / Spot lights and setup PerObject light data
SRP0602_BakedLights Baked Lightmap / Reflection Probe / Light Probes and setup PerObject data for them
SRP0603_RealtimeShadowDirectional Directional light realtime shadow
SRP0701_HDR_MSAA Use HDR and MSAA
SRP0701_Stencil In order to use stencil, we need the render target having at least 24bit depth. This case we use the same pipeline with 0701
SRP0702_Postprocessing This shows you how to use Postprocessing Stack with SRP (transparent effects e.g. Bloom, Depth of Field)
SRP0703_MotionVector Make motion blur works. Use per-object and camera motion vector
SRP0801_UGUI Use UICamera to render UGUI, also render 3D objects and particle on UI
SRP0802_RenderPass Use RenderPass to target multiple color attachments and read / write from / to them
SRP0803_MultiRenderTarget Use CommandBuffer.SetRenderTarget() to target multiple color surfaces
SRP0901_SceneViewFix Make the gizmos / icons appear on scene view
SRP0902_SceneViewDrawMode Adding custom Scene View draw modes
SRP1001_Error Render the pink shaders on the materials that the SRP doesn't support
SRP1002_Debug Make the Profiler records the timing for SRP performance debugging
SRP1003_DefaultShaders Set pipeline default materials when creating new material / objects / particle / terrain etc

References:
My messy custom SRP study for Unity2018.3
SRPFromScratch by pbbastian
Siggraph 2018 SRP presentation by Matt Dean
Custom Pipeline by Catlike Coding
LWRP & HDRP

You can’t perform that action at this time.