Settings and performance
The settings file
config/lambent-client.properties. Lambent writes it with every setting at its default the first time
the game starts, and writes it out again if a setting is missing. Restart the game after changing it.
These settings apply to every mod’s lights.
| Key | Default | Values | What it does |
|---|---|---|---|
lampDust |
true |
true, false |
Dust motes drifting in the beams. More of them when the beam is shut in (a barn, a tunnel); out in the open they blow with the wind a mod gives LambentClient.wind. |
beamHaze |
true |
true, false |
The lit haze in the air of the beams. |
lampEntityShadows |
true |
true, false |
Entities cast shadows in the beams, drawn with their own renderers, so a player’s shadow has arms and legs. Always off under a shader pack, because the pack’s programs replace the entity renderers’. |
pointShadows |
true |
true, false |
Point lights stop at the blocks and entities between them and a surface. Off, a flare lights through walls (but still only within its hollow). |
shadowResolution |
1024 |
256, 512, 1024, 2048 |
Each spot light’s shadow map size in pixels. Other values round down to one of these. |
Veltorque’s own settings (high beams, reverse lamps, how many flares light and glare) are in
veltorque-client.properties; Lambent’s are only how the lights are drawn.
What things cost
Lambent does no work in a frame with no lights. The costs below are for when something is lit.
| Part | Cost | Setting that saves it |
|---|---|---|
| Shadow maps | One tile per spot light, drawn every frame: the block mesh round the beam plus every entity in it. | lampEntityShadows=false, a lower shadowResolution |
| Shadow block meshes | Built over several frames, never all in one. Rebuilt when the beam nears the mesh’s edge, at once when a block in it changes, and now and then in case one changed unseen. | |
| Light pass | One fullscreen pass, plus the air at half size. Pixels out of every light’s reach are skipped early. | beamHaze=false |
| Dust | Placed and lit on the GPU from its number alone; only the motes inside a beam reach the pixels. | lampDust=false |
| Point shadows | A ray march per lit pixel near a point light, plus the Solids and Skyline textures, updated a few chunks a frame and only while a point light needs them. |
pointShadows=false |
| Bloom | Only the part of the screen round the lenses, at half size, blurred twice. |
Mods control the rest: how many lights they hand over. Veltorque’s flareLights and flareGlares cap
how many flares become point lights and glows.
Shader packs
Lambent detects Iris (or Oculus on 1.20.1) through Iris’s API and draws over the pack’s last pass.
Under a pack only blocks cast shadows in the beams, and LambentClient.shaderPackInUse() lets a mod
change what it does too. Veltorque, for example, turns its own smoke and fire off.
Troubleshooting
| What you see | Why, and what to do |
|---|---|
Light source ... failed and is off until the resources reload in the log |
A mod’s source threw. The stack trace names the mod. Press F3+T to try again. |
Lights failed and are off until the resources reload |
Lambent’s own drawing failed, usually a shader that would not compile on this driver. The log has the compiler’s message. |
| Beams but no shadows from players or mobs | A shader pack is on, or lampEntityShadows=false. |
| A flare lights the other side of a wall | pointShadows=false, or the wall is outside the blocks Lambent tracks round the eye. |