Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice

Feedback Wanted: High Definition Render Pipeline

Discussion in 'Graphics Experimental Previews' started by Tim-C, Sep 25, 2018.

  1. shredingskin

    shredingskin

    Joined:
    Nov 7, 2012
    Posts:
    242
    So I've seen in the changelog for 5.1.0:
    The HDRP Material upgrader tool now converts metallic values correctly.

    So all our maps auto upgraded are behaving wrong ?

    Also I get this error if I choose the layeredlit shader using HDRP 4.8.0:
    NullReferenceException: Object reference not set to an instance of an object
    UnityEditor.Experimental.Rendering.HDPipeline.LayeredLitGUI.InitializeMaterialLayers (UnityEditor.AssetImporter materialImporter, UnityEngine.Material[]& layers) (at Library/PackageCache/com.unity.render-pipelines.high-definition@4.8.0-preview/Editor/Material/LayeredLit/LayeredLitUI.cs:326)
    UnityEditor.Experimental.Rendering.HDPipeline.LayeredLitGUI.OnGUI (UnityEditor.MaterialEditor materialEditor, UnityEditor.MaterialProperty[] props) (at Library/PackageCache/com.unity.render-pipelines.high-definition@4.8.0-preview/Editor/Material/LayeredLit/LayeredLitUI.cs:760)
    UnityEditor.MaterialEditor.PropertiesGUI () (at C:/buildslave/unity/build/Editor/Mono/Inspector/MaterialEditor.cs:1606)
    UnityEditor.MaterialEditor.OnInspectorGUI () (at C:/buildslave/unity/build/Editor/Mono/Inspector/MaterialEditor.cs:393)
    Substance.Editor.InspectorMaterial.OnInspectorGUI () (at <280dfb6e8e624332b6c5cd376e7bc4da>:0)
    UnityEditor.InspectorWindow.DoOnInspectorGUI (System.Boolean rebuildOptimizedGUIBlock, UnityEditor.Editor editor, System.Boolean wasVisible, UnityEngine.Rect& contentRect) (at C:/buildslave/unity/build/Editor/Mono/Inspector/InspectorWindow.cs:1625)
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr)

    And it doesn't shows me the inspector.
     
    Last edited: Feb 3, 2019
  2. deltamish

    deltamish

    Joined:
    Nov 1, 2012
    Posts:
    58
    Any alternative tool or workaround for this issue ?

    Thanks
     
  3. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Hi, this is something unrelated to HDRP, please report to General Graphic forum
     
  4. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Hi, I am not sure to understand, there is a "on demand" option since the first release. we expose: On change, On demand and every frame option for reflection probe. But true that even it if work, we only expose realtime for reflection probe as it make not a lot of sense in most scenario to not be realtime as it is view dependent.
     
    Last edited: Feb 3, 2019
  5. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    The master branch always contain all the fixes, we always backport to older branch. What is happening is just that we haven't done any update of package for 5.X.X since a while as we were focusing on 4.X.X package. But github branch are up to date. Note that we have release 5.3.1 last weak (that is the very last code with all fixes and all the new work for 2019.1), but sadly due to an issue in Package manager itself, it doesn't appear yet...
     
    elbows likes this.
  6. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    > I cant quite understand why it use 3 as the index
    Hi, not sure what you don't understand :), when you have 4 RT (i.e you enable the control of metalic and ambient occlusion for decal) it mean we need to bind the UAV at the 5th position (index 4 - UAV always need to be bind at the last available slot after RT in Unity (here there is 4 RT)). When only 3RT are enable for decal, it is at the 4thposition (index 3)
     
  7. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Hi, by more controls you just mean Mask system, or other stuff as well ?
    Agree that mask system is nice, also good if it could be control on the objects. We don't offer this currently. Could be a development in the future but currently not plan.

    Note: Our decal algorithm is different from Unigine (which from what I understand is based on deferred decals), it is based on DBuffer for opaque and Cluster for Transparent - so it work in both deferred and forward and work with our lightmaps (see slide about decal here: http://advances.realtimerendering.com/s2018/Siggraph 2018 HDRP talk_with notes.pdf).
    We carefully weights the options we add for them to not kill performance.
     
  8. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Disclaimer for everyone: Procedural sky in HDRP is a straight port of buit-in Unity. Nobody at Unity understand it (people working on this are not their anymore). We don't aim at adding feature or doing any work on it, we have added it for convenience as it is better than offering nothing. We are now starting to work on a proper physically based sky.

    Baking sky and environment lighting are describe here:
    https://github.com/Unity-Technologies/ScriptableRenderPipeline/wiki/Environment-Lighting

    We support HDRI sky, procedural sky and 3 color sky.
    The baking sky volume is not intuitive and we are aware of that, however this is a feature requested by many team/users, it allow to have a different sky use for the display and for the lighting (yes, our book of the dead demo use it - and yes, this isn't PBR). Please see documentation here:

    Note: volume system is describe here:
    https://github.com/Unity-Technologies/ScriptableRenderPipeline/wiki/Volumes

    Note that you can write a custom sky: https://github.com/Unity-Technologies/ScriptableRenderPipeline/wiki/Writing-A-Custom-Sky-Renderer

    The reasons the system is different from builtin unity is that now it allow to override settings per volume in scene + the sky lighting and fog are integrated correctly with opaque and transparent, there is no discrepancy here thus the extra complexity setup. We can't allow arbitrary fog for performance reasons as this fog need to apply to forward opaque and transparent correctly without killing performance.

    hope that help.
     
    Waterlane and dadude123 like this.
  9. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Thanks for reporting this, we will evaluate your solution (Maybe PR request is best than posting here in this case). Cheers
     
  10. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Hi,
    >Is there any material upgrade support for custom shaders?
    No.

    >Is there any proper terrain shader currently available
    TerrainLit is the official shader. Don't know about others not made by Unity but can bet it wouldn't work given all change happening.
     
  11. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    >TAA glitched in 4.9
    Thanks for the report but it lack a lot of information to be able to help you. Any project scene or context ?
     
  12. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    4,196
    Maybe I'm doing something atypical, but I used to rebake reflection probes periodically if lighting had changed significantly. For example, I have a door with a light on it that's red or green depending on if it's locked or unlocked. When I change from one color to another, I used to be able to rebake the reflection probe, so the correct color was in the reflection. Updating every frame is very expensive, so I really can't consider it. But updating reflection probes only when I know something significant occurred was a nice feature that is no longer an option as of somewhere around 4.X. (I believe I could still bake on-demand under 3.X). So, if unless there's some reason why on-demand isn't feasible, I'd love to see that reintroduced as an option.
     
    id0 likes this.
  13. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    i'll try to create a repro tonight.
    Edit : I think i found what causing it, the reflection probe size are barely touch the problematic wall. Seems like it causing a zfight with the reflection bufffer? increasing the reflection probe size a bit the Glitched are gone. What's weird is this is only occured when TAA are active :/
    Also SSR are disabled just FYI
    @SebLagarde Do you still want a repro project for this?
     
    Last edited: Feb 4, 2019
  14. fredericv

    fredericv

    Unity Technologies

    Joined:
    Feb 20, 2017
    Posts:
    8
    Hi, thanks for the report.

    I benchmarked the QuickSort function and compared against yours implementation, but it did not seems to be faster. (see attached screenshot)

    I guess that the performance hit comes from other parts around the call to QuickSort and not the QuickSort itself. Do you have more information from your profiling?

    NB: For the benchmark, I used the Unity.PerformanceTesting package and the code provided below.

    BenchmarkQuickSort.png

    Code (CSharp):
    1. [PerformanceTest]
    2.         public void QuickSortUnsafe()
    3.         {
    4.             const int size = 1 << 12;
    5.             var valuesPtr = stackalloc uint[size];
    6.             for (var i = 0; i < size; ++i)
    7.                 valuesPtr[i] = (uint)(Random.value * uint.MaxValue);
    8.  
    9.             Measure.Method(() =>
    10.                 {
    11.                     var valuesCopyPtr = stackalloc uint[size];
    12.                     UnsafeUtility.MemCmp(valuesCopyPtr, valuesPtr, sizeof(uint) * size);
    13.  
    14.                     CoreUnsafeUtils.QuickSort<uint, uint, CoreUnsafeUtils.DefaultKeyGetter<uint>>(valuesCopyPtr, 0, size - 1);
    15.                 })
    16.                 .WarmupCount(10)
    17.                 .MeasurementCount(10)
    18.                 .Run();
    19.         }
    20.  
    21.         [PerformanceTest]
    22.         public void QuickSortUnsafeUIntArray()
    23.         {
    24.             const int size = 1 << 12;
    25.             var valuesPtr = stackalloc uint[size];
    26.             for (var i = 0; i < size; ++i)
    27.                 valuesPtr[i] = (uint)(Random.value * uint.MaxValue);
    28.  
    29.             var values = new uint[size];
    30.  
    31.             Measure.Method(() =>
    32.                 {
    33.                     fixed (uint* p = &values[0])
    34.                         UnsafeUtility.MemCmp(p, valuesPtr, sizeof(uint) * size);
    35.  
    36.                     CoreUnsafeUtils.QuickSort(values, 0, values.Length - 1);
    37.                 })
    38.                 .WarmupCount(10)
    39.                 .MeasurementCount(10)
    40.                 .Run();
    41.         }
    42.  
    43.         public static void QuickSort1(uint[] s, int l, int r)
    44.         {
    45.             if (l < r)
    46.             {
    47.                 uint x = x = s[l];
    48.                 int i = l, j = r;
    49.                 while (i < j)
    50.                 {
    51.                     while (i < j && s[j] >= x)
    52.                         j--;
    53.                     if (i < j)
    54.                         s[i++] = s[j];
    55.  
    56.                     while (i < j && s[i] < x)
    57.                         i++;
    58.                     if (i < j)
    59.                         s[j--] = s[i];
    60.                 }
    61.                 s[i] = x;
    62.                 QuickSort1(s, l, i - 1);
    63.                 QuickSort1(s, i + 1, r);
    64.             }
    65.         }
    66.  
    67.         [PerformanceTest]
    68.         public void QuickSort_Compare()
    69.         {
    70.             const int size = 1 << 12;
    71.             var valuesPtr = stackalloc uint[size];
    72.             for (var i = 0; i < size; ++i)
    73.                 valuesPtr[i] = (uint)(Random.value * uint.MaxValue);
    74.  
    75.             var values = new uint[size];
    76.  
    77.             Measure.Method(() =>
    78.                 {
    79.                     fixed (uint* p = &values[0])
    80.                         UnsafeUtility.MemCmp(p, valuesPtr, sizeof(uint) * size);
    81.  
    82.                     QuickSort1(values, 0, values.Length - 1);
    83.                 })
    84.                 .WarmupCount(10)
    85.                 .MeasurementCount(10)
    86.                 .Run();
    87.         }
     
  15. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    On demand is still there. I will double check (it may be a bug) but we have never removed it.
     
  16. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Hi, Glad you find the issue. As it is due to z-fight we don't need a repro. Thanks
     
    Reanimate_L likes this.
  17. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    4,196
    Under 4.X, these are my choices:

    upload_2019-2-4_16-4-50.png

    upload_2019-2-4_16-4-33.png

    upload_2019-2-4_16-5-10.png

    It used to be that choosing Realtime allowed me to pick something other than Every Frame for the Refresh Mode, but no longer. Unless there's another approach?
     
  18. discofhc

    discofhc

    Joined:
    Dec 18, 2017
    Posts:
    47
    Please, can anyone confirm if we will get some TAA improvement for HD pipeline?

    Hi... any news on texture filtering? I still have problems with that "spec flicker" ("sparks" with bloom) on my scenes...

    Thanks!
     
    Last edited: Feb 5, 2019
  19. cfree

    cfree

    Joined:
    Sep 30, 2014
    Posts:
    72
    Someone know when we will be able to create a HD/TerrainLit shader using Shader Graph?
     
  20. sewy

    sewy

    Joined:
    Oct 11, 2015
    Posts:
    150
    Should _LightColor0 be working in HDRP or is there any replacement? Using in custom shader I am getting only black color. I have to go around with Shader.SetGlobalColor("_SunColor", sunColor);

    Unity 2018.3.1.f1, HDRP 4.9, Forward rendering, Linear space, Tags { "LightMode" = "Forward" }
     
  21. Vagabond_

    Vagabond_

    Joined:
    Aug 26, 2014
    Posts:
    1,148
    Adding a grass texture in terrain ( Unity 20183.4f1 ) for painting details does not work when using HDRP, it is working with the standard pipeline though !
    Is this a know issue !?
     
  22. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Hi, thanks for pointing this. My bad. There is indeed a mistake here. We will fix this.
     
    dgoyette likes this.
  23. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Yes, it will not be supported in HDRP.
     
  24. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Hi, not sure what you refer to. Suppose it is Sky? You can look at the ProceduralSky.shader to know more.

    float4 _SkyParam; // x exposure, y multiplier
    float4x4 _PixelCoordToViewDirWS; // Actually just 3x3, but Unity can only set 4x4

    float _SunSize;
    float _SunSizeConvergence;
    float _AtmosphereThickness;
    float4 _SkyTint;
    float4 _GroundColor;

    float4 _SunColor;
    float3 _SunDirection;
     
  25. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Not plan currently.
     
  26. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Note: 5.3.1 of HDRP is public but isn't visible currently due to a bug in package manager.

    Here is the change log and various thing to pay attention:

    - Expect this version to be unstable, there is a lot of change and it is highly possible that various stuff don't work anymore (due to bug).
    - VR is broken in this version
    - We have change the reflection system. It is now unified and doesn't go through CPU anymore. So when you bake lighting, it now bake reflection probe on GPU. You can select what to render inside the cubemap with FrameSettings.
    - Note: There is a know issue with cubemap that render dynamic object in bake cubemap instead of only static like before. This can be workaround with tag

    - The postprocess package V2 have been replace by V3 and now everything use the RT handle system (a system which allow to reuse memory when scaling screen)
    - Software dynamic resolution have been introduce. Render world at lower resolution, upscale and draw UI on top
    - We have added a Render Pipeline wizard (in Windows -> Analysis) to detect wrong settings and also to allow to create a new scene with correct settings for HDRP from a provided scene prefab
    - A new hair shader is available
    - A new HD Unlit master node is available
    - Various physical unit have been added for light and for emissive (Lux At, EV100 etc...)
    - Whole lighting pipeline now use pre-exposure (we apply exposition of previous frame on current frame lighting to improve precision of lighting storage) and exposure is EV100 everywhere (https://en.wikipedia.org/wiki/Exposure_value).
    - Emissive can be pre-expose or not, or a weight of both. There is a slider for this and a new node in shader graph to control it. This allow to have an always glowing emissive even if lighting change.
    - There is physical camera control + new physical parameter to control DOF, MB etc...
    - There is support of multiviewport
    - Shader graph now expose GI input, so you can modify the GI (like do a multiply on it, provide another normal than vertex normal etc...)
    - UI of framesettings have been redone
    - Ambient probe for sky have been redone, it is now done on GPU and store for various cases (preview windows etc...) that should fix various flickering issue when multiple windows where open. This can be source of new bugs!

    - The pre-exposure and PPV3 finally allow to use correct Unit for the Sun (i.E 100 000 lux) with EV16. But the procedural sky from Unity doesn't support this at all. You must disable sun disc in it to get better behavior. We are starting to work on a new physically sky as a replacement. Procedural sky was just a straight port of builtin Unity (because we have no time to develop a new one) that nobody understand anymore.

    - Realtime Enlighten is in a bad state since a long time. Several features aren't supported (like color temperature), the intensity isn't correct and there is no inverse square falloff. Improvement should come but could be 2019.2

    Changelog:

    ## [5.3.1-preview] - 2019-01-28

    ### Added
    - Added software dynamic resolution support

    ### Fixed
    - Fixed a case of ambient lighting flickering because of previews

    ## [5.3.0-preview] - 2019-01-28

    ### Added
    - Added new API to perform a camera rendering
    - Added support for hair master node (Double kajiya kay - Lambert)
    - Added Reset behaviour in DebugMenu (ingame mapping is right joystick + B)
    - Added Default HD scene at new scene creation while in HDRP
    - Added Wizard helping to configure HDRP project
    - Added new UI for decal material to allow remapping and scaling of some properties
    - Added cascade shadow visualisation toggle in HD shadow settings
    - Added icons for assets
    - Added replace blending mode for distortion
    - Added basic distance fade for density volumes
    - Added decal master node for shader graph
    - Added HD unlit master node (Cross Pipeline version is name Unlit)
    - Added new Rendering Queue in materials
    - Added post-processing V3 framework embed in HDRP, remove postprocess V2 framework
    - Post-processing now uses the generic volume framework
    - New depth-of-field, bloom, panini projection effects, motion blur
    - Exposure is now done as a pre-exposition pass, the whole system has been revamped
    - Exposure now use EV100 everywhere in the UI (Sky, Emissive Light)
    - Added emissive intensity (Luminance and EV100 control) control for Emissive
    - Added pre-exposure weigth for Emissive
    - Added an emissive color node and a slider to control the pre-exposure percentage of emission color
    - Added physical camera support where applicable
    - Added more color grading tools
    - Added changelog level for Shader Variant stripping
    - Added Debug mode for validation of material albedo and metalness/specularColor values
    - Added a new dynamic mode for ambient probe and renamed BakingSky to StaticLightingSky
    - Added command buffer parameter to all Bind() method of material
    - Added Material validator in Render Pipeline Debug
    - Added code to future support of DXR (not enabled)
    - Added support of multiviewport
    - Added stereo instancing macros to a few shaders
    - Added HDRenderPipeline.RequestSkyEnvironmentUpdate function to force an update from script when sky is set to OnDemand
    - Added a Lighting and BackLighting slots in Lit, StackLit, Fabric and Hair master nodes
    - Added xrInstancing flag support to RTHandle
    - Added support for cullmask for decal projectors

    ### Fixed
    - Fixed logic to disable FPTL with stereo rendering
    - Fixed stacklit transmission and sun highlight
    - Fixed decals with stereo rendering
    - Fixed sky with stereo rendering
    - Fixed flip logic for postprocessing + VR
    - Fixed copyStencilBuffer pass for Switch
    - Fixed point light shadow map culling that wasn't taking into account far plane
    - Fixed usage of SSR with transparent on all master node
    - Fixed SSR and microshadowing on fabric material
    - Fixed blit pass for stereo rendering
    - Fixed lightlist bounds for stereo rendering
    - Fixed windows and in-game DebugMenu sync.
    - Fixed FrameSettings' LitShaderMode sync when opening DebugMenu.
    - Fixed Metal specific issues with decals, hitting a sampler limit and compiling AxF shader
    - Fixed an issue with flipped depth buffer during postprocessing
    - Fixed normal map use for shadow bias with forward lit - now use geometric normal
    - Fixed transparent depth prepass and postpass access so they can be use without alpha clipping for lit shader
    - Fixed support of alpha clip shadow for lit master node
    - Fixed unlit master node not compiling
    - Fixed issue with debug display of reflection probe
    - Fixed issue with phong tessellations not working with lit shader
    - Fixed issue with vertex displacement being affected by heightmap setting even if not heightmap where assign
    - Fixed issue with density mode on Lit terrain producing NaN
    - Fixed issue when going back and forth from Lit to LitTesselation for displacement mode
    - Fixed issue with ambient occlusion incorrectly applied to emissiveColor with light layers in deferred
    - Fixed issue with fabric convolution not using the correct convolved texture when fabric convolution is enabled
    - Fixed issue with Thick mode for Transmission that was disabling transmission with directional light
    - Fixed shutdown edge cases with HDRP tests
    - Fixed slowdow when enabling Fabric convolution in HDRP asset
    - Fixed specularAA not compiling in StackLit Master node
    - Fixed material debug view with stereo rendering
    - Fixed material's RenderQueue edition in default view.
    - Fixed banding issues within volumetric density buffer
    - Fixed missing multicompile for MSAA for AxF
    - Fixed camera-relative support for stereo rendering
    - Fixed remove sync with render thread when updating decal texture atlas.
    - Fixed max number of keyword reach [256] issue. Several shader feature are now local
    - Fixed Scene Color and Depth nodes
    - Fixed SSR in forward
    - Fixed custom editor of Unlit, HD Unlit and PBR shader graph master node
    - Fixed issue with NewFrame not correctly calculated in Editor when switching scene
    - Fixed issue with TerrainLit not compiling with depth only pass and normal buffer
    - Fixed geometric normal use for shadow bias with PBR master node in forward
    - Fixed instancing macro usage for decals
    - Fixed error message when having more than one directional light casting shadow
    - Fixed error when trying to display preview of Camera or PlanarReflectionProbe
    - Fixed LOAD_TEXTURE2D_ARRAY_MSAA macro
    - Fixed min-max and amplitude clamping value in inspector of vertex displacement materials
    - Fixed issue with alpha shadow clip (was incorrectly clipping object shadow)
    - Fixed an issue where sky cubemap would not be cleared correctly when setting the current sky to None
    - Fixed a typo in Static Lighting Sky component UI
    - Fixed issue with incorrect reset of RenderQueue when switching shader in inspector GUI
    - Fixed issue with variant stripper stripping incorrectly some variants

    ### Changed
    - ColorPyramid compute shader passes is swapped to pixel shader passes on platforms where the later is faster (Nintendo Switch).
    - Removing the simple lightloop used by the simple lit shader
    - Whole refactor of reflection system: Planar and reflection probe
    - Separated Passthrough from other RenderingPath
    - Update several properties naming and caption based on feedback from documentation team
    - Remove tile shader variant for transparent backface pass of lit shader
    - Rename all HDRenderPipeline to HDRP folder for shaders
    - Rename decal property label (based on doc team feedback)
    - Lit shader mode now default to Deferred to reduce build time
    - Update UI of Emission parameters in shaders
    - Improve shader variant stripping including shader graph variant
    - Refactored render loop to render realtime probes visible per camera
    - Enable SRP batcher by default
    - Shader code refactor: Rename LIGHTLOOP_SINGLE_PASS => LIGHTLOOP_DISABLE_TILE_AND_CLUSTER and clean all usage of LIGHTLOOP_TILE_PASS
    - Shader code refactor: Move pragma definition of vertex and pixel shader inside pass + Move SURFACE_GRADIENT definition in XXXData.hlsl
    - Micro-shadowing in Lit forward now use ambientOcclusion instead of SpecularOcclusion
    - Upgraded FrameSettings workflow, DebugMenu and Inspector part relative to it
    - Update build light list shader code to support 32 threads in wavefronts on Switch
    - LayeredLit layers' foldout are now grouped in one main foldout per layer
    - Shadow alpha clip can now be enabled on lit shader and haor shader enven for opaque
     
    Last edited: Feb 5, 2019
  27. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Thank you, Seb.

    I am really looking forward to this one, it cures all my concerns I had.
     
  28. YuriyPopov

    YuriyPopov

    Joined:
    Sep 5, 2017
    Posts:
    237
    So how do you suggest we go about painting details on the terrain? The vfx graph examples have a nice grass solution but that is more of a procedural aproach.
     
  29. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    i'd used gpu instancing for that, via draw indirect mesh or basic gpu instancing from shader
     
  30. Vagabond_

    Vagabond_

    Joined:
    Aug 26, 2014
    Posts:
    1,148
    How we suppose to add grass and detail meshes in terrain ?
     
  31. theprotonfactor

    theprotonfactor

    Joined:
    Oct 10, 2014
    Posts:
    140
    @SebLagarde Is there anything planned in terms of performance and optimization for HDRP? Do you think that the version that goes out of preview in 2019.3 will be any faster than the current 5.3.1 preview or should we expect more or less the same in terms of performance.
     
  32. crysicle

    crysicle

    Joined:
    Oct 24, 2018
    Posts:
    95
    Question:
    Does anyone know if there's an option to see Shader Graph's animations created by the time node in scene view? It works automaticly in Lightweight pipeline, however, for the hell of it, i can't find an option to make them happen in HD pipeline.
     
  33. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    4,196
    I believe I see these as long as I have Animated Materials checked. (https://answers.unity.com/questions/1177720/animated-shader-preview-in-scene.html) Though it's possible I'm wrong and that's only working with my non-SG shaders...
     
    crysicle likes this.
  34. crysicle

    crysicle

    Joined:
    Oct 24, 2018
    Posts:
    95
  35. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Terrain team work on other way of doing this. No ETA yet.
     
    Vagabond_ likes this.
  36. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Hi, sorry but the question is way too large, you need to be specific.

    Which platform, which API, which effects (Postprocess, lighting, shadow...) ?
    What is your current bottleneck and what kind of scene are you aiming for ? CPU or GPU ?
    What number of lights and type with which material ?
    Deferred or forward ? VR ? MSAA ? etc...

    This information are relevant because if we focus optimization on VR in MSAA for standard material, it will not help a project in deferred with lot of clear coat material.

    Generally speaking we will focus our effort on optimizing PS4/XBoxOne GPU and reduce memory usage/allocation. The CPU is mostly not part of HDRP. Also target FPS and resolution are very important. There is optimization like dynamic resolution that is up to you to use or not.

    Can I ask the purpose of the question ? If it is to evaluate the size of your content then I will suggest to always consider current performance as the one you need to fit with. Don't make plan about what optimization could come, always plan for the worst case. As much as possible we will avoid performance regression, so keeping metric based on current performance should be safe and if any optimization is coming, then it will be a win.
     
  37. keeponshading

    keeponshading

    Joined:
    Sep 6, 2018
    Posts:
    937
    The 5.3.1 chancelog is an fantastic read and piece of art.)
    Especially all the work towards physical units will allow new qualities in an full pbr ibl workflow.

    For me there is really only one topic left.
    A little more transparency and flexibillity of the HDRP towards
    Lightmapping.

    Would it be possible to allow custom lightmaps ( e.g. Shadergraph) and a more open and transparent lightmap asset would be great too.

    To have this hard dependencies to Enlighten and Progressive who still have a longer way to go makes everything really complicated.

    In our case we iterate the scenario to an fotoreal target quality and bake Lightmaps in Blender Cycles which is in terms of speed, quality, scallings and costs is benchmark for our needs.

    Bakery offers some great new possibilities too.

    Would be great when if is more easy to inject custom lightmapping to the HDRP.
    SRP.)
     
    Last edited: Feb 8, 2019
  38. Grimreaper358

    Grimreaper358

    Joined:
    Apr 8, 2013
    Posts:
    789
    Upcoming versions of HDRP and Shader Graph allows you to do this.
    upload_2019-2-7_19-37-19.png
     
    keeponshading likes this.
  39. konsic

    konsic

    Joined:
    Oct 19, 2015
    Posts:
    995
    How to create exponential volumetric height fog ?
     
  40. rz_0lento

    rz_0lento

    Joined:
    Oct 8, 2013
    Posts:
    2,361
    Any chance of getting some info on the SSR + MSAA issue? Would appreciate even simple yes/no answer if it's going to be solved eventually :)
     
  41. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    Hi, can't speak for the lightmapper team, but we have added in ShaderGraph GI inputs (this is in the 5.3.1 changelog I posted). Mean you can provide your own lightmaps / Custom baked GI through shader graph, or tweak the result of existing one (or provide orther UV set / Normal)

    There is also callback in the Lightmapping system so you can do some post-step, but I don't know much about it.

    [Edit: Just see the screenshots in the answer after your question, this is it]
     
    guycalledfrank and keeponshading like this.
  42. SebLagarde

    SebLagarde

    Unity Technologies

    Joined:
    Dec 30, 2015
    Posts:
    934
    SSR still not supported yet with MSAA. It is own our TODO but not ETA.
     
    rz_0lento likes this.
  43. crysicle

    crysicle

    Joined:
    Oct 24, 2018
    Posts:
    95
    Question:
    Does anyone know how to lighten the shadow's of directional light? Without the pipeline, the option would be under the directional light's "Strength" slider, however on the HD pipeline after thorough search, i have not found a single option for it.
     
  44. rz_0lento

    rz_0lento

    Joined:
    Oct 8, 2013
    Posts:
    2,361
    Go to your scene volume settings and add indirect lighting controller. It lets you tweak the indirect lighting.
     
    keeponshading, crysicle and konsic like this.
  45. crysicle

    crysicle

    Joined:
    Oct 24, 2018
    Posts:
    95
    Thanks for the answer, however your solution had no effect on my shadows. I was working with realtime shadows, perhaps that was the reason. The solution i found to my problem was under the 'Additional Shadow Data" script attached to my directional light gameObject which can only be accessed via debug mode. The property "Shadow Dimmer" manipulates the intensity of the shadows.
     
    rz_0lento likes this.
  46. TieSKey

    TieSKey

    Joined:
    Apr 14, 2011
    Posts:
    226
    Not sure if this is the right place for this but sending a bug report takes ages even with an almost empty project (like 2 hours at 512kbps). After adding the latest (5.3.1) HDRP, RPCore and ShaderGraph packages to Unity 2019.2.0a4 the HDRP one fails to compile with a "The type or namespace name AnimationCurveParameter could not be found" error.
    Tried reimporting, deleting both project and AppData unity caches, even deleting whole project library but the result is the same.

    Edit: ok, seems the CoreRP package was still v2.5.x and for some reason 5.3.1 was not listed for update. Now a couple of days later I could manually update it and everything seems to be compiling.
     
    Last edited: Feb 9, 2019
  47. norgalyn

    norgalyn

    Joined:
    Feb 15, 2014
    Posts:
    8
    Hi, I am sure you know about those limitations, but it would be really nice if the Lit Master node would be accepting normals and other fields in both Fragment and Vertex stage as it would make for a nice optimization and allow for more things as you get access to vertex data before interpolation. Also, transparent mode does not accept vertex animation.
     
  48. briank

    briank

    Joined:
    Mar 25, 2017
    Posts:
    74
    Is there a mapping of HDRP version -> Unity version, or is the supported HDRP version just whatever the package manager allows me to install?
     
  49. Danua

    Danua

    Joined:
    Feb 20, 2015
    Posts:
    197
    Please add Occlusion Probes in standart HDRP, this is just crucial improvement of graphics!
     
    id0 likes this.
  50. konsic

    konsic

    Joined:
    Oct 19, 2015
    Posts:
    995
    What are Occlusion Probes?