4.14 point lights no longer work in orthographic

In 4.13 we were able to achieve a very nice-looking effect by adding normal maps to our sprites and lighting the scene with a combination of point and directional lights. 4.14 seems to have broken our implementation. It seems that point lights just aren’t working at all in orthographic view anymore.

Notice that in perspective mode, the point lights correctly light surfaces:

But in orthographic mode, only the directional lights are registering:

Steps to reproduce:

  1. Create sprite
  2. Add one of the “lit” sprite materials (I used the default one) to the sprite.
  3. Add a corresponding normal map to the additional textures array of the sprite.
  4. Add a point light to the scene.
  5. Note that the sprite appears lit in perspective mode but not orthographic mode.

I am hoping there is some new additional config I am missing here, but as far as I can tell it seems like a bug. I would appreciate any ideas!

I’ve found this issue as well although I’m using 3d meshes for my graphics. It inhibits both point and spot lights from showing in orthographic but perspective lights just fine.

Hi,

I’ve submitted a ticket for this that you can track the status of here: Unreal Engine Issues and Bug Tracker (UE-40089)

Thanks for reporting!

Tim

Backlogged :frowning: Any hope for this?

I noticed that too : / not sure how long bugs stay in the backlogged column over there, but it’s a pretty huge loss of functionality! If you don’t think we’ll get a fix in the next minor version or so we might have to start looking to revert to 4.13 :frowning:

@grygabrielphon

backlogged ticket scan be backlogged for a while. Unless you fix this in your own branches after 4.13, I’m not sure how soon it will be fixed, but I doubt it would be in a minor version as this is usually reserved for crashes.

There is still no action on that ticket and we are starting to feel a little hopeless about this. It is a huge deal for our game - robust lighting was part of why we went with UE in the first place and now it just doesn’t work at all. We are considering trying to patch it ourselves, but we have no idea where to start looking in the engine source code. Could you or anyone else on the team point us in the right direction?

Reverting back to 3.13 is probably the best course of action. You wouldn’t want to tinker with the source code unless you know what you’re doing or you’ll risk instability for your game.

This has been backlogged for a while so I wouldn’t hold my breath for a fix.

Thanks for the advice. You’re probably right. Shucks. I guess we’re stuck on 4.13 for a while then. And we just got maps in BP in 4.15; I could have really used that :’(

Point lights started working for me again in 4.14, and are continuing to work in 4.15! I was messing around with the settings on my material for an unrelated issue; imagine my surprise when point lights suddenly started working again on my sprite in orthographic mode!

I am not 100% sure what fixed it, but I BELIEVE I changed the blend mode to Translucent, and the Translucency lighting mode to Volumetric Directional. Can someone else confirm whether this change works for them?

Ah, yeah, this worked for me too. What’s strange is that I can’t see any of the lighting while I’m in the editor in orthographic view, but once I preview the game then all the lighting appears correctly. Either way, thank you for the fix grygabrielphon!

Nice, I’m glad it worked for you too!

One other thing I found out: if you go into Project Settings > Rendering > Forward Shading, and make sure the box for Forward Shading is checked, this should make the lighting work correctly in orthographic view (again, I found that in the editor you can’t see lighting, but once you preview the game then it should work). Just note that you’ll have to restart Unreal and it’ll recompile every shader in your project.

I would appreciate any ideas!

Install Unity for 2D stuff.

kinda works (lighting is blocky and weird) but when I enabled forward shading and waited for the 5000 shaders it then just removed the effect completely