Sixty-four lights in one pass. The falloff is fitted to Unity's own point-light curve, so swapping a real light for a fake one changes the frame time and not the picture.A real forward point light adds an extra pass over every object it touches. Eight lights over a wall is eight passes over that wall.A fake light is four numbers in a global array. The shader loops over that array once, in the pass it was already drawing. Adding the sixty-fourth light adds one more iteration, not one more draw.MEASURED, NOT CLAIMEDTwo hundred objects, one scene, Unity 2022.3, Built-in forward:1 light: 0.42 ms real, 0.14 ms fake8 lights: 1.18 ms real, 0.14 ms fake16 lights: 2.39 ms real, 0.14 ms fake32 lights: 4.16 ms real, 0.15 ms fakeReal lights climb in a straight line. Fake lights do not move - 32 of them cost 7 percent more than one, and still cost a third of what a single real light does.The Fake Lights window has a Measure button that renders your own scene with the lights on and again with them off, so you get this comparison for your project rather than mine.IT LOOKS LIKE A REAL LIGHTUnity's own point-light falloff was rendered and read off pixel by pixel, and the inverse-square curve here is fitted to it: mean error 13 percent across the range, and the worst disagreement is past 90 percent of the range where both curves are already too dark to see.That is what makes "swap a real light for a fake one" a real instruction rather than a slogan. Same intensity, same range, same colour, same picture.SIMPLE TO USEGameObject > Light > Fake Light. It arrives already looking like a torch, not like eight sliders at zero.Eight presets to start from: Torch, Candle, Ceiling lamp, Neon, Broken tube, Magic, Muzzle flash, Moonlight. Each one says what it is for.Fake lights are invisible to every shader but this package's, which trips everybody once. So the inspector says so in red and offers one button that moves every material in the scene onto the Fake Lit shader, keeping its colour and its texture. One undo puts it back.CUSTOMISABLELight Profiles: save a look as an asset, drop it on two hundred lamps, edit it once and all two hundred change. Detach any single light whenever you want to go your own way with it.Custom falloff: set the falloff to Custom and draw the curve. It is baked into a texture the shader point-samples, and the editor reads the same baked data, so the graph in the inspector is the light rather than a picture of it. Sixteen curves can be in play at once.Six flicker styles: noise, candle, pulse, strobe, and one driven by a curve you draw. Every light gets its own seed, so a row of torches does not pulse in unison.Point, spot and directional shapes, with soft cone edges.WHAT YOU GIVE UPShadow casting and light cookies. That is the whole trade.Fake lights are for the lights that are there for atmosphere: lamps, torches, neon, muzzle flashes, pickups, magic. Keep real lights for the two or three that define the shape of a room and fake the other forty. The Fake Lights window converts them for you and warns you about the ones that cast shadows.NO DEPENDENCIESNo packages, no renderer feature, no shader to install. Built-in and URP.On URP the Setup window writes out a URP build of the shader in one click - same falloff, same pixels, plus a UniversalForward pass the SRP batcher accepts. It ships as a template rather than a shader so a project without URP still compiles.Objects on any other shader, including HDRP Lit, can still react through a Fake Light Receiver, which drives the material's emission through a property block.WHAT IS IN THE BOXFake Light: point, spot and directional, four falloffs, six flicker styles.Light Profile assets, and eight presets to start from.Fake Light Receiver for objects on any other shader.The Fake Lights window: budget, scene overview, one-click conversion of real lights, and a measurement of what the lights cost in your own scene.LightMath: plain C# falloff, cones and Lambert, callable from your own tools and tests.A demo scene: a hall with twenty-four lamps that flips between real and fake lighting on a keypress, with the frame time on screen.Full commented C# source.Support: koraykaftanoglu@gmail.comUp to 64 lights evaluated in a single pass, uploaded as shader globals so objects still batch.Inverse-square falloff fitted to Unity's own measured point-light curve: same intensity and range, same picture.Measured: 32 lights cost 0.15 ms where 32 real lights cost 4.16 ms, in the same 200-object scene.Point, spot and directional shapes, with a soft cone edge.Custom falloff curves you draw yourself, baked once and read the same way by the shader and the editor.Six flicker styles, including one driven by a curve. Per-light seeds.Light Profile assets: one look worn by many lights, edited in one place.Eight presets, and a GameObject > Light > Fake Light menu entry.One-click conversion of every material in a scene onto the Fake Lit shader, keeping colour and texture.A light budget with influence ranking, so a level can hold more lights than a frame can afford.Fake Light Receiver for objects on any other shader, driven through a MaterialPropertyBlock.Built-in and URP, with an SRP-batcher-compatible URP build written by the Setup window.Full commented C# source, and a demo scene that measures itself.

