Files
godot-docs/classes/class_spotlight.rst
2021-03-16 12:29:34 +01:00

107 lines
4.1 KiB
ReStructuredText

:github_url: hide
.. Generated automatically by doc/tools/makerst.py in Godot's source tree.
.. DO NOT EDIT THIS FILE, but the SpotLight.xml source instead.
.. The source is found in doc/classes or modules/<name>/doc_classes.
.. _class_SpotLight:
SpotLight
=========
**Inherits:** :ref:`Light<class_Light>` **<** :ref:`VisualInstance<class_VisualInstance>` **<** :ref:`Spatial<class_Spatial>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
A spotlight, such as a reflector spotlight or a lantern.
Description
-----------
A Spotlight is a type of :ref:`Light<class_Light>` node that emits lights in a specific direction, in the shape of a cone. The light is attenuated through the distance. This attenuation can be configured by changing the energy, radius and attenuation parameters of :ref:`Light<class_Light>`.
Tutorials
---------
- :doc:`../tutorials/3d/lights_and_shadows`
Properties
----------
+---------------------------+--------------------------------------------------------------------------------+----------+
| :ref:`float<class_float>` | :ref:`spot_angle<class_SpotLight_property_spot_angle>` | ``45.0`` |
+---------------------------+--------------------------------------------------------------------------------+----------+
| :ref:`float<class_float>` | :ref:`spot_angle_attenuation<class_SpotLight_property_spot_angle_attenuation>` | ``1.0`` |
+---------------------------+--------------------------------------------------------------------------------+----------+
| :ref:`float<class_float>` | :ref:`spot_attenuation<class_SpotLight_property_spot_attenuation>` | ``1.0`` |
+---------------------------+--------------------------------------------------------------------------------+----------+
| :ref:`float<class_float>` | :ref:`spot_range<class_SpotLight_property_spot_range>` | ``5.0`` |
+---------------------------+--------------------------------------------------------------------------------+----------+
Property Descriptions
---------------------
.. _class_SpotLight_property_spot_angle:
- :ref:`float<class_float>` **spot_angle**
+-----------+------------------+
| *Default* | ``45.0`` |
+-----------+------------------+
| *Setter* | set_param(value) |
+-----------+------------------+
| *Getter* | get_param() |
+-----------+------------------+
The spotlight's angle in degrees.
----
.. _class_SpotLight_property_spot_angle_attenuation:
- :ref:`float<class_float>` **spot_angle_attenuation**
+-----------+------------------+
| *Default* | ``1.0`` |
+-----------+------------------+
| *Setter* | set_param(value) |
+-----------+------------------+
| *Getter* | get_param() |
+-----------+------------------+
The spotlight's angular attenuation curve.
----
.. _class_SpotLight_property_spot_attenuation:
- :ref:`float<class_float>` **spot_attenuation**
+-----------+------------------+
| *Default* | ``1.0`` |
+-----------+------------------+
| *Setter* | set_param(value) |
+-----------+------------------+
| *Getter* | get_param() |
+-----------+------------------+
The spotlight's light energy attenuation curve.
----
.. _class_SpotLight_property_spot_range:
- :ref:`float<class_float>` **spot_range**
+-----------+------------------+
| *Default* | ``5.0`` |
+-----------+------------------+
| *Setter* | set_param(value) |
+-----------+------------------+
| *Getter* | get_param() |
+-----------+------------------+
The maximal range that can be reached by the spotlight. Note that the effectively lit area may appear to be smaller depending on the :ref:`spot_attenuation<class_SpotLight_property_spot_attenuation>` in use. No matter the :ref:`spot_attenuation<class_SpotLight_property_spot_attenuation>` in use, the light will never reach anything outside this range.
.. |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.)`