mirror of
https://github.com/godotengine/godot-docs.git
synced 2026-01-04 14:11:02 +03:00
136 lines
5.3 KiB
ReStructuredText
136 lines
5.3 KiB
ReStructuredText
:github_url: hide
|
|
|
|
.. Generated automatically by doc/tools/makerst.py in Godot's source tree.
|
|
.. DO NOT EDIT THIS FILE, but the OmniLight.xml source instead.
|
|
.. The source is found in doc/classes or modules/<name>/doc_classes.
|
|
|
|
.. _class_OmniLight:
|
|
|
|
OmniLight
|
|
=========
|
|
|
|
**Inherits:** :ref:`Light<class_Light>` **<** :ref:`VisualInstance<class_VisualInstance>` **<** :ref:`Spatial<class_Spatial>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
|
|
|
|
Omnidirectional light, such as a light bulb or a candle.
|
|
|
|
Description
|
|
-----------
|
|
|
|
An Omnidirectional light is a type of :ref:`Light<class_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.
|
|
|
|
Tutorials
|
|
---------
|
|
|
|
- :doc:`../tutorials/3d/lights_and_shadows`
|
|
|
|
Properties
|
|
----------
|
|
|
|
+--------------------------------------------------+------------------------------------------------------------------------+---------+
|
|
| :ref:`float<class_float>` | :ref:`omni_attenuation<class_OmniLight_property_omni_attenuation>` | ``1.0`` |
|
|
+--------------------------------------------------+------------------------------------------------------------------------+---------+
|
|
| :ref:`float<class_float>` | :ref:`omni_range<class_OmniLight_property_omni_range>` | ``5.0`` |
|
|
+--------------------------------------------------+------------------------------------------------------------------------+---------+
|
|
| :ref:`ShadowDetail<enum_OmniLight_ShadowDetail>` | :ref:`omni_shadow_detail<class_OmniLight_property_omni_shadow_detail>` | ``1`` |
|
|
+--------------------------------------------------+------------------------------------------------------------------------+---------+
|
|
| :ref:`ShadowMode<enum_OmniLight_ShadowMode>` | :ref:`omni_shadow_mode<class_OmniLight_property_omni_shadow_mode>` | ``1`` |
|
|
+--------------------------------------------------+------------------------------------------------------------------------+---------+
|
|
|
|
Enumerations
|
|
------------
|
|
|
|
.. _enum_OmniLight_ShadowMode:
|
|
|
|
.. _class_OmniLight_constant_SHADOW_DUAL_PARABOLOID:
|
|
|
|
.. _class_OmniLight_constant_SHADOW_CUBE:
|
|
|
|
enum **ShadowMode**:
|
|
|
|
- **SHADOW_DUAL_PARABOLOID** = **0** --- Shadows are rendered to a dual-paraboloid texture. Faster than :ref:`SHADOW_CUBE<class_OmniLight_constant_SHADOW_CUBE>`, but lower-quality.
|
|
|
|
- **SHADOW_CUBE** = **1** --- Shadows are rendered to a cubemap. Slower than :ref:`SHADOW_DUAL_PARABOLOID<class_OmniLight_constant_SHADOW_DUAL_PARABOLOID>`, but higher-quality.
|
|
|
|
----
|
|
|
|
.. _enum_OmniLight_ShadowDetail:
|
|
|
|
.. _class_OmniLight_constant_SHADOW_DETAIL_VERTICAL:
|
|
|
|
.. _class_OmniLight_constant_SHADOW_DETAIL_HORIZONTAL:
|
|
|
|
enum **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
|
|
---------------------
|
|
|
|
.. _class_OmniLight_property_omni_attenuation:
|
|
|
|
- :ref:`float<class_float>` **omni_attenuation**
|
|
|
|
+-----------+------------------+
|
|
| *Default* | ``1.0`` |
|
|
+-----------+------------------+
|
|
| *Setter* | set_param(value) |
|
|
+-----------+------------------+
|
|
| *Getter* | get_param() |
|
|
+-----------+------------------+
|
|
|
|
The light's attenuation (drop-off) curve. A number of presets are available in the **Inspector** by right-clicking the curve.
|
|
|
|
----
|
|
|
|
.. _class_OmniLight_property_omni_range:
|
|
|
|
- :ref:`float<class_float>` **omni_range**
|
|
|
|
+-----------+------------------+
|
|
| *Default* | ``5.0`` |
|
|
+-----------+------------------+
|
|
| *Setter* | set_param(value) |
|
|
+-----------+------------------+
|
|
| *Getter* | get_param() |
|
|
+-----------+------------------+
|
|
|
|
The light's radius. Note that the effectively lit area may appear to be smaller depending on the :ref:`omni_attenuation<class_OmniLight_property_omni_attenuation>` in use. No matter the :ref:`omni_attenuation<class_OmniLight_property_omni_attenuation>` in use, the light will never reach anything outside this radius.
|
|
|
|
----
|
|
|
|
.. _class_OmniLight_property_omni_shadow_detail:
|
|
|
|
- :ref:`ShadowDetail<enum_OmniLight_ShadowDetail>` **omni_shadow_detail**
|
|
|
|
+-----------+--------------------------+
|
|
| *Default* | ``1`` |
|
|
+-----------+--------------------------+
|
|
| *Setter* | set_shadow_detail(value) |
|
|
+-----------+--------------------------+
|
|
| *Getter* | get_shadow_detail() |
|
|
+-----------+--------------------------+
|
|
|
|
See :ref:`ShadowDetail<enum_OmniLight_ShadowDetail>`.
|
|
|
|
----
|
|
|
|
.. _class_OmniLight_property_omni_shadow_mode:
|
|
|
|
- :ref:`ShadowMode<enum_OmniLight_ShadowMode>` **omni_shadow_mode**
|
|
|
|
+-----------+------------------------+
|
|
| *Default* | ``1`` |
|
|
+-----------+------------------------+
|
|
| *Setter* | set_shadow_mode(value) |
|
|
+-----------+------------------------+
|
|
| *Getter* | get_shadow_mode() |
|
|
+-----------+------------------------+
|
|
|
|
See :ref:`ShadowMode<enum_OmniLight_ShadowMode>`.
|
|
|
|
.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
|
|
.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
|
|
.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
|