OmniLight

Inherits: Light < VisualInstance < CullInstance < Spatial < Node < Object Omnidirectional light, such as a light bulb or a candle.

Description

Light that emits light in all directions. The light is attenuated by distance and this attenuation can be configured by changing its energy, radius, and attenuation parameters. Note: By default, only 32 OmniLights may affect a single mesh resource at once. Consider splitting your level into several meshes to decrease the likelihood that more than 32 lights will affect the same mesh resource. Splitting the level mesh will also improve frustum culling effectiveness, leading to greater performance. If you need to use more lights per mesh, you can increase ProjectSettings.rendering/limits/rendering/max_lights_per_object at the cost of shader compilation times.

Tutorials

  • 3D 灯光和阴影

    Properties

    Enumerations

    ShadowMode:
  • SHADOW_DUAL_PARABOLOID = 0 —- Shadows are rendered to a dual-paraboloid texture. Faster than SHADOW_CUBE, but lower-quality.
  • SHADOW_CUBE = 1 —- Shadows are rendered to a cubemap. Slower than SHADOW_DUAL_PARABOLOID, but higher-quality.

ShadowDetail:

  • SHADOW_DETAIL_VERTICAL = 0 —- Use more detail vertically when computing the shadow.
  • SHADOW_DETAIL_HORIZONTAL = 1 —- Use more detail horizontally when computing the shadow.

    Property Descriptions

  • float omni_attenuation Inspector by right-clicking the curve.

  • float omni_range omni_attenuation in use. No matter the omni_attenuation in use, the light will never reach anything outside this radius.

  • ShadowDetail omni_shadow_detail ShadowDetail.

  • ShadowMode omni_shadow_mode ShadowMode.