This document describes how to use HDRP Volume Post-Process Pack (hereafter "This package").
Demo scenes in this package require the project derived from 3D Sample Scene (HDRP) .
This package is based on Volume framework.
Please refer to the following link.
https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@12.1/manual/Volumes.html
Click the "+" button of the left top of a hierarchy view, and select
Volume > Global Volume
A GameObject will be created and that has a Volume component.
View that in a Inspector view.
The Mode property defines the range of influence of the effect.
When Global, it renders effects anywhere.
When Local, it renders effects if a main camera is inside the collider of the volume GameObject.
Volume component needs one Profile that define how to render the scene.
This package contains various preset profiles so you can use these immediately to add a single Post Process.
Click Profile field and select a profile from the list.
Open project setting window from Unity menu
Edit > Project settings…
The setting window will open, so select the HDRP Global Settings section in left side.
Scroll right pane down and find the After Post Process section of Custom Post Process Orders.
Click the "+" button of right down of the section, and select the post process name you added to the Volume GameObject.
This step is a must!
Don't forget to process above step on each Post Process.
link:
https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@12.1/manual/Custom-Post-Process.html#effect-ordering
icon means the property can be modified by Timeline.
Multifunctional Vignette.
Property | Description |
---|---|
masterVolume | effects the overall effect amount. |
Intensity | vignette intensity. mainly effects the radius of vignette. determine the upper limit of blank radius (multiply by masterVolume). |
Type | type of vignette. refer next section. |
Gradation Power | how the gradient is applied |
Center UV | vignette center position in UV coordinates |
Aspect Ratio | aspect ratio of the vignette blank |
Color | vignette color |
Type property determines vignette execution type.
Simple Mask or Mixed Mask mode has more specific properties.
Property | Description |
---|---|
Mask Texture | texture used as vignette mask |
Rotation | blank rotation |
Inverse Alpha | inverse alpha value of Mask Texture |
Scale | mask blank scale |
Mask Reduction Ratio | blank reduction factor proportional to intensity |
a texture you want can be overrided
Property | Description |
---|---|
texture | a texture to override |
Texture Scroll Vector | simple scroll vector |
Texture Color | added to texture surface color |
Use Texture Alpha | use alpha value of the texture. if toggled of, alpha value can be determine by slider |
Texture Scale | texture scaling |
Texture Offset | offset |
Offset Time | texture scroll offset |
This is one of the most variable effect of this package.
Blend textures and render complex effects.
This effect need a FlexibleNoiseSetting asset derived from ScriptableObject.
This package contains some preset assets, so at first you set one of them to the volume and check how it works.
Click "preview" button to play the effect preview on Unity editor without entering play mode.
Click "New" button of the volume, and select the file path to save a new asset.
Define blank space of this effect.
Same to Advanced Vignette.
Main surface of the effect.
Prepare a texture that shows the looping pattern.
Property | Description |
---|---|
texture | a texture to override |
Texture Scroll Vector | simple scroll vector |
Texture Color | added to texture surface color |
Use Texture Alpha | use alpha value of the texture. if toggled of, alpha value can be determine by slider |
Texture Scale | texture scaling |
Texture Offset | offset |
Offset Time | texture scroll offset |
Surface Threshold | alpha value to judge for blending color of the surface |
Edge Threshold | alpha value to judge for blending color of the edge |
Edge Color | blend color for the pixel that has alpha value below the Edge Threshold |
This texture uses only alpha value.
Blend that with surface and make random opacity.
Distorts the image according to the noise texture.
This effect needs a special texture created from Height map. Creation process will be executing inside Unity editor when the "Generate Noise Map" button clicked.
These property are used only in Editor.
When any height map not set, parlin noise will be used automaticaly. So you can setup this effect with no height map.
** about height map ** https://docs.unity3d.com/Manual/StandardShaderMaterialParameterHeightMap.html
Property | Description |
---|---|
Source Height Map | a source texture used by noise texture creation process. |
Output Texture Size | output texture size |
Bake Noise Scale | output texture scale of detail |
Noise Roughness Magnification | setting a bigger value results in a large slope in a output noise texture |
These properties effects runtime rendering.
Property | Description |
---|---|
Intensity | Noise appearance strength |
Runtime Noise Scale | noise texture scaling |
Runtime Noise Vector | scroll vector |
Trancate Noise Value | a pixel in the noise texture that has alpha below this threshold will not be distorted |
These properties defines blank space in the center of the effect.
Same to Advanced Vignette.
Gaussian blur is completed by setting the two effects, vertical and horizontal, in sequence.
Property | Description |
---|---|
Intensity | blur strength |
Sample Count | sampling pixel count |
Sample Interval | sampling pixel distance |
Standard Deviation | weight calculation parameter |
Brightness | brightness adjustment parameter |
Property | Description |
---|---|
Master Volume | master volume |
Line Count | scan line count |
Chromatic R | shift red pigment |
Chromatic G | shift green pigment |
Chromatic B | shift blue pigment |
Speed | line move speed |
Property | Description |
---|---|
Intensity | Outline and surface color intensity |
Normal Base Outline Intensity | outline intensity calculated using normal vector |
Depth Base Outline Intensity | outline intensity calculated using depth (G-Buffer) |
Outline Color | outline color |
Surface Color | surface color |
Surface Intensity | surface color intensity |
Property | Description |
---|---|
Master Volume | maseter volume |
Intensity | Ripple intenisty. if autoplay enabled, this value defines whole effect ripple power |
Frequency | number of overlapping ripples |
Propagation | propagation of ripple (use in scripting or timeline) |
Ripple Center UV | center position of ripple |
Property | Description |
---|---|
Ripple Speed | propagation speed |
Ripple Spread Time | time to fade out |
Property | Description |
---|---|
Intensity | intensity |
Layer Count | number of water layer |
Ripple Brightness | ripple brightness |
Surface Brightness | brightness of colored surface |
Seed 1 | water movement seed 1 |
Seed 2 | water movement seed 2 |
Mesh Detail | surface fineness |
Color | surface color |
Property | Description |
---|---|
Intensity | line intensity |
Line Frequency | number of line |
Center Viewport In Screen | center position |
Blank Radius | center blank radius |
Color Threshold | alpha threshold to render line |
Blank Aspect | aspect ratio of center blank |
Line Rotation | rotation of the entire effect |
Auto Rotation Speed | auto rotate in play mode if this value is set |
Line Randomize Offset | offset time to randomize lines |
Auto Randomize Speed | randomize in play mode if this value is set |
Line Color | effect line color |
This effect uses a texture that contains alpha channel, and that must be created before executing.
In easy use, check the "Runtime Generation" toggle to create noise texure automatically in play mode.
Reduce the number of colors to create a retro look.
Property | Description |
---|---|
Intensity | effect intensity |
Ordered Matrix Size | pixel matrix size to calculate |
Color Step | color step in rendering |
Dither Threshold | threshold to clip |
Filter to make the screen look like an oil painting image.
All effects in this package can be modified from Timeline sequence.
About detail to use Timeline, please refer official reference.
in the Timeline Window, click "+" button and add target Track by each effect.
right click the track, and click Add *** Playable Asset.
Drag and Drop a volume GameObject in a scene from Hierarchy view to created track.
edit animation clip like any other timeline components
if your animation curve looks invalid scale,
↓ click the track and set focus, and type f key
Check the Edit Effect ordering and ensure that the effect you want to use is set.
If the Mode property of the volume is set to Local, any effects only be rendered if a main camera is in the collider of the volume GameObject.