class_cameraattributesphysical.rst 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/CameraAttributesPhysical.xml.
  6. .. _class_CameraAttributesPhysical:
  7. CameraAttributesPhysical
  8. ========================
  9. **Inherits:** :ref:`CameraAttributes<class_CameraAttributes>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  10. Physically-based camera settings.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. **CameraAttributesPhysical** is used to set rendering settings based on a physically-based camera's settings. It is responsible for exposure, auto-exposure, and depth of field.
  15. When used in a :ref:`WorldEnvironment<class_WorldEnvironment>` it provides default settings for exposure, auto-exposure, and depth of field that will be used by all cameras without their own :ref:`CameraAttributes<class_CameraAttributes>`, including the editor camera. When used in a :ref:`Camera3D<class_Camera3D>` it will override any :ref:`CameraAttributes<class_CameraAttributes>` set in the :ref:`WorldEnvironment<class_WorldEnvironment>` and will override the :ref:`Camera3D<class_Camera3D>`\ s :ref:`Camera3D.far<class_Camera3D_property_far>`, :ref:`Camera3D.near<class_Camera3D_property_near>`, :ref:`Camera3D.fov<class_Camera3D_property_fov>`, and :ref:`Camera3D.keep_aspect<class_Camera3D_property_keep_aspect>` properties. When used in :ref:`VoxelGI<class_VoxelGI>` or :ref:`LightmapGI<class_LightmapGI>`, only the exposure settings will be used.
  16. The default settings are intended for use in an outdoor environment, tips for settings for use in an indoor environment can be found in each setting's documentation.
  17. .. rst-class:: classref-reftable-group
  18. Properties
  19. ----------
  20. .. table::
  21. :widths: auto
  22. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  23. | :ref:`float<class_float>` | :ref:`auto_exposure_max_exposure_value<class_CameraAttributesPhysical_property_auto_exposure_max_exposure_value>` | ``10.0`` |
  24. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  25. | :ref:`float<class_float>` | :ref:`auto_exposure_min_exposure_value<class_CameraAttributesPhysical_property_auto_exposure_min_exposure_value>` | ``-8.0`` |
  26. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  27. | :ref:`float<class_float>` | :ref:`exposure_aperture<class_CameraAttributesPhysical_property_exposure_aperture>` | ``16.0`` |
  28. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  29. | :ref:`float<class_float>` | :ref:`exposure_shutter_speed<class_CameraAttributesPhysical_property_exposure_shutter_speed>` | ``100.0`` |
  30. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  31. | :ref:`float<class_float>` | :ref:`frustum_far<class_CameraAttributesPhysical_property_frustum_far>` | ``4000.0`` |
  32. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  33. | :ref:`float<class_float>` | :ref:`frustum_focal_length<class_CameraAttributesPhysical_property_frustum_focal_length>` | ``35.0`` |
  34. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  35. | :ref:`float<class_float>` | :ref:`frustum_focus_distance<class_CameraAttributesPhysical_property_frustum_focus_distance>` | ``10.0`` |
  36. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  37. | :ref:`float<class_float>` | :ref:`frustum_near<class_CameraAttributesPhysical_property_frustum_near>` | ``0.05`` |
  38. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  39. .. rst-class:: classref-reftable-group
  40. Methods
  41. -------
  42. .. table::
  43. :widths: auto
  44. +---------------------------+-----------------------------------------------------------------------------------+
  45. | :ref:`float<class_float>` | :ref:`get_fov<class_CameraAttributesPhysical_method_get_fov>` **(** **)** |const| |
  46. +---------------------------+-----------------------------------------------------------------------------------+
  47. .. rst-class:: classref-section-separator
  48. ----
  49. .. rst-class:: classref-descriptions-group
  50. Property Descriptions
  51. ---------------------
  52. .. _class_CameraAttributesPhysical_property_auto_exposure_max_exposure_value:
  53. .. rst-class:: classref-property
  54. :ref:`float<class_float>` **auto_exposure_max_exposure_value** = ``10.0``
  55. .. rst-class:: classref-property-setget
  56. - void **set_auto_exposure_max_exposure_value** **(** :ref:`float<class_float>` value **)**
  57. - :ref:`float<class_float>` **get_auto_exposure_max_exposure_value** **(** **)**
  58. The maximum luminance (in EV100) used when calculating auto exposure. When calculating scene average luminance, color values will be clamped to at least this value. This limits the auto-exposure from exposing below a certain brightness, resulting in a cut off point where the scene will remain bright.
  59. .. rst-class:: classref-item-separator
  60. ----
  61. .. _class_CameraAttributesPhysical_property_auto_exposure_min_exposure_value:
  62. .. rst-class:: classref-property
  63. :ref:`float<class_float>` **auto_exposure_min_exposure_value** = ``-8.0``
  64. .. rst-class:: classref-property-setget
  65. - void **set_auto_exposure_min_exposure_value** **(** :ref:`float<class_float>` value **)**
  66. - :ref:`float<class_float>` **get_auto_exposure_min_exposure_value** **(** **)**
  67. The minimum luminance luminance (in EV100) used when calculating auto exposure. When calculating scene average luminance, color values will be clamped to at least this value. This limits the auto-exposure from exposing above a certain brightness, resulting in a cut off point where the scene will remain dark.
  68. .. rst-class:: classref-item-separator
  69. ----
  70. .. _class_CameraAttributesPhysical_property_exposure_aperture:
  71. .. rst-class:: classref-property
  72. :ref:`float<class_float>` **exposure_aperture** = ``16.0``
  73. .. rst-class:: classref-property-setget
  74. - void **set_aperture** **(** :ref:`float<class_float>` value **)**
  75. - :ref:`float<class_float>` **get_aperture** **(** **)**
  76. Size of the aperture of the camera, measured in f-stops. An f-stop is a unitless ratio between the focal length of the camera and the diameter of the aperture. A high aperture setting will result in a smaller aperture which leads to a dimmer image and sharper focus. A low aperture results in a wide aperture which lets in more light resulting in a brighter, less-focused image. Default is appropriate for outdoors at daytime (i.e. for use with a default :ref:`DirectionalLight3D<class_DirectionalLight3D>`), for indoor lighting, a value between 2 and 4 is more appropriate.
  77. Only available when :ref:`ProjectSettings.rendering/lights_and_shadows/use_physical_light_units<class_ProjectSettings_property_rendering/lights_and_shadows/use_physical_light_units>` is enabled.
  78. .. rst-class:: classref-item-separator
  79. ----
  80. .. _class_CameraAttributesPhysical_property_exposure_shutter_speed:
  81. .. rst-class:: classref-property
  82. :ref:`float<class_float>` **exposure_shutter_speed** = ``100.0``
  83. .. rst-class:: classref-property-setget
  84. - void **set_shutter_speed** **(** :ref:`float<class_float>` value **)**
  85. - :ref:`float<class_float>` **get_shutter_speed** **(** **)**
  86. Time for shutter to open and close, measured in seconds. A higher value will let in more light leading to a brighter image, while a lower amount will let in less light leading to a darker image.
  87. Only available when :ref:`ProjectSettings.rendering/lights_and_shadows/use_physical_light_units<class_ProjectSettings_property_rendering/lights_and_shadows/use_physical_light_units>` is enabled.
  88. .. rst-class:: classref-item-separator
  89. ----
  90. .. _class_CameraAttributesPhysical_property_frustum_far:
  91. .. rst-class:: classref-property
  92. :ref:`float<class_float>` **frustum_far** = ``4000.0``
  93. .. rst-class:: classref-property-setget
  94. - void **set_far** **(** :ref:`float<class_float>` value **)**
  95. - :ref:`float<class_float>` **get_far** **(** **)**
  96. Override value for :ref:`Camera3D.far<class_Camera3D_property_far>`. Used internally when calculating depth of field. When attached to a :ref:`Camera3D<class_Camera3D>` as its :ref:`Camera3D.attributes<class_Camera3D_property_attributes>`, it will override the :ref:`Camera3D.far<class_Camera3D_property_far>` property.
  97. .. rst-class:: classref-item-separator
  98. ----
  99. .. _class_CameraAttributesPhysical_property_frustum_focal_length:
  100. .. rst-class:: classref-property
  101. :ref:`float<class_float>` **frustum_focal_length** = ``35.0``
  102. .. rst-class:: classref-property-setget
  103. - void **set_focal_length** **(** :ref:`float<class_float>` value **)**
  104. - :ref:`float<class_float>` **get_focal_length** **(** **)**
  105. Distance between camera lens and camera aperture, measured in millimeters. Controls field of view and depth of field. A larger focal length will result in a smaller field of view and a narrower depth of field meaning fewer objects will be in focus. A smaller focal length will result in a wider field of view and a larger depth of field meaning more objects will be in focus. When attached to a :ref:`Camera3D<class_Camera3D>` as its :ref:`Camera3D.attributes<class_Camera3D_property_attributes>`, it will override the :ref:`Camera3D.fov<class_Camera3D_property_fov>` property and the :ref:`Camera3D.keep_aspect<class_Camera3D_property_keep_aspect>` property.
  106. .. rst-class:: classref-item-separator
  107. ----
  108. .. _class_CameraAttributesPhysical_property_frustum_focus_distance:
  109. .. rst-class:: classref-property
  110. :ref:`float<class_float>` **frustum_focus_distance** = ``10.0``
  111. .. rst-class:: classref-property-setget
  112. - void **set_focus_distance** **(** :ref:`float<class_float>` value **)**
  113. - :ref:`float<class_float>` **get_focus_distance** **(** **)**
  114. Distance from camera of object that will be in focus, measured in meters. Internally this will be clamped to be at least 1 millimeter larger than :ref:`frustum_focal_length<class_CameraAttributesPhysical_property_frustum_focal_length>`.
  115. .. rst-class:: classref-item-separator
  116. ----
  117. .. _class_CameraAttributesPhysical_property_frustum_near:
  118. .. rst-class:: classref-property
  119. :ref:`float<class_float>` **frustum_near** = ``0.05``
  120. .. rst-class:: classref-property-setget
  121. - void **set_near** **(** :ref:`float<class_float>` value **)**
  122. - :ref:`float<class_float>` **get_near** **(** **)**
  123. Override value for :ref:`Camera3D.near<class_Camera3D_property_near>`. Used internally when calculating depth of field. When attached to a :ref:`Camera3D<class_Camera3D>` as its :ref:`Camera3D.attributes<class_Camera3D_property_attributes>`, it will override the :ref:`Camera3D.near<class_Camera3D_property_near>` property.
  124. .. rst-class:: classref-section-separator
  125. ----
  126. .. rst-class:: classref-descriptions-group
  127. Method Descriptions
  128. -------------------
  129. .. _class_CameraAttributesPhysical_method_get_fov:
  130. .. rst-class:: classref-method
  131. :ref:`float<class_float>` **get_fov** **(** **)** |const|
  132. Returns the vertical field of view that corresponds to the :ref:`frustum_focal_length<class_CameraAttributesPhysical_property_frustum_focal_length>`. This value is calculated internally whenever :ref:`frustum_focal_length<class_CameraAttributesPhysical_property_frustum_focal_length>` is changed.
  133. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  134. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  135. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  136. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  137. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  138. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`