Skip to content

Commit d0aede8

Browse files
Moved PPv2 to the main Graphics repository (#2786)
Co-authored-by: Thomas <[email protected]>
1 parent 1a77f8c commit d0aede8

File tree

622 files changed

+257349
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

622 files changed

+257349
-0
lines changed

com.unity.postprocessing/CHANGELOG.md

+278
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,278 @@
1+
# Changelog
2+
All notable changes to this package will be documented in this file.
3+
4+
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5+
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6+
7+
## [3.0.2] - XXXX-XX-XX
8+
9+
### Changed
10+
- ResetProjection isn't being called anymore if Temporal Anti-aliasing isn't enabled, allowing the use of custom projection matrices.
11+
12+
## [3.0.1] - 2020-10-15
13+
14+
### Fixed
15+
- Fix for a compilation error in the Depth of Field shader on Linux.
16+
17+
## [3.0.0] - 2020-10-13
18+
19+
### Fixed
20+
- Fix for VR Single Pass Instancing (SPI) not working with the built-in renderers. Only effects that currently support SPI for use with SRP will work correctly (so AO for example will not work with SPI even with this fix) (case 1187257)
21+
- Fix for shader compilation errors when importing the 3D+Extras template (case 1234411)
22+
- Fix Duplicated RenderTextures when using MultiScaleVO on Xbox (case 1235888)
23+
- Fix for the rendering being broken when an SRP is in use and its asset comes from quality settings instead of graphics settings.
24+
- Fix for burger buttons on volume components being misaligned on 2019.3+ (case 1238461)
25+
- Fix for depth buffer being discarded when using deferred fog with Vulkan (case 1271512)
26+
- Fix for compilation errors when the built-in VR package is disabled (case 1266931)
27+
- Fix for Temporal Anti-Aliasing produces artifacts on the edges of objects when using VR (case 1167219)
28+
- Fix for blurry image when using the Post Process Layer in single-pass VR (case 1173697)
29+
- Fix for ambient occlusion is misaligned when using single pass rendering VR mode (case 1217583)
30+
31+
### Changed
32+
- Motion Blur and Lens Distortion are disabled only when rendering with stereo cameras instead of having VR enabled in the project.
33+
- Minimum Unity version for this version has been bumped to 2018.4.
34+
35+
## [2.3.0] - 2020-01-10
36+
37+
### Fixed
38+
- Fix for XR multipass and legacy built-in renderer (case 1197855, 1152584)
39+
- Optimized type lookup on domain reload in the editor (case 1203325)
40+
- Fixed a serialization issue causing an assertion on resources (case 1202441)
41+
42+
## [2.2.2] - 2019-11-18
43+
44+
### Fixed
45+
- Fixed deprecated XR API usage.
46+
47+
## [2.2.1] - 2019-11-07
48+
49+
### Fixed
50+
- Fixed a compilation warning with Unity 2019.3 and 2020.1.
51+
52+
### Changed
53+
- Following a change in the compilation pipeline, this version is only compatible with Unity 2017.2 and up.
54+
55+
## [2.1.9] - 2019-10-24
56+
57+
### Fixed
58+
- Shader compilation error on PS4 with Unity 2019.3.
59+
60+
## [2.1.8] - 2019-10-11
61+
62+
### Added
63+
- Support for dynamic resolution.
64+
65+
### Fixed
66+
- Potential fp16 overflow in Depth of Field that could cause NaN on some platforms.
67+
- Error with Screen-space Reflections when HDR is disabled.
68+
- Internal "copy" materials were recreated on every frame after the asset bundle-related fix from 2.1.7.
69+
70+
## [2.1.7] - 2019-06-12
71+
72+
### Added
73+
- Initial Stadia platform support.
74+
75+
### Fixed
76+
- Viewport handling wasn't working correctly when FXAA or SMAA were used with builtin pipelines.
77+
- Depth of Field could end up fully blurry depending on the project setup.
78+
- Reloading an asset bundle that has references to post-processing was broken.
79+
80+
### Changed
81+
- Warning for mobiles about using post-processing with non-fullscreen cameras.
82+
- Directly to Camera Target on the PostProcessLayer component is now disabled by default.
83+
- The framework now uses its own random number generator instead of the default Unity one.
84+
85+
## [2.1.6] - 2019-04-11
86+
87+
### Fixed
88+
- Post-processing would crash if "Managed Stripping Level" was set to Medium or High.
89+
- Serialization warnings on build.
90+
- Removed unwanted garbage collection.
91+
92+
## [2.1.5] - 2019-03-25
93+
94+
### Fixed
95+
- LDR Color grading in gamma mode no longer produces banding artifacts on Mali GPUs on OpenGL ES2.
96+
- Gamma mode no longer darken the screen with LWRP.
97+
98+
## [2.1.4] - 2019-02-27
99+
100+
### Fixed
101+
- Shader compilation errors with OpenGL ES2 and Switch.
102+
- Proper viewport support on Builtin render pipelines.
103+
104+
## [2.1.3] - 2019-01-30
105+
106+
### Fixed
107+
- Color grading would output negative values in some cases and break rendering on some platforms.
108+
- Custom effects with `allowInSceneView` set to `false` could make the scene view flicker to black.
109+
- R8_SRGB error in 2019.1 when Depth of Field and Temporal Anti-aliasing are enabled at the same time.
110+
- Auto-exposure compute shader on Metal/iOS.
111+
112+
## [2.1.2] - 2018-12-05
113+
114+
### Fixed
115+
- Made the package manager happy.
116+
117+
## [2.1.1] - 2018-11-30
118+
119+
### Fixed
120+
- Optimized volume texture blending.
121+
- Switch compilation issues with 2019.1+.
122+
123+
### Changed
124+
- Chromatic aberration is now forced to "fast mode" when running on GLES2.0 platforms due to compatibility issues.
125+
126+
## [2.1.0] - 2018-11-26
127+
128+
### Changed
129+
- Minor version bump following the release of 2018.3 and verified compatibility with 2019.1.
130+
131+
## [2.0.20] - 2018-11-22
132+
133+
### Fixed
134+
- Camera viewport wasn't working properly when outputting directly to the backbuffer.
135+
- More improvements to VR support.
136+
- Compatibility fixes for 2017.1 to 2017.4.
137+
- Post-processing wouldn't work when loaded from an asset bundle.
138+
- Compilation issue when Cinemachine is used with Post-processing.
139+
140+
### Changed
141+
- Scriptable Render Pipelines should now call `PostProcessLayer.UpdateVolumeSystem(Camera, CommandBuffer)` at the beginning of the frame.
142+
143+
## [2.0.17-preview] - 2018-11-06
144+
145+
### Fixed
146+
- First pass at improving VR support.
147+
- Assert on Invalid LDR Lookup Texture size; added a check in the inspector for the user.
148+
- Improved performance on Unity 2019.1+ by avoiding unnecessary blits if no other image effect is active.
149+
- Use new ASTC enums on unity 2019.1+.
150+
151+
## [2.0.16-preview] - 2018-10-23
152+
153+
### Fixed
154+
- Grain shader compilation errors on some mobile GPUs.
155+
- Compilation issue with Unity 2019.1+ due to an internal API change.
156+
157+
## [2.0.15-preview] - 2018-10-12
158+
159+
### Fixed
160+
- Warning on `[ShaderIncludePath]` in 2018.3+.
161+
162+
## [2.0.14-preview] - 2018-10-05
163+
164+
### Fixed
165+
- Bloom flicker in single-pass double-wide stereo rendering.
166+
- Right eye bloom offset in single-pass double-wide stereo rendering.
167+
- If any parent of PostProcessingVolume has non-identity scale the Gizmo is rendered incorrectly.
168+
- Cleanup error when going back'n'forth between Builtins & Scriptable pipelines.
169+
170+
### Changed
171+
- Use `ExecuteAlways` in 2018.3+ for better compatibility with "Prefab Mode".
172+
173+
## [2.0.13-preview] - 2018-09-14
174+
175+
### Fixed
176+
- Compilation issue with Unity 2019.1.
177+
- Screen-space reflection memory leak.
178+
179+
## [2.0.12-preview] - 2018-09-07
180+
181+
### Fixed
182+
- Ambient Occlusion could distort the screen on Android/Vulkan.
183+
- Warning about SettingsProvider in 2018.3.
184+
- Fixed issue with physical camera mode not working with post-processing.
185+
- Fixed thread group warning message on Metal and Intel Iris.
186+
- Fixed compatibility with versions pre-2018.2.
187+
188+
## [2.0.10-preview] - 2018-07-24
189+
190+
### Fixed
191+
- Better handling of volumes in nested-prefabs.
192+
- The Multi-scale volumetric obscurance effect wasn't properly releasing some of its temporary targets.
193+
- N3DS deprecation warnings in 2018.3.
194+
195+
## [2.0.9-preview] - 2018-07-16
196+
197+
### Changed
198+
- Update assembly definitions to output assemblies that match Unity naming convention (Unity.*).
199+
200+
## [2.0.8-preview] - 2018-07-06
201+
202+
### Fixed
203+
- Post-processing is now working with VR SRP in PC.
204+
- Crash on Vulkan when blending 3D textures.
205+
- `RuntimeUtilities.DestroyVolume()` works as expected now.
206+
- Excessive CPU usage on PS4 due to a badly initialized render texture.
207+
208+
### Changed
209+
- Improved volume texture blending.
210+
211+
### Added
212+
- `Depth` debug mode can now display linear depth instead of the raw platform depth.
213+
214+
## [2.0.7-preview] - 2018-05-31
215+
216+
### Fixed
217+
- Post-processing wasn't working on Unity 2018.3.
218+
219+
### Added
220+
- Bloom now comes with a `Clamp` parameter to limit the amount of bloom that comes with ultra-bright pixels.
221+
222+
## [2.0.6-preview] - 2018-05-24
223+
224+
### Fixed
225+
- On large scenes, the first object you'd add to a profile could throw a `NullReferenceException`. ([#530](https://github.com/Unity-Technologies/PostProcessing/pull/530))
226+
- Dithering now works correctly in dark areas when working in Gamma mode.
227+
- Colored grain wasn't colored when `POSTFX_DEBUG_STATIC_GRAIN` was set.
228+
- No more warning in the console when `POSTFX_DEBUG_STATIC_GRAIN` is set.
229+
230+
### Changed
231+
- Minor scripting API improvements. ([#530](https://github.com/Unity-Technologies/PostProcessing/pull/530))
232+
- More implicit casts for `VectorXParameter` and `ColorParameter` to `Vector2`, `Vector3` and `Vector4`.
233+
- Script-instantiated profiles in volumes are now properly supported in the inspector. ([#530](https://github.com/Unity-Technologies/PostProcessing/pull/530))
234+
- Improved volume UI & styling.
235+
236+
## [2.0.5-preview] - 2018-04-20
237+
238+
### Fixed
239+
- More XR/Switch related fixes.
240+
241+
## [2.0.4-preview] - 2018-04-19
242+
243+
### Fixed
244+
- Temporal Anti-aliasing creating NaN values in some cases. ([#337](https://github.com/Unity-Technologies/PostProcessing/issues/337))
245+
- Auto-exposure has been fixed to work the same way it did before the full-compute port.
246+
- XR compilation errors on Xbox One & Switch (2018.2).
247+
- `ArgumentNullException` when attempting to get a property sheet for a null shader. ([#515](https://github.com/Unity-Technologies/PostProcessing/pull/515))
248+
- Stop NaN Propagation not working for opaque-only effects.
249+
- HDR color grading had a slight color temperature offset.
250+
- PSVita compatibility.
251+
- Tizen warning on 2018.2.
252+
- Errors in the console when toggling lighting on/off in the scene view when working in Deferred.
253+
- Debug monitors now work properly with HDRP.
254+
255+
### Added
256+
- Contribution slider for the LDR Lut.
257+
- Support for proper render target load/store actions on mobile (2018.2).
258+
259+
### Changed
260+
- Slightly improved speed & quality of Temporal Anti-aliasing.
261+
- Improved volume texture blending.
262+
- Improved support for LDR Luts of sizes other than 1024x32. ([#507](https://github.com/Unity-Technologies/PostProcessing/issues/507))
263+
- Bloom's `Fast Mode` has been made faster.
264+
- Depth of Field focus is now independent from the screen resolution.
265+
- The number of variants for some shaders has been reduced to improve first-build speed. The biggest one, Uber, is down to 576 variants.
266+
267+
## [2.0.3-preview] - 2018-03-13
268+
269+
### Fixed
270+
- Disabled debug compute shaders on OpenGL ES3 to avoid crashes on a lot of Android devices.
271+
- `NullReferenceException` while mixing volumes and global volumes. ([#498](https://github.com/Unity-Technologies/PostProcessing/issues/498))
272+
273+
### Changed
274+
- Improved performances when blending between identical textures.
275+
276+
## [2.0.2-preview] - 2018-03-07
277+
278+
This is the first release of *PostProcessing*.

com.unity.postprocessing/CHANGELOG.md.meta

+7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# Ambient Occlusion
2+
3+
The **Ambient Occlusion** effect calculates points in your scene that are exposed to ambient lighting. It then darkens areas that are hidden from the ambient light, such as creases, holes, and spaces between objects which are close together.
4+
5+
You can achieve the **Ambient Occlusion** effect in two ways: in real-time as a full-screen post-processing effect, or as a baked lighting effect (see [Baked Ambient Occlusion](https://docs.unity3d.com/Manual/LightingBakedAmbientOcclusion.html)). The real-time **Ambient Occlusion** effect can be resource-intensive, which makes it better for desktop or console platforms. Its impact on processing time depends on screen resolution and effects properties.
6+
7+
The **Ambient Occlusion** effect in this package has two modes:
8+
9+
- Scalable Ambient Obscurance
10+
- Multi-scale Volumetric Occlusion
11+
12+
## Scalable Ambient Obscurance
13+
14+
This is a standard implementation of ambient obscurance that works on older platforms. If you need to target a compute-enabled platform, use the [**Multi-scale Volumetric Occlusion**](multi-scale-volumetric-occlusion) mode instead.
15+
16+
### Performance
17+
18+
The **Scalable Ambient Obscurance** mode can be resource-intensive, especially when viewed very close to the Camera. To improve performance, use a low `Radius` setting, to sample pixels that are close and in clip space to the source pixel. This makes caching more efficient. Using a higher `Radius` setting generates samples further away from the source pixel and won’t benefit from caching, which slows down the effect.
19+
20+
Because of the Camera’s perspective, objects near the front plane use larger radiuses than those far away, so computing the ambient occlusion pass for an object close to the camera will be slower than for an object further away that only occupies a few pixels on screen.
21+
22+
Dropping the `Quality` setting down will improve performance too.
23+
24+
**Scalable Ambient Obsurance** should not be used on mobile platforms or consoles as the **Multi-scale Volumetric Occlusion** mode is faster and provides better graphics for these platforms.
25+
26+
### Requirements
27+
28+
- Depth & Normals textures
29+
- Shader model 3
30+
31+
32+
![](images/ssao-1.png)
33+
34+
35+
### Properties
36+
37+
| Property | Function |
38+
| :------------ | :------------------------------------------------------------ |
39+
| Intensity | Adjust the degree of darkness **Ambient Occlusion** produces. |
40+
| Radius | Set the radius of sample points, which controls the extent of darkened areas. |
41+
| Quality | Define the number of sample points, which affects quality and performance. |
42+
| Color | Set the tint color of the ambient occlusion. |
43+
| Ambient Only | Enable this checkbox to make the **Ambient Occlusion** effect only affect ambient lighting. This option is only available with the Deferred rendering path and HDR rendering. |
44+
45+
<a name="multi-scale-volumetric-occlusion"></a>
46+
47+
## Multi-scale Volumetric Occlusion
48+
49+
This mode is optimized for consoles and desktop platforms. It has better graphics and runs faster than **Scalable Ambient Obscurance** on these platforms but requires [compute shader support](https://docs.unity3d.com/Manual/class-ComputeShader.html).
50+
51+
### Requirements
52+
53+
- Compute shader support
54+
- Shader model 4.5
55+
56+
![](images/ssao-2.png)
57+
58+
59+
### Properties
60+
61+
| Property | Function |
62+
| :------------------ | :------------------------------------------------------------ |
63+
| Intensity | Adjust the degree of darkness **Ambient Occlusion** produces. |
64+
| Thickness Modifier | Modify the thickness of occluders. This increases dark areas but can introduce dark halos around objects. |
65+
| Color | Set the tint color of the ambient occlusion. |
66+
| Ambient Only | Enable this checkbox to make the **Ambient Occlusion** effect only affect ambient lighting. This option is only available with the Deferred rendering path and HDR rendering. |

0 commit comments

Comments
 (0)