Skip to content

[10.x.x] Merge Hdrp/staging [Skip CI] #775

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1,746 commits into from
Jun 9, 2020
Merged

[10.x.x] Merge Hdrp/staging [Skip CI] #775

merged 1,746 commits into from
Jun 9, 2020

Conversation

sebastienlagarde
Copy link
Contributor

@sebastienlagarde sebastienlagarde commented Jun 8, 2020

Please read

Purpose of this PR


Testing status

Manual Tests: What did you do?

  • Opened test project + Run graphic tests locally
  • Built a player
  • Checked new UI names with UX convention
  • Tested UI multi-edition + Undo/Redo + Prefab overrides + Alignment in Preset
  • C# and shader warnings (supress shader cache to see them)
  • Checked new resources path for the reloader (in developer mode, you have a button at end of resources that check the paths)
  • Other:

Automated Tests: What did you setup? (Add a screenshot or the reference image of the test please)

Yamato: (Select your branch):
https://yamato.prd.cds.internal.unity3d.com/jobs/902-Graphics

Any test projects to go with this to help reviewers?


Comments to reviewers

Notes for the reviewers you have assigned.

slunity and others added 30 commits April 16, 2020 10:20
…refactor (#39)

* Added support for rasterized area light shadows in StackLit. Also refactor code to avoid early return (compiler bug) and fix lux meter debug mode when anisotropy for area lights is enabled.

* Doc: remove note about area light shadows for stacklit. [skipci]

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
…teleport) (#140)

* fix

* Update PostProcessSystem.cs

* Update CHANGELOG.md

* Add some clamp to fp16 for case where we don't have a NaN killer pass like planar reflection

* Update CHANGELOG.md

* adress PR feedback
* Only re-create the volume profile editor when the asset is changed

* Updated changelog

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
Bind buffer to make sure that something is bound

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
* fix warning

* changelog

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
* Exposure weighted by texture

* miss one in the renaming

* Doc update

* changelog

* doc update

* fix issue when disabling override
* Saving 10% off the PrepareLightForGPU

* 18% decrease in cost with this

* Around 12% cost shaving off GetLightData

* Around 6.5% win here

* Faster View matrix flip

* Missing *=-1

* About 7% win in preprocess light data

* Another small batch

* Small cleanup for first optimization pass

* Tiny bit more cleanup

* Make UpdateShadowRequests 12% cheaper

* Address review points

* A bit less than 20% win in ExtractPointLightData

* Add comment

* changelog

* 25% reduction of ExtractPointLightData

* 18% win in UpdateShadowRequest

* Another around 11% win for UpdateShadowRequest

* Move matrix multiply utils to core

* less lighttype computation

* Ooops

* fixup changelog

* Proper merge

* Missing leftovers .

* I'll manage to submit it all one day...

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
* Add option to use Base UV Mapping for emission

* Graphic test and doc

* Changelog

* Screenshots

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
* HDRP compositor tool, first code drop

documentation typo, move everything in compositor namespace

documentation typo

bugfix: dynamically add/remove properties when shadergraph changes

UI bugfix: properly compute height of UI elements

Missing tooltips, button to remove the compositor

toggle layers now works when player is paused

add chroma keying in the compositor test

Changelog, workflow bugfix

Use Unity's built'in icons

AOV bugfixes

AOV tooltip was wrong

bugfix: disabling the compositor now disables all compositor cameras

Proper monitoring of shadergraph changes

Updated test image + minor changes

Use better names for internal cameras

Bugfix: selecting the same res for a layer

Bugfix: deleting in-use texture layers from shadergraph now works

Bugfix: setting AOV to none now works properly

Use the term SubLayer in the UI

Improve AOV tooltip

Camera properties in layers are properly refreshed

UI: Move checkbox for overrides on the left side of the label

Remove default compositor camera when also deleting the compositor

Bugfixes: no orphans (delete all children when removing a layer), saving the layer list now works again

Hdrp/docs/compositor (#6013)

* Added docs review

* Changed fodler for images

Bugfixe: deleting layers

Bugfix: reordering layers

Bugfix: creating a new compositor fails

Remove redundant check

Fix wrong tooltip

Bugfix when deleting camera stack layers

Bugfix: handle window resize

Bugfix: sub-layers without parent when re-ordering, preview remains visible for disabled layers

Bugfix: more robust re-ordering (also moves children)

Bugfix: mark scene dirty when adding a compositor

Bugfix: display warning when alpha is configured properly

Change video layer icon

Bugfix: adding a layer filter does not reset the UI state

Bugfix: do not show composition properties that are marked with hide-in-inspector

Better / more clean layer injection implementation

minor code clean up

Clear color mode should only be editable on the first layer of a stack

Bugfix: setup of custom render was not always called

Bugfix: make sure additional camera data always exist in the layer/compositor camera

Change test id to 9800

Fix typos

mark scene dirty when removing or disabling the compositor

Default composition shadergraph and profile are now cloned

Serialized objects are now properly updated

minor code change: range checks

bugfix: error message appears at beginning

remove layer list from the asset file

add default camera layer when creating the compositor

replace getter function with c-sharp property

update asset in unit test

* move compositor unit test images

* remove leftover code

* review feedback #1

* review feedback 2

* review feedback - custom clear shader

* fix variable names that don't affect serialization

* fix serialized variable names

* bugfix: image layers and camera stacking

* use enum utility functions

* Use multicompile in motion blur + bug fix

* Make some variables private

* Update Compositor-User-Guide.md

* Review feedback

* fix muticompile for motion blur without alpha

* Update to new constant buffer / shadergraph api

* Player test image for the compositor

* Properly fill camera entries for global constant buffer

* Fix after rebase / function rename

* Make bg red for better debugging qnd cqtch unity exception

* Disable compositor test until we fix it on yamato

Co-authored-by: Lewis Jordan <lewis.jordan@hotmail.co.uk>
Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
* Fixed PBR shader rendering in deferred

* Updated changelog
* Multiple Importance Sampling for HDRI Sky (Ray Generation)

* backup

* Multiple helpers

* Add RTHandleDeleter (delay in K frame the Release of a RTHandle)
* Fix GPU Operation when texture are too small
* Helper to manager Mariginal Texture in general (Tex2D, Tex2DArray, CubeMap, CubemapArray), ...
* Helper manager to generate one marginal per slice mip (one per frame)

* backup

* Add SampleCubemapProjectionNode (Project cubemap to Geometry)

* delete useless files

* update

* Cube To LatLong for CubeArray

* Functional generation

* Integration on ray tracer step

* Store HDRI Integral

* .

* Integrate HDRI Sky

* Update Importance Sampling

* Update Algorithm with Hemisphere Path

* Backup

* Update merge

* Update Merge 001

* Update Merge 002

* Update Merge 003

* Update Merge 004

* Update Merge 005

* Update Merge 006

* Update Merge 007

* Cleanup

* Update Integration of HDRISky Upper Hemisphere

* Remove useless dump images on disk

* Fix change log issue

* backup

* Backup

* Pre-Clean

* Pre-Clean

* Clean Up - remove file

* Remove Debug Code

* Update

* Update ChangeLog

* Clean Up

* update

* Clean up

* Remove useless texture

* Fix CGAlloc + Default Litetime of a RTHandle on the "RTHandleDeleter"

* CleanUp

* remove useless comment

* Add variable (Atmospherical) + Rename/Comment

* Move parameter to CS, Clean & move to private RTHandleDeleter
#94)

* - Replaced the DIFFUSE_LIGHTING_ONLY multicompile by a uniform.
- Removed the dynamic lightmap multicompile.
- Remove the LOD cross fade multi compile for ray tracing.
- Added a ray tracing mode option in the HDRP asset that allows to override and shader stripping.

* fix merge

* Update LayeredLit.shader

* Update LayeredLit.shader

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
…jects. (#93)

* - Avoid building the mip chain a second time for SSR for transparent objects.

* Update ScreenSpaceReflections.compute

* fix merge issue

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
* Adaptive sampling works

* Compute the PDF

* URL

* Fix stuff up (except for profile preview)

* Attempt to fix previews

* Fix transmission

* Support quality levels

* Clean shader

* Remove 2 kernels

* PURGE

* Automatically adjust the number of samples at runtime

* Changelog

* Spaaaaace

* Add comment

* Spaaaaaace

* Rename

* Update ref img 1215, 1216, 1217

* Revert "Update ref img 1215, 1216, 1217"

This reverts commit 9aeb1fee054bc0e8a24b76525eb4af5dc2316088.

* Robust filter radius

* Solve the NaN problem

* Save 1x VGPR

* Update SSS defaults

* Add migration steps

* Volume resolution WIP

* Shorter names FTW

* Comment

* Dynamic slice count works

* Dynamic res works

* Changelog

* Stretch the limits

* Fix bug (order matters)

* Comments

* Remove volumetric quality presets

* Changelog

* Reorder

* Solve the mystery of RTs going NULL

* More robust bad history detection

* Update test scenes for High Quality

* More bug fixes

* More accurate comment

* Do not reinvent the wheel

* Fix broken test 1351

* Attempt to migrate HQ SSS settings

* Remove all branches

* Optimize a bit

* 7x WF

* Fix the rounding error

* Fix the rounding error

* Remove garbage allocation

* Fix typos

* Copy the SSS value

* Revert HDRP asset changes

* Fix default UI value

* Pass the right asset

* Update ref img 1215

* update reference screenshots

* Update CHANGELOG.md

* Update CHANGELOG.md

* Switch to RTHandles

* Rename textures used by the fog filtering pass

* Fix reprojection

* Fix shader warning + typo+

* fix another shader warning

Co-authored-by: EvgeniiG <7ee2cc898cca1b5fc49df740c2081dfc681e0a28>
Co-authored-by: Sebastien Lagarde <sebastien@unity3d.com>
* Revert "Hdrp/runtimetests/ps4 fix (#129)"

This reverts commit 6fa52ab.

* Update runtime test to use way less memory to be able to run on console

* Fixed screenshots and test
…#130)

* Replaced commands incompatible with async compute in light list build process.

* Update changelog

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
…orrectly exported to unity packages. (#136)

* Added external references inside a material to diffusion profiles and materials in order to handle Material export to a package correctly.

* Update changelog

* Removed useless test

* Updated changelog message to add more info
…probe volumes and lights. (#156)

* Refactoring to share the code for light list building better between probe volumes and lights.

* Remove commented code

* Fixed constant buffer update

* Fixed kernel used for cluster generation

* Fixed cluster kernel for oblique projection

* Restored a resize test for XR
* Added range attenuation to box-shaped spotlights

* Update tests

* Update CHANGELOG.md

* Remove file duplication

* Added box range attenuation test

* Clarify documentation

* Update screenshots

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
adrien-de-tocqueville and others added 9 commits June 8, 2020 02:29
* Added uv distorsion for HDRISky cubemap

* Editable flow strength

* Better parameter name. Smooth flow on cube edges

* Added a graphic test. Updated Changelog

* Updated documentation

* Added screenshots

* Wait frames for test

* Wait more

* Update screenshots again...

* Static test

* Static screenshots

* use multi_compile

* Renamed all parameters

* Procedural distortion

* Update doc

* Set all keywords

* Revert to old behaviour

* doc

* update test

* remove useless variable

* doc

* CloudLayer HDRI

* CloudLayer Gradient

* CloudLayer Physically Based

* Documentation

* Add clouds to Static Lighting Sky

* Fix spherical conversion

* Fix procedural flow

* Fix lat long and procedural flow

* replace trig functions. Correct wind dir

* sync with hdri flow

* Renamed variables

* Allow full sphere coverage for procedural flowmap

* Added missing doc

* Fix cloud reset and unrelated warnings in hdri sky shader

* Try different blending method

* Fixes + test another blending

* Tint and intensity parameters. Fix static sky used by lightmapper

* Added graphic test. Updated doc

* Updated tests using a disabled static sky

If a sky override is used for static lighting and is disabled in the volume, it is not used anymore

* Update LocalAmbientOcclusionNoisy.asset

* update linux screenshots

* Update CloudLayer.cs

* update OSX screenshots

Co-authored-by: Sebastien Lagarde <sebastien@unity3d.com>
* Add concept of LightLoop Output

* update upgrade guide

* Update Upgrading-from-2020.1-to-2020.2.md

* update upgrade guide
* Use a fixed size for xr related fields in cbuffers

* changelog

* Update local shader config

* Update CHANGELOG.md

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
)

* Forest scale for tessellation change

* Forest scale for tessellation change

* Update Upgrading-from-2019.3-to-2020.1.md

* Update Upgrading-from-2019.3-to-2020.1.md
JordanL8 and others added 6 commits June 8, 2020 20:40
* Probe Volumes: Update SampleBakedGI() and supporting internal functions signature in order to evaluate lighting along front and back facing normals at the same time.

* Add some comment

Co-authored-by: pastasfuture <pastasfuture@gmail.com>
* Initial implementation for the new planar reflection filtering

* Small improvement and "proper" support of oblique projection

* quality improvement to the filtering.

* Update PlanarReflectionFiltering.compute

* review corrections

* Update planar filter for all material (was not replaced) + update screenshots

* Update IBLFilterGGX.cs

* fix shader warning on vulkan

* update references screenshots

* Fixes for the plane normal and number of mips to be computed

* Fix shift that was to the right in the blurred version

* update references screenshots

* fix shader warning

* Some cleanup

* change to fast Atan

Co-authored-by: Sebastien Lagarde <sebastien@unity3d.com>
* temp, gonna revert this, but have to merge staging.

* again, need to switch branch, nothing functional

* ESRAM support

* changelog

* Add guards
* Added an option to ignore tests when render graph is enabled.

* Disabled for render graph tests that are currently broken.

* Reenabled 4021

* Updated yamato script to add the RenderGraph pipeline.

* Fixed HDRP asset for test 5009

* Revert unrelated yml files changes due to old configuration (#714)

* Fixed an issue with not unregistering render graph debug.

Disabled test 9401 for render graph after merge conflict.

* Disabled 9800 for render graph

* Revert hdrp asset for 5009

Co-authored-by: Theo Penavaire <theo.penavaire@gmail.com>
@sebastienlagarde sebastienlagarde requested a review from a team as a code owner June 9, 2020 07:49
anisunity and others added 7 commits June 9, 2020 09:55
* Added CPU and GPU timings for ray tracing effects.

* Only displaying the counters if ray tracing is supported on the asset.

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
* Hard code group size

* changelog

* Add comment
… when rendergraph is enabled (#791)

* Fix issue accessing already released targets for rendergraph

* changelog
* Sanitize transparent motion vectors setting

* Update CHANGELOG.md

Co-authored-by: sebastienlagarde <sebastien@unity3d.com>
@sebastienlagarde sebastienlagarde requested review from JulienIgnace-Unity and removed request for a team June 9, 2020 14:57
@sebastienlagarde sebastienlagarde merged commit ba74574 into master Jun 9, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.