class_cameraattributesphysical.rst 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236
  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/4.0/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/4.0/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. \ **Note:** Depth of field blur is only supported in the Forward+ and Mobile rendering methods, not Compatibility.
  18. .. rst-class:: classref-reftable-group
  19. Properties
  20. ----------
  21. .. table::
  22. :widths: auto
  23. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  24. | :ref:`float<class_float>` | :ref:`auto_exposure_max_exposure_value<class_CameraAttributesPhysical_property_auto_exposure_max_exposure_value>` | ``10.0`` |
  25. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  26. | :ref:`float<class_float>` | :ref:`auto_exposure_min_exposure_value<class_CameraAttributesPhysical_property_auto_exposure_min_exposure_value>` | ``-8.0`` |
  27. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  28. | :ref:`float<class_float>` | :ref:`exposure_aperture<class_CameraAttributesPhysical_property_exposure_aperture>` | ``16.0`` |
  29. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  30. | :ref:`float<class_float>` | :ref:`exposure_shutter_speed<class_CameraAttributesPhysical_property_exposure_shutter_speed>` | ``100.0`` |
  31. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  32. | :ref:`float<class_float>` | :ref:`frustum_far<class_CameraAttributesPhysical_property_frustum_far>` | ``4000.0`` |
  33. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  34. | :ref:`float<class_float>` | :ref:`frustum_focal_length<class_CameraAttributesPhysical_property_frustum_focal_length>` | ``35.0`` |
  35. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  36. | :ref:`float<class_float>` | :ref:`frustum_focus_distance<class_CameraAttributesPhysical_property_frustum_focus_distance>` | ``10.0`` |
  37. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  38. | :ref:`float<class_float>` | :ref:`frustum_near<class_CameraAttributesPhysical_property_frustum_near>` | ``0.05`` |
  39. +---------------------------+-------------------------------------------------------------------------------------------------------------------+------------+
  40. .. rst-class:: classref-reftable-group
  41. Methods
  42. -------
  43. .. table::
  44. :widths: auto
  45. +---------------------------+-----------------------------------------------------------------------------------+
  46. | :ref:`float<class_float>` | :ref:`get_fov<class_CameraAttributesPhysical_method_get_fov>` **(** **)** |const| |
  47. +---------------------------+-----------------------------------------------------------------------------------+
  48. .. rst-class:: classref-section-separator
  49. ----
  50. .. rst-class:: classref-descriptions-group
  51. Property Descriptions
  52. ---------------------
  53. .. _class_CameraAttributesPhysical_property_auto_exposure_max_exposure_value:
  54. .. rst-class:: classref-property
  55. :ref:`float<class_float>` **auto_exposure_max_exposure_value** = ``10.0``
  56. .. rst-class:: classref-property-setget
  57. - void **set_auto_exposure_max_exposure_value** **(** :ref:`float<class_float>` value **)**
  58. - :ref:`float<class_float>` **get_auto_exposure_max_exposure_value** **(** **)**
  59. 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.
  60. .. rst-class:: classref-item-separator
  61. ----
  62. .. _class_CameraAttributesPhysical_property_auto_exposure_min_exposure_value:
  63. .. rst-class:: classref-property
  64. :ref:`float<class_float>` **auto_exposure_min_exposure_value** = ``-8.0``
  65. .. rst-class:: classref-property-setget
  66. - void **set_auto_exposure_min_exposure_value** **(** :ref:`float<class_float>` value **)**
  67. - :ref:`float<class_float>` **get_auto_exposure_min_exposure_value** **(** **)**
  68. 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.
  69. .. rst-class:: classref-item-separator
  70. ----
  71. .. _class_CameraAttributesPhysical_property_exposure_aperture:
  72. .. rst-class:: classref-property
  73. :ref:`float<class_float>` **exposure_aperture** = ``16.0``
  74. .. rst-class:: classref-property-setget
  75. - void **set_aperture** **(** :ref:`float<class_float>` value **)**
  76. - :ref:`float<class_float>` **get_aperture** **(** **)**
  77. 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.
  78. 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.
  79. .. rst-class:: classref-item-separator
  80. ----
  81. .. _class_CameraAttributesPhysical_property_exposure_shutter_speed:
  82. .. rst-class:: classref-property
  83. :ref:`float<class_float>` **exposure_shutter_speed** = ``100.0``
  84. .. rst-class:: classref-property-setget
  85. - void **set_shutter_speed** **(** :ref:`float<class_float>` value **)**
  86. - :ref:`float<class_float>` **get_shutter_speed** **(** **)**
  87. 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.
  88. 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.
  89. .. rst-class:: classref-item-separator
  90. ----
  91. .. _class_CameraAttributesPhysical_property_frustum_far:
  92. .. rst-class:: classref-property
  93. :ref:`float<class_float>` **frustum_far** = ``4000.0``
  94. .. rst-class:: classref-property-setget
  95. - void **set_far** **(** :ref:`float<class_float>` value **)**
  96. - :ref:`float<class_float>` **get_far** **(** **)**
  97. 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.
  98. .. rst-class:: classref-item-separator
  99. ----
  100. .. _class_CameraAttributesPhysical_property_frustum_focal_length:
  101. .. rst-class:: classref-property
  102. :ref:`float<class_float>` **frustum_focal_length** = ``35.0``
  103. .. rst-class:: classref-property-setget
  104. - void **set_focal_length** **(** :ref:`float<class_float>` value **)**
  105. - :ref:`float<class_float>` **get_focal_length** **(** **)**
  106. 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.
  107. .. rst-class:: classref-item-separator
  108. ----
  109. .. _class_CameraAttributesPhysical_property_frustum_focus_distance:
  110. .. rst-class:: classref-property
  111. :ref:`float<class_float>` **frustum_focus_distance** = ``10.0``
  112. .. rst-class:: classref-property-setget
  113. - void **set_focus_distance** **(** :ref:`float<class_float>` value **)**
  114. - :ref:`float<class_float>` **get_focus_distance** **(** **)**
  115. 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>`.
  116. .. rst-class:: classref-item-separator
  117. ----
  118. .. _class_CameraAttributesPhysical_property_frustum_near:
  119. .. rst-class:: classref-property
  120. :ref:`float<class_float>` **frustum_near** = ``0.05``
  121. .. rst-class:: classref-property-setget
  122. - void **set_near** **(** :ref:`float<class_float>` value **)**
  123. - :ref:`float<class_float>` **get_near** **(** **)**
  124. 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.
  125. .. rst-class:: classref-section-separator
  126. ----
  127. .. rst-class:: classref-descriptions-group
  128. Method Descriptions
  129. -------------------
  130. .. _class_CameraAttributesPhysical_method_get_fov:
  131. .. rst-class:: classref-method
  132. :ref:`float<class_float>` **get_fov** **(** **)** |const|
  133. 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.
  134. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  135. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  136. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  137. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  138. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  139. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`