How would you make a flashlight for mobile platform without using actual dynamic light ?

Basically the goal is to make a flashlight (spotlight) for a mobile game without using actual dynamic light. I would imagine spot light and beam would be additive materials, but I still have no clue how to project them over geometry behind, so it “wraps” over it more or less nicely.

Any ideas?


I would just use a dynamic light, otherwise you’re going to end up with either a terrible effect for the same performance, or a lot of engine modification to do basically the same thing. Why don’t you want to use a dynamic light? You could always turn shadows off as you wouldn’t want them on a custom effect anyway.

Afaik, dynamic light is too performance taxing for mobile. That’s why I wanted something “cheaper”.

But there’s mobile-optimised dynamic lights now, those are the best performing thing for a non-2d game.

Where? Mobile simply supports dynamic shadows from Stationary lights. Direct movable light kills performance on Galaxy S6 without any shadows. With shadows it’s even worse.

If you just have single spot light. Then you could calculate spotlight effect at vertex shader for every material. Not very pleasant.
If you spotlight does not need to add light but can be just volumetrics then just render additive cone.
You could also render transparent object without depth test and darken full screen where light is not affecting.