I have figured out the reason for my problem: SH lights are sampled from Light Probe and since Light Probe is baked only, I can’t have real-time SH lights neither.
However, I ran into another issue:
I can’t seem to get Emissive to work using Baked GI, somehow with LWRP, Light Probes aren’t including static emissive objects. LWRP Lit shader doesn’t offer a GI option for Emission, I am assuming they are default to “Baked”? Or are they default to “None”?
EDIT: asked on Reddit, unfortunately no one has a clue so far.
That would explain my problem with Baked GI, I am hoping LWRP team somehow maintain a known issue page somewhere (say trello?) because it’s pretty time consuming to prepare a bug report, I don’t want to waste anyone’s time submitting known issues.
EDIT: seem to be the case, no emission or baked point light bouncing in GI. My issues are now reported as case 1097667 and 1097669…
Just a note with HDR active, if highly emissive objects (or very bright specular objects) pass in front of a surface with this blur effect, they are blurred into the RT and show as a fringe.
Been testing the LRP for a few weeks now. The main bug that really bothers me is that dynamic lights do not work the same on PC and mobile both on 4.0.1 an 4.1.0. Originally I thought that not all the dynamic lights get rendered on mobile, but after some tests, I’ve noticed that their falloff is very different on mobile. I’ve built a simple scene to test this.
Watched UniteLA roadmap and finally see 2019.1 for a stable LWRP.
I just hope 2018 LTS won’t be stuck between a semi-outdated version of LWRP that no Asset Store packages will support (anything that rely on the core shader for shader generation, like Amplify Shader Editor or Toony Colors Pro 2)
Sorry for being away for a while. I’ll catch up on the thread and reply individually, by first let me say a couple of words on state of LWRP:
While being experimental some breaking changes will still happen unfortunately. This is not the ideal scenario as we don’t have a way on package manager to require a beta version of Unity. These changes are necessary so we evolve the API based on the feedback received and I apologize for the inconvenience. The good news is that LWRP and SRP Core is coming out of experimental in 19.1. After that no more breaking changes.
Here’s some Known Issues & Limitations that are on my radar at the moment. There are more issues being looked at but these are the ones I remember on top of my head that people reported in this thread or to me from other sources.
Light layer culling is not working for the Main Light. This requires engine changes. I have a PR waiting on LWRP side for those engine changes to go in. It requires engine changes and hopefully going to be available soon via new Unity version. LWRP will use the light assigned in as Sun in Light Settings as Main Light, otherwise the brighest directional light. Then light layer culling will work for all lights. - PostProcessing is not working with VR and LWRP. This is fixed now in postprocess package and a PR to re-enabled it in LWRP is inbound.
Additional directional lights are not supported yet. We haven’t started working on this yet, but most likely will be in for 19.1. All lights will be shaded in a single pass.
**There are some rendering issues when using multiple cameras depending on the effects enabled or platform. **Haven’t started looking at those yet. They will be fixed at some point before 19.1 - Terrain shaders are not fully ported to LWRP. We have no ETA on it yet. Sorry about the inconvenience. - Shader Variants / Build time - We are constantly looking at strip and optimize the amount of variants without introducing performance regressions. My advice for now is to avoid UsePass in your shaders as the stripper is not properly stripping those and double check if you have custom shaders that your shader uses the updated LWRP shader variants (changed in 4.0.0 version).
Thanks a lot for everyone using LWRP and providing feedback. This is crucial to deliver a nice product for everyone.
I can’t see from the log you’ve posted where’s the additional data coming from. I’ve asked around for more info but to help you better here it will be better if you can open a bug report for this.
The SimpleLit shader has less ALU and texture samples that the physically based one. In your case, since you don’t seem to have textures there the diff will be only in ALU. If your game bottleneck is not shader ALU then not visible performance difference will be seen.
It just because LWRP is lacking occlusion probes to propertly support mixed lighting. Occlusion Probes is in the backlog for 19.1. With that both subtractive and baked indirect mixed light modes will be supported.
That’s because LWRP doesn’t support transparent materials to cast shadows. They can only receive shadows. Alpha cutout materials can cast shadows though. You can have the desired effect by settings grass to be cutout + alpha mask/ alpha-to-coverage?
Built-in and LWRP can’t match visually anymore. The main difference is the light attenuation being physically based in LWRP. If you, however, only directional lights then it should be close enough unless you are using features not supported atm in LWRP.
As for performance, it also depends on your game.
If you have multiple lights and a moderately complex scene LWRP should perform better in 19.1 and 18.3 (RC).
If you have just a single directional light and the game is fill-rate bound LWRP and Builtin should have same performance.
If you have just a single directional light or unlit game and the game is driver or CPU bound: At the moment they should have same performance, however we have a new renderer batcher in SRP that’s disabled by default because we have some issues on iOS. We are fixing those issues atm and enable the batcher. In that case, with the new batcher, LWRP should be faster. This new batcher is what made possible the Megacity to run on mobile with LWRP.
Of course is very hard to claim that on all scenarios and all platforms, but we are progressing towards getting better performance with LWRP.
Sorry about this. There’s no dependency tracking and it’s a little bit hard to figure out because multiple teams are pushing work to engine that might break API and require new package. (HDRP, VR, Mobile, LWRP).