Quick answer: Reimport the .ies file as an IES Light Profile, assign it to the light's IES Texture slot, set intensity units appropriately, and disable any conflicting cone-angle override.

An IES profile shapes a light's beam from real-world photometric data. If the beam looks like a plain cone, the profile is not applied or its intensity is being overridden. Reimporting and wiring it correctly restores the shape.

How to fix it

1. Import the .ies as a light profile

Drag the .ies file into the Content Browser so Unreal creates an IES Texture asset. If it imported as a plain texture, delete it and reimport so it is recognized as a profile.

2. Assign it to the IES Texture slot

On the light component, set the IES Texture property to the profile and enable Use IES Intensity if you want the profile's real intensity rather than a manual value.

3. Match the intensity units

Set the light's intensity in candelas/lumens consistent with the profile. A mismatched unit scale washes out the shaped falloff so it reads as a uniform cone.

4. Avoid overriding the cone

Spotlights with a manually clamped cone angle can crop the IES shape. Widen the outer cone so the profile's full beam pattern is visible.

Catching the ones you can't reproduce

The hardest version of this to fix is the one you can't reproduce — it only happens on a player's hardware, OS, driver, or save state, under conditions that simply aren't present on your machine. A report that says “it crashed” or “it froze” gives you nothing to act on, so the bug survives release after release while quietly costing you players.

Automatic error capture closes that gap. Each failure arrives with its full stack trace, the device and OS, the build number, and a breadcrumb trail of what the player did right before it broke, so even a failure you have never seen becomes a specific, reproducible issue. Fold identical failures into one signature ranked by how many players each hits, and your worklist sorts itself worst-first instead of arriving as a stream of vague complaints.

This is where a tool like Bugnet earns its place. Its SDK captures every Unreal Engine error automatically with the full stack trace plus device, OS, memory, build, and game-state context, folds duplicates into one grouped issue with an occurrence count, and ties each to the build it first appeared on — so you fix the problem that hurts the most players first and confirm it is gone when its signature disappears from the next release.

A crash you can name from its stack trace is a crash you can usually fix in minutes.