newLight_Point

From Valve Developer Community
Jump to navigation Jump to search
English (en)Translate (Translate)
NewLight Point.png

newLight_Point is a point entity available in Black Mesa Black Mesa. It is one of the many new lighting entities available. Black Mesa incorporates a new lighting system which utilizes Deferred lighting to create dynamic lighting system with dynamic shadows, which allows to complement and quite enliven some scenes, it is also nice effect for moving objects, such as trains. It is also include fine tuning Godrays and lightcookies.

Warning.pngWarning:New lights use expensive gbuffer, that means that with this entity your scene rendering at least 5 times, which makes your level very expensive, considering that XenEngine uses 32-bit architecture and DirectX 9.5 rendering. In large quantities, new lights can greatly heat up your computer and also cause large FPS drops (depending on difficulty of your map and how your area open). Use wisely.
Note.pngNote:You can have only 512 point light entities placed in the map editor.

Represented by class CNewLightPoint.

Todo: Rework this page.
Black Mesa Level Creation


Keyvalues

Name (targetname) <string>
The name that other entities refer to this entity by.
Parent (parentname) <targetname>
The name of this entity's parent in the movement hierarchy. Entities with parents move with their parent.
Pitch Yaw Roll (Y Z X) (angles) <angle> !FGD
This entity's orientation in the world. Pitch is rotation around the Y axis, yaw is the rotation around the Z axis, roll is the rotation around the X axis.
Icon-Important.pngImportant:Have huge differences if you use texture for your newLight_Point.
Enabled (Enabled) <choices>
Enable/Disable this Entity.

Determines if the light is off at level start.

  • 0: Enabled
  • 1: Disabled
Appearance (FlareStyle) <choices>
Appearance presets.

Template:Light appearances

Tip.pngTip:Static lightmapped lights reduces performance with custom appearance (especially near displacements). If this cause problems, you can use replace your static lights with new lights, if used correctly - in most cases this will significantly preserve performance.
Light Color (LightColor) <color255>
This is the color of the sunlight.

Determines color of light.

Light Ambient Color (LightColorAmbient) <color255>
This is the ambient color of the sunlight.

Determines color of shadows that light source creates.

Examples


Light Intensity (Intensity) <float>
RGB * Intensity.

Brightness of the light.

Note.pngNote:With 0 will not draw, process and specular shader be disabled.
SpecularMultiplier (SpecMultiplier) <float>
0 to 1 RGB * Intensity * SpecularMultiplier.

Brightness of the specular shader from this light source.

Examples


Range (Range) <float>
How far the light source illuminates. Measured in Hammer Units.
Icon-Important.pngImportant:It greatly affects optimization, less is better.
Examples


Light Type (LightType) <choices>
Determines the light type.
  • 0: Static - shadows are cast only by static objects (prop_static, geometry, etc.). Lighting does not update if it has parent (use if part scene has no large moving parts, or shadow accuracy is not important).
  • 1: Stationary - shadows are cast by static and dynamic objects, lighting does not update if it has a parent.
Icon-Important.pngImportant:Shadows for dynamic props update, but baked for geometry. That means that shadows from func_physbox and other dynamic geometry will never update, and shadows from other geometry on them too.
  • 2: Dynamic - lighting is not baked at all. Shadows are cast by static and dynamic objects, lighting updates if it does have a parent. This light is quite expensive, and should only be used for moving light sources, or if your scene have moving geometry.
Examples


HasShadow (HasShadow) <choices>
Do you want this light to have shadows?

Determines whether the light source will cast shadows. Remember that default choices is No.

  • 0: No
  • 1: Yes
Examples


ShadowMapLOD (ShadowLod) <choices>
Resolution of ShadowMap used by this light.

Determines quality of shadows. 1024 is very expensive, use it only in places where it's really needed, in most cases 512 is good alternative. 256 produces the blurriest shadows, but it is also the cheapest.

  • 0: 256
  • 1: 512
  • 2: 1024
Examples


ShadowFaceX (ShadowFaceX) <choices>
Shadow Enabled for this Face ?

Determines whether the given side lighting will display shadows.

  • 0: Enabled
  • 1: Disabled
ShadowFaceX_Minus (ShadowFaceX_Minus) <choices>
Shadow Enabled for this Face ?

Determines whether the given side lighting will display shadows.

  • 0: Enabled
  • 1: Disabled
ShadowFaceY (ShadowFaceY) <choices>
Shadow Enabled for this Face ?

Determines whether the given side lighting will display shadows.

  • 0: Enabled
  • 1: Disabled
ShadowFaceY_Minus (ShadowFaceY_Minus) <choices>
Shadow Enabled for this Face ?

Determines whether the given side lighting will display shadows.

  • 0: Enabled
  • 1: Disabled
ShadowFaceZ (ShadowFaceZ) <choices>
Shadow Enabled for this Face ?

Determines whether the given side lighting will display shadows.

  • 0: Enabled
  • 1: Disabled
ShadowFaceZ_Minus (ShadowFaceZ_Minus) <choices>
Shadow Enabled for this Face ?

Determines whether the given side lighting will display shadows.

  • 0: Enabled
  • 1: Disabled
NearZ (NearZ) <float>
NearZ used by shadowmap camera for this light.

Determines distance at which light source will cast shadows.

DepthBias (DepthBias) <float>
DepthBias - Offset added to depth values in shadowmaps.
Examples


SlopeDepthBias (SlopeDepthBias) <float>
Slope Depth Bias - For surfaces having aliasing due to steep angles with light.
Examples


NormalBias (NormalBias) <float>
While rendering objects into shadow maps, each vertex will be moved along -ve Normal direction, giving it an appearance of shrinking while rendering to shadow maps. This property determines the amount of Units to be moved. Helps with shadow aliasing.
Examples


Icon-Bug.pngBug*:Numbers lower than 0.8 can cause huge graphics problems.
The bug example


ShadowRadius (ShadowRadius) <float>
Radius of shadow edges for soft shadows. If its value is negative, code will auto assign a value depending on shadowlod. These code based values can be adjusted via convars nr_shadow_rad_High,nr_shadow_rad_Med and nr_shadow_rad_Low.

Determines shadow blur. Low numbers are expensive to render.

Examples


Enable Texture Light (bTexLight) <choices>
Enable Texture Ligh.

Determines whether the given light source uses .vtf texture from game files (just like env_projectedtexture). With NewLight_Point, this technically works like a cube. The best example is the batteries that use lights/lightcookie_battery.vtf.

  • 0: Disabled
  • 1: Enabled
Examples


Tip.pngTip:Lightcookie texture works just like static cubemap textures. Follow this steps to create your own lightcookie texture.
Note.pngNote:One of the most expensive features, use wisely. If shadows enabled - it can work with lags even with powerful PC.
Texture name for TexLight (texName) <string>
Determines which texture will use light source. It use .vtf files, not .vmt.
.Enable Prop Only Mode (bNegLight) <choices>
Enable Prop Only Mode.
Todo: Document what it does.
  • 0: Disabled
  • 1: Enabled
LightnGodRayMode (LightnGodRayMode) <choices>
0:Light 1:Godrays 2:Both Light and GodRays.
  • 0: Light
  • 1: Godrays
  • 2: Both Light and GodRays
Examples


Note.pngNote:The game will think that the godrays is used if choice is Godrays or Both Light and GodRays, even if godrays is turned off.
EnableGodRays (EnableGodRays) <choices>
Enable GodRays.

Determines whether godrays are enabled or not at map start.

  • 0: Disabled
  • 1: Enabled
Warning.pngWarning:You can have only 40 point lights with godrays enabled simultaneously, otherwise game will crash with this error message.


Note.pngNote:Godrays are draw and process even with closed areaportals.
Example


Density (Density) <float>
Density Controls the length of rays/volumetric shadows. 1.0 should work in 99% cases. Good values to start from: 0.5 to 1.5.
Examples


Weight (Weight) <float>
Weight Controls the intensity of volumetric shadow. Blocking of rays by geometry. Good values to start from: 0.1 - 10.0.
Examples


Decay (Decay) <float>
Decay NOT being used.
Todo: Document what does it change.
Exposure (Exposure) <float>
Exposure Controls the intensity of Rays during blending pass with main scene. 2.0 is a good start. Good values are 1.0 - 10.0.
Examples


DistFactor (DistFactor) <float>
DistFactor Controls the falloff of rays / length. 1.0f is a good starting value increase or decrease in the increments of 0.1. 0.0 will make the rays dissappear only disk will be rendererd.
Examples


DiskRadius (DiskRadius) <float>
Radius of Disk/circle of sun in texturespace. 1.0 will be full screen 0.5 is half screen etc.
Examples


Note.pngNote:With 0 - will not render.
ColorInner (ColorInner) <color255>
This is the color of the inner circle.
Examples


Note.pngNote:Unlike lighting - brightness of inner depends on fourth number which can be written here.
ColorRays (ColorRays) <color255>
This is the color of the rays.
Examples


Note.pngNote:Unlike lighting - brightness of rays depends on fourth number which can be written here.
GodRaysType (GodRaysType) <choices>
GodRaysType.
  • 0: Normal
  • 1: Fancy
Examples


DiskInnerSizePercent (DiskInnerSizePercent) <float>
Used only in Fancy Gaphics Mode. Disk inner circle radius = DiskRadius * DiskInnerSizePercent.
Examples


Note.pngNote:With 0 - will not render.
ColorOuter (ColorOuter) <color255>
Used only in Fancy Mode. This is the color of the outer circle.
Examples


Note.pngNote:Unlike lighting - brightness of outer depends on fourth number which can be written here.
Ell_FR_ConstA (Ell_FR_ConstA) <float>
This is fancy Godrays disk size.
Note.pngNote:For fancy Godrays only.
Examples


Ell_FR_ConstB (Ell_FR_ConstB) <float>
This is fancy Godrays disk distortion.
Note.pngNote:For fancy Godrays only.
Examples


EEll_SR_ConstA (EEll_SR_ConstA) <float>
This is fancy Godrays disk hole size.
Note.pngNote:For fancy Godrays only.
Examples


EEll_SR_ConstB (EEll_SR_ConstB) <float>
This is fancy Godrays disk hole distortion.
Note.pngNote:For fancy Godrays only.
Examples


Ell_RRF_ConstA (Ell_RRF_ConstA) <float>
This is fancy Godrays inner size.
Note.pngNote:For fancy Godrays only.
Examples


Ell_RRF_ConstB (Ell_RRF_ConstB) <float>
This is fancy Godrays inner distortion.
Note.pngNote:For fancy Godrays only.
Examples


RotSpeed (RotSpeed) <float>

Determines rotating speed of fancy rays, 0 - don't rotate, negative number - will rotate to left.

Note.pngNote:For fancy Godrays only.
Examples


RotPatternFreq (RotPatternFreq) <float>

Determines count of fancy rays in frame, with negative number will deny RotSpeed +/- effect.

Note.pngNote:For fancy Godrays only.
Examples


RenderInWorldSpace (m_bEnableWorldSpace) <choices>
Disables disks if this enabled.
m_fAlphaDiskInner (m_fAlphaDiskInner) <float>
m_fAlphaDiskOuter (m_fAlphaDiskOuter) <float>
UseToneMapRays (m_bUseToneMapRays) <choices>
  • 0: Enabled
  • 1: Disabled
UseToneMapDisk (m_bUseToneMapDisk) <choices>
  • 0: Enabled
  • 1: Disabled
ShadowPass_Brush (m_bSRO_Brush) <choices>
Do we want to Render Brushes in shadow passes for this light?
  • 0: YES
  • 1: NO
ShadowPass_StaticProp (m_bSRO_StaticProp) <choices>
Do we want to Render StaticProps in shadow passes for this light?
  • 0: YES
  • 1: NO
ShadowPass_DynProp (m_bSRO_DynProp) <choices>
Do we want to Render Dynamic Props in shadow passes for this light?
  • 0: YES
  • 1: NO
ShadowPass_AlphaTest (m_bSRO__Trans) <choices>
Do we want to Render AlphaTested Objects in shadow passes for this light?
  • 0: YES
  • 1: NO
bUseOldFallOff (bUseOldFallOff) <choices> !FGD Obsolete
Deprecated.
Enable old falloff similar to light/light_spot.
  • 0: No
  • 1: Yes
falloffConstant (falloffConstant) <integer> !FGD Obsolete
Deprecated.
Constant (work only if bUseOldFallOff enabled).
falloffLinear (falloffLinear) <integer> !FGD Obsolete
Deprecated.
Linear (work only if bUseOldFallOff enabled).
falloffQuadratic (falloffQuadratic) <integer> !FGD Obsolete
Deprecated.
Quadratic (work only if bUseOldFallOff enabled).

Inputs

SetColorLight <color255RedirectInput/color32>
Change Light's Color value. Doesn't affect the godrays.
SetIntensityForLight <floatRedirectInput/float>
Change Light's intensity value. Doesn't affect the godrays.
TurnOnGodRays <void>
Turn the Godrays on.
TurnOffGodRays <void>
Turn the Godrays off.
TurnOn <void>
Turn the light on.
TurnOff <void>
Turn the light off.
Toggle <void>
Toggle the light's current state.

Shadow map slots

Shadow map slots is how many lights with shadows you can have per level. There are 3 separate shadow map slots, High (for lights with 1024 value for ShadowMap LOD property), Medium (for lights with 512 value for ShadowMap LOD property) and Low (for lights with 256 value for ShadowMap LOD property).

In High and Medium you can have 48 separate shadow maps, for Low you can have 47 separate shadow maps (143 shadow maps in total).

Each spot light with shadows takes 1 shadow map slot, so you can have 48/47 spot lights with shadows, if they are using the same value for ShadowMap LOD property.

Each point light with shadows takes 6 shadow map slots. This is due to point light isn't just omnidirectional light source, it's 6 spot lights in one entity. This means that you can have 8 point lights with shadows, if they are using the same value for ShadowMap LOD property. You can increase this value if you need, just disable shadows for one of the shadow face properties.

If one of the shadow map slots is full - you will not be able to have shadows for more lights with such shadow quality, you will need to use other value for ShadowMap LOD property.

Point lights and spot lights doesn't counts separately. You can't have 48 spot lights with 8 point lights, but you can have 6 spot lights with 7 point lights.

You can free up shadow map slots with Kill input. So, you can place triggers which will Kill lights that player can't see and spawn new lights via point_template (uncheck the second flag for point_template, this prevents some bugs). This helps a lot when you want to have many dynamic lights in different areas.

Important to note that due to some engine bugs you can't use many lights with shadows. Some tests show that 9th point light cause lights with shadows to be very glitchy. This can be done with spot lights as well. So don't be surprised if at some point you find something like this.

It looks like you can workaround it if you will switch ShadowMap LOD property values from higher to lower.

Tip.pngTip:You can use nr_debug_print_shadow_slots_info to get full info about shadowmap slots.

Lighting behavior with VIS and areaportals

Static type

Static type is the most stable, since its shadows are baked in and updates only with save loads or while lighting turning on. It shows all shadows even with closed areaportal.

Stationary type

Shadows for static props and brushes are baked, but not for physics props and other dynamic models. This means that shadows from dynamic models will disappear if they are hidden by a closed areaportal or if VIS is hiding such objects. Shadows for static props and brushes will not disappear.

In some cases, this can be noticeable if dynamic model creates a large shadow.

Dynamic type

Shadows for static props and world geometry are baked, but not for dynamic models and brushes. This means that shadows from dynamic models and brushes will disappear if they are hidden by a closed areaportal or if VIS is hiding such objects. Shadows for static props and world geometry will not disappear. Moving lighting will update shadows for static props and world geometry, even with closed areaportal.

Player spawn and areaportals

If player spawned in position where areaportal don't hide objects - shadows will be fine. Otherwise, static shadowmap will not see models with bmodels and will bake shadows only for world geometry and displacements. This problem is not relevant only for Dynamic light type. The problem disappears after save reload from proper position.

Lighting behavior with start/end fade dist for prop_static

This mechanic has some many issues with static shadowmaps. It seems that there are limitations that don't allow to fix these issues, or this issues was not noticed at the development stage.

Static type

If player spawns in fade radius - shadows will never disappear (until save reload if out of radius).

If player spawns out of radius. - shadows will never appear (until save reload in radius).

The same for props with both Start and End fade dist.

Stationary type

The above mentioned issues are also available for this type.

Appears issue for prop_static with both Start and End fade dist.

If player spawns in Start fade radius - shadows will never disappear (until save reload if out of radius). The same happens if player spawns in End fade radius.

If player spawns out of radius. - shadows will appear if you are in End fade radius and disappear if you are in Start fade radius (until save reload in radius). This happens because prop_static actually disappears completely, and creates a separate object as a fading model (this is also why decals disappear at out of Start fade radius).

Dynamic type

Dynamic type don't use static shadowmaps at all. This means that there is no problems with fading prop_static at all.

Icon-Important.pngImportant:All the issues is also available for func_lod.

Dedicated ConVars

Cvar/Command Parameters or default value Descriptor Effect
nr_allow_hammer_nerfs 0 Integer Allow new lights nerfs via Newlights_gbuffersettings entity.

0 - Disabled.

1 - Allowed.

2 - Enabled/Forced.

nr_allow_hammer_nerfs_4ways 0 Integer Allow Enable4WaysFastPath property from Newlights_gbuffersettings entity.

0 - Disabled.

1 - Allowed.

2 - Enabled/Forced.

nr_shadow_max_passes_per_frame 16 Float Frame per second in shadowmaps. The higher the value, the smoother and faster the shadows from objects can change. The recommended value is 24-28, not higher.
Icon-Important.pngImportant:The game can change its value independently, depending on the number of shadowmaps in frame. The game returns to the previous value if the number of shadowmaps decreases.
Icon-Bug.pngBug:"End Game" chapter crashes with 29 and higher values.
nr_shadow_quality 4 Integer Sets shadow quality and enable/disable shadows for all or certain objects. Controlled by Dynamic Shadow Quality option. Only 5 values are available here.

0 (Disabled) - Shadows are completely disabled.

1 (POTATO) - Shadows are available for world geometry and displacements, only for Static and Stationary light types. The shadows are very pixelated. The player's flashlight also gets very simple shadows with "stairs".

2 (Low) - Added brush entities in shadowmaps, only for Static and Stationary light types.

3 (Medium) - All the shadows are also available for Dynamic light type.

4 (Hight) - Added dynamic models in shadowmaps for Stationary and Dynamic.

Note.pngNote:This cvar needs save reload to see changes.
mat_unlock_gfx_highend_unsupported 0 Bool When enabled this convar will unlock extreme graphics options. There will be a significant FPS drop when running game on ULTRA or INSANE configs. Game will consume upto 3 gigs of VRAM when some of the extreme graphics options have been enabled. These high end graphics config options are not officially supported. Don't enable this unless you have at least 3.5 GHZ quad core CPU with GTX 1080. These options are mainly for debugging and modders.
nr_lights_quality 4 Integer Sets lights quality, state (for specific entities), enable/disable effects. Controlled by Dynamic Light Quality option. Only 7 values are available here.

0 (POTATO) - Disabled muzzle flash light (regardless of muzzleflash_light), lighting from batteries (regardless of cl_battery_dlights), light sources from dynlightscript.txt, dynamic lights are also disabled for some other entities. Halflambertion is disabled. New specular is disabled. Bumpmaps are disabled. Lights are disabled completely in secondary cameras (monitors, water, etc). Overlaying on viewmodel looks pretty broken. Light is not smoothed out (most noticeable in the least bright areas).

1 (Low) - Allowed muzzle flash light, lighting from batteries, enabled light sources from dynlightscript.txt, other dynamic lights are also enabled for some other entities. Enabled bumpmaps for models.

2 (Medium) - Enabled bumpmaps for models. Lights in secondary cameras, but most effects is disabled.

3 (Hight) - Enabled bumpmaps for brushes. Halflambertion with new specular is enabled. Fixed overlaying on viewmodel. Light is smoothed out.

4 (Very Hight) - Bumpmaps are also uncompressed, this makes lighting on surfaces more detailed.

5 (INSANE) - All the effects is enabled in secondary cameras.

6 (DevOnly) - This one for developers only. Includes uncompressed buffers and 32-bit depth. Don't use if you are general player or modder.

Note.pngNote:This cvar needs save reload to see changes.
nr_shadow_res 0 Integer Affects the quality of shadows. Controlled by Dynamic Shadow Memory option. Only 4 values are available here.

0 (Hight) - Hight quality.

1 (Medium) - Medium quality.

2 (Low) - Low quality.

3 (POTATO) - Very low quality.

Note.pngNote:This cvar needs save reload to see changes.
nr_shadow_res_dkvk 0 Integer It doesn't seem to work.
r_4way_minimal_mode_override -1 Integer Enable/disable bumpmaps for Lightmapped_4WayBlend. Since one material of this shader provides 4 bumpmaps at once, disabling them will significantly affect performance.

-1/0 - Enabled. 1/2 - Disabled.

Note.pngNote:This cvar needs mat_reloadallmaterials to see changes.
np_gr_quality 2 Integer Enable/disable godrays. Controlled by God Rays option or Enable God Rays button (if used VGUI).

0 - Disabled.

1/2 - Enabled. 1 supposed to enable godrays only for newlight_dir and 2 for point lights and newlight_dir, but currently both values enable both types.
np_gr_quality_sample_count 3 Integer Amount of samples for godrays. This affects the quality/detail of the rays. Controlled by God Rays option, although the original game never changes the value (always 3). Min value is 0, max is 4. The max value is not recommended, it has a huge impact on frame rate, at the same time it does not create a big difference in the game.
np_gr_quality_pass_count 1 Integer Pass count. Not very clear what exactly this affects, but it significantly reduces performance, and Fancy Rays also become pretty buggy. Controlled by God Rays option, although the original game never changes the value (always 1). Min value is 0, max is 4. Use the default value only.
nr_gbuffer_for_reflection_enabled 1 Bool Enable/disable gbuffer for water reflections.
nr_gbuffer_for_refraction_enabled 1 Bool Enable/disable gbuffer for refractions.
nr_gbuffer_for_secondary_cams_enabled 1 Bool Enable/disable gbuffer for secondary cameras (monitors, etc).
nr_gbuffer_for_secondary_cams_quality -1 Bool New lights quality in secondary cameras and water reflections. With -1 it will use quality from nr_lights_quality cvar. With 0-5 it will use itown quality settings (in the same way as nr_lights_quality).
nr_shadow_filter_quality 2 Integer Sets shadow filter quality. Min value is 0, max is 3.

0 (POTATO) - Shadow filter disabled.

1 (Medium) - Medium quality.

2 (Hight) - Hight quality.

3 (INSANE) - Best filter quality.

nr_shadow_rad_Low 1.0 Float Sets shadow filter quality scale for lights with 256 ShadowLOD value.
nr_shadow_rad_Med 1.5 Float Sets shadow filter quality scale for lights with 512 ShadowLOD value.
nr_shadow_rad_Hight 1.5 Float Sets shadow filter quality scale for lights with 1024 ShadowLOD value.
nr_shadow_biasoverwrite 0 Bool Used by New Lights Editor. Allows/disallows to overwrite bias related values.
nr_shadow_nearz_overrite -1.0 Float Used by New Lights Editor. Changes NearZ value for all new lights.
nr_shadow_rad_override 0 Bool Used by New Lights Editor. Allows/disallows to overwrite shadow radius related values.
nr_shadow_fov_overrite -1 Float Used by New Lights Editor. If the value of this convar is higher than -1 it will overrite FOV for shadowed lights.
nr_shadow_biasdepth 0.0002 Float Used by New Lights Editor. Changes Depth Bias value for all new lights.
nr_shadow_biasnormaloffset 1 Float Used by New Lights Editor. Changes Normal Bias value for all new lights.
nr_shadow_biasslope 0.2 Float Used by New Lights Editor. Changes Slope Depth Bias value for all new lights.
nr_shadow_active 666 Integer Sets max active shadowmaps. The value seems hardcoded.
nr_debug_print_shadow_slots_info Void Prints text to the console about shadowmap slots and their light sources.

It prints light type (point or spot) with their index, shadowmap enabled state (for each face), shadowmaps number, new light's targetname and position of it.

Below it also prints information about free shadowmap slots for each shadow resolution.

nr_debug_force_shadowmap_res -1 Bool Only for debugging. Forces all new lights to use specified shadowmap resolution. -1 means use value from the property.
nr_debug_force_dynamic_on_all_stationary_lights 0 Bool Only for debugging. Forces all stationary new lights to be fully dynamic and update even baked shadows.
nr_debug_force_lightstyle 0 Integer Only for debugging. Forces all new lights to use specified appearance/light style. Possible values are 0-13. 13 for custom style from nr_debug_force_lightstyle_custom_string. 0 means use use value from the property.
nr_debug_force_lightstyle_custom_string 1 String Only for debugging. Forces all new lights to use custom appearance/light style. Works the same as with lightmapped lights.
nr_debug_shadow_render_internal_disable 0 Bool Only for debugging. Forces all new lights to disable shadowmaps rendering.
nr_debug_shadow_print_indices_assignment 0 Bool Only for debugging. Prints text to the console about all new light sources and shadowmaps after level/save loading.
nr_debug_lights_mesh 0 Bool Only for debugging. Enable/disable new lights mesh.
nr_debug_lights_mesh_fullscreen 0 Bool [Todo]
nr_debug_light_mesh_volumesize_large 0 Bool Only for debugging. Enable/disable new lights large mesh volume size mesh.
nr_debug_cull_deferred_lights 1 Bool [Todo]
nr_debug_cull_deferred_code_lights_via_bsp 1 Bool [Todo]
nr_fps_spam 0 Bool For devolopers only. Spamming in the console performance values. Numbers aren't accurate.
nr_light_spot_bbox_optimizie 2 Intenger Sets BBOX type for spot lights. Min value is 0, max is 3. There are note that 1 is broken. 3 makes BBOX size very small, so spot light sources will disappear even if they are in the player's field of vision.
nr_light_spot_mesh_volumesize_large 0 Intenger This makes BBOX larger than it needs to be.
nr_lights_info Void Used by the game when you launch it. Prints in the console info about hardware support for texture formats, allocated formats and quality settings.
nr_lights_vol_check_threshold 10 Float [Todo]
nr_light_settings_transition_exp 2 Float [Todo]
nr_lights_procedural_disable_all_lights 0 Bool Disable all proceduraly created new lights (npc_zombie_hev, item_battery, weapons, etc).
nr_lights_procedural_enable_lights_priority_check 1 Bool If enabled - all the code based procedural lights will go through priority based check before adding to render queue.
r_nr_deffered_debug_normals 0 Bool Enable/disable normals debug.
r_nr_deffered_force_diffuse_only 0 Bool Forces new lights to use diffuse texture only.
r_nr_deffered_lights_hlslclip_range_on 1 Bool Enable/disable actual new light range in normals debug.
r_nr_deffered_lights_hlslclip_dir_on 0 Bool [Todo]
r_nr_deferred_AA_fix_multiplier 1 Bool Fixes anti aliasing issues.
Example.


Note.pngNote:Work in progress! It's not full list.

Bugs/Limitations

See /Bugs and limitations

See also

Todo: Investigate and document some keyvalues and functions. Clean up english. Add more issues if you'll find.