class_environment.rst 92 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026
  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/3.6/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/3.6/doc/classes/Environment.xml.
  6. .. _class_Environment:
  7. Environment
  8. ===========
  9. **Inherits:** :ref:`Resource<class_Resource>` **<** :ref:`Reference<class_Reference>` **<** :ref:`Object<class_Object>`
  10. Resource for environment nodes (like :ref:`WorldEnvironment<class_WorldEnvironment>`) that define multiple rendering options.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. Resource for environment nodes (like :ref:`WorldEnvironment<class_WorldEnvironment>`) that define multiple environment operations (such as background :ref:`Sky<class_Sky>` or :ref:`Color<class_Color>`, ambient light, fog, depth-of-field...). These parameters affect the final render of the scene. The order of these operations is:
  15. - Depth of Field Blur
  16. - Glow
  17. - Tonemap (Auto Exposure)
  18. - Adjustments
  19. If the target :ref:`Viewport<class_Viewport>` is set to "2D Without Sampling", all post-processing effects will be unavailable. With "3D Without Effects", the following options will be unavailable:
  20. - Ssao
  21. - Ss Reflections
  22. This can be configured for the root Viewport with :ref:`ProjectSettings.rendering/quality/intended_usage/framebuffer_allocation<class_ProjectSettings_property_rendering/quality/intended_usage/framebuffer_allocation>`, or for specific Viewports via the :ref:`Viewport.usage<class_Viewport_property_usage>` property.
  23. Note that :ref:`ProjectSettings.rendering/quality/intended_usage/framebuffer_allocation<class_ProjectSettings_property_rendering/quality/intended_usage/framebuffer_allocation>` has a mobile platform override to use "3D Without Effects" by default. It improves the performance on mobile devices, but at the same time affects the screen display on mobile devices.
  24. .. rst-class:: classref-introduction-group
  25. Tutorials
  26. ---------
  27. - :doc:`Environment and post-processing <../tutorials/3d/environment_and_post_processing>`
  28. - :doc:`Light transport in game engines <../tutorials/3d/high_dynamic_range>`
  29. - `3D Material Testers Demo <https://godotengine.org/asset-library/asset/123>`__
  30. - `2D HDR Demo <https://godotengine.org/asset-library/asset/110>`__
  31. - `Third Person Shooter Demo <https://godotengine.org/asset-library/asset/678>`__
  32. .. rst-class:: classref-reftable-group
  33. Properties
  34. ----------
  35. .. table::
  36. :widths: auto
  37. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  38. | :ref:`float<class_float>` | :ref:`adjustment_brightness<class_Environment_property_adjustment_brightness>` | ``1.0`` |
  39. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  40. | :ref:`Texture<class_Texture>` | :ref:`adjustment_color_correction<class_Environment_property_adjustment_color_correction>` | |
  41. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  42. | :ref:`float<class_float>` | :ref:`adjustment_contrast<class_Environment_property_adjustment_contrast>` | ``1.0`` |
  43. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  44. | :ref:`bool<class_bool>` | :ref:`adjustment_enabled<class_Environment_property_adjustment_enabled>` | ``false`` |
  45. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  46. | :ref:`float<class_float>` | :ref:`adjustment_saturation<class_Environment_property_adjustment_saturation>` | ``1.0`` |
  47. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  48. | :ref:`Color<class_Color>` | :ref:`ambient_light_color<class_Environment_property_ambient_light_color>` | ``Color( 0, 0, 0, 1 )`` |
  49. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  50. | :ref:`float<class_float>` | :ref:`ambient_light_energy<class_Environment_property_ambient_light_energy>` | ``1.0`` |
  51. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  52. | :ref:`float<class_float>` | :ref:`ambient_light_sky_contribution<class_Environment_property_ambient_light_sky_contribution>` | ``1.0`` |
  53. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  54. | :ref:`bool<class_bool>` | :ref:`auto_exposure_enabled<class_Environment_property_auto_exposure_enabled>` | ``false`` |
  55. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  56. | :ref:`float<class_float>` | :ref:`auto_exposure_max_luma<class_Environment_property_auto_exposure_max_luma>` | ``8.0`` |
  57. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  58. | :ref:`float<class_float>` | :ref:`auto_exposure_min_luma<class_Environment_property_auto_exposure_min_luma>` | ``0.05`` |
  59. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  60. | :ref:`float<class_float>` | :ref:`auto_exposure_scale<class_Environment_property_auto_exposure_scale>` | ``0.4`` |
  61. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  62. | :ref:`float<class_float>` | :ref:`auto_exposure_speed<class_Environment_property_auto_exposure_speed>` | ``0.5`` |
  63. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  64. | :ref:`int<class_int>` | :ref:`background_camera_feed_id<class_Environment_property_background_camera_feed_id>` | ``1`` |
  65. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  66. | :ref:`int<class_int>` | :ref:`background_canvas_max_layer<class_Environment_property_background_canvas_max_layer>` | ``0`` |
  67. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  68. | :ref:`Color<class_Color>` | :ref:`background_color<class_Environment_property_background_color>` | ``Color( 0, 0, 0, 1 )`` |
  69. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  70. | :ref:`float<class_float>` | :ref:`background_energy<class_Environment_property_background_energy>` | ``1.0`` |
  71. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  72. | :ref:`BGMode<enum_Environment_BGMode>` | :ref:`background_mode<class_Environment_property_background_mode>` | ``0`` |
  73. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  74. | :ref:`Sky<class_Sky>` | :ref:`background_sky<class_Environment_property_background_sky>` | |
  75. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  76. | :ref:`float<class_float>` | :ref:`background_sky_custom_fov<class_Environment_property_background_sky_custom_fov>` | ``0.0`` |
  77. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  78. | :ref:`Basis<class_Basis>` | :ref:`background_sky_orientation<class_Environment_property_background_sky_orientation>` | ``Basis( 1, 0, 0, 0, 1, 0, 0, 0, 1 )`` |
  79. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  80. | :ref:`Vector3<class_Vector3>` | :ref:`background_sky_rotation<class_Environment_property_background_sky_rotation>` | ``Vector3( 0, 0, 0 )`` |
  81. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  82. | :ref:`Vector3<class_Vector3>` | :ref:`background_sky_rotation_degrees<class_Environment_property_background_sky_rotation_degrees>` | ``Vector3( 0, 0, 0 )`` |
  83. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  84. | :ref:`float<class_float>` | :ref:`dof_blur_far_amount<class_Environment_property_dof_blur_far_amount>` | ``0.1`` |
  85. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  86. | :ref:`float<class_float>` | :ref:`dof_blur_far_distance<class_Environment_property_dof_blur_far_distance>` | ``10.0`` |
  87. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  88. | :ref:`bool<class_bool>` | :ref:`dof_blur_far_enabled<class_Environment_property_dof_blur_far_enabled>` | ``false`` |
  89. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  90. | :ref:`DOFBlurQuality<enum_Environment_DOFBlurQuality>` | :ref:`dof_blur_far_quality<class_Environment_property_dof_blur_far_quality>` | ``1`` |
  91. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  92. | :ref:`float<class_float>` | :ref:`dof_blur_far_transition<class_Environment_property_dof_blur_far_transition>` | ``5.0`` |
  93. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  94. | :ref:`float<class_float>` | :ref:`dof_blur_near_amount<class_Environment_property_dof_blur_near_amount>` | ``0.1`` |
  95. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  96. | :ref:`float<class_float>` | :ref:`dof_blur_near_distance<class_Environment_property_dof_blur_near_distance>` | ``2.0`` |
  97. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  98. | :ref:`bool<class_bool>` | :ref:`dof_blur_near_enabled<class_Environment_property_dof_blur_near_enabled>` | ``false`` |
  99. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  100. | :ref:`DOFBlurQuality<enum_Environment_DOFBlurQuality>` | :ref:`dof_blur_near_quality<class_Environment_property_dof_blur_near_quality>` | ``1`` |
  101. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  102. | :ref:`float<class_float>` | :ref:`dof_blur_near_transition<class_Environment_property_dof_blur_near_transition>` | ``1.0`` |
  103. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  104. | :ref:`Color<class_Color>` | :ref:`fog_color<class_Environment_property_fog_color>` | ``Color( 0.5, 0.6, 0.7, 1 )`` |
  105. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  106. | :ref:`float<class_float>` | :ref:`fog_depth_begin<class_Environment_property_fog_depth_begin>` | ``10.0`` |
  107. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  108. | :ref:`float<class_float>` | :ref:`fog_depth_curve<class_Environment_property_fog_depth_curve>` | ``1.0`` |
  109. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  110. | :ref:`bool<class_bool>` | :ref:`fog_depth_enabled<class_Environment_property_fog_depth_enabled>` | ``true`` |
  111. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  112. | :ref:`float<class_float>` | :ref:`fog_depth_end<class_Environment_property_fog_depth_end>` | ``100.0`` |
  113. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  114. | :ref:`bool<class_bool>` | :ref:`fog_enabled<class_Environment_property_fog_enabled>` | ``false`` |
  115. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  116. | :ref:`float<class_float>` | :ref:`fog_height_curve<class_Environment_property_fog_height_curve>` | ``1.0`` |
  117. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  118. | :ref:`bool<class_bool>` | :ref:`fog_height_enabled<class_Environment_property_fog_height_enabled>` | ``false`` |
  119. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  120. | :ref:`float<class_float>` | :ref:`fog_height_max<class_Environment_property_fog_height_max>` | ``0.0`` |
  121. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  122. | :ref:`float<class_float>` | :ref:`fog_height_min<class_Environment_property_fog_height_min>` | ``10.0`` |
  123. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  124. | :ref:`float<class_float>` | :ref:`fog_sun_amount<class_Environment_property_fog_sun_amount>` | ``0.0`` |
  125. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  126. | :ref:`Color<class_Color>` | :ref:`fog_sun_color<class_Environment_property_fog_sun_color>` | ``Color( 1, 0.9, 0.7, 1 )`` |
  127. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  128. | :ref:`float<class_float>` | :ref:`fog_transmit_curve<class_Environment_property_fog_transmit_curve>` | ``1.0`` |
  129. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  130. | :ref:`bool<class_bool>` | :ref:`fog_transmit_enabled<class_Environment_property_fog_transmit_enabled>` | ``false`` |
  131. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  132. | :ref:`bool<class_bool>` | :ref:`glow_bicubic_upscale<class_Environment_property_glow_bicubic_upscale>` | ``false`` |
  133. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  134. | :ref:`GlowBlendMode<enum_Environment_GlowBlendMode>` | :ref:`glow_blend_mode<class_Environment_property_glow_blend_mode>` | ``2`` |
  135. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  136. | :ref:`float<class_float>` | :ref:`glow_bloom<class_Environment_property_glow_bloom>` | ``0.0`` |
  137. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  138. | :ref:`bool<class_bool>` | :ref:`glow_enabled<class_Environment_property_glow_enabled>` | ``false`` |
  139. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  140. | :ref:`float<class_float>` | :ref:`glow_hdr_luminance_cap<class_Environment_property_glow_hdr_luminance_cap>` | ``12.0`` |
  141. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  142. | :ref:`float<class_float>` | :ref:`glow_hdr_scale<class_Environment_property_glow_hdr_scale>` | ``2.0`` |
  143. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  144. | :ref:`float<class_float>` | :ref:`glow_hdr_threshold<class_Environment_property_glow_hdr_threshold>` | ``1.0`` |
  145. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  146. | :ref:`bool<class_bool>` | :ref:`glow_high_quality<class_Environment_property_glow_high_quality>` | ``false`` |
  147. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  148. | :ref:`float<class_float>` | :ref:`glow_intensity<class_Environment_property_glow_intensity>` | ``0.8`` |
  149. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  150. | :ref:`bool<class_bool>` | :ref:`glow_levels/1<class_Environment_property_glow_levels/1>` | ``false`` |
  151. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  152. | :ref:`bool<class_bool>` | :ref:`glow_levels/2<class_Environment_property_glow_levels/2>` | ``false`` |
  153. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  154. | :ref:`bool<class_bool>` | :ref:`glow_levels/3<class_Environment_property_glow_levels/3>` | ``true`` |
  155. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  156. | :ref:`bool<class_bool>` | :ref:`glow_levels/4<class_Environment_property_glow_levels/4>` | ``false`` |
  157. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  158. | :ref:`bool<class_bool>` | :ref:`glow_levels/5<class_Environment_property_glow_levels/5>` | ``true`` |
  159. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  160. | :ref:`bool<class_bool>` | :ref:`glow_levels/6<class_Environment_property_glow_levels/6>` | ``false`` |
  161. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  162. | :ref:`bool<class_bool>` | :ref:`glow_levels/7<class_Environment_property_glow_levels/7>` | ``false`` |
  163. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  164. | :ref:`float<class_float>` | :ref:`glow_strength<class_Environment_property_glow_strength>` | ``1.0`` |
  165. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  166. | :ref:`float<class_float>` | :ref:`ss_reflections_depth_tolerance<class_Environment_property_ss_reflections_depth_tolerance>` | ``0.2`` |
  167. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  168. | :ref:`bool<class_bool>` | :ref:`ss_reflections_enabled<class_Environment_property_ss_reflections_enabled>` | ``false`` |
  169. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  170. | :ref:`float<class_float>` | :ref:`ss_reflections_fade_in<class_Environment_property_ss_reflections_fade_in>` | ``0.15`` |
  171. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  172. | :ref:`float<class_float>` | :ref:`ss_reflections_fade_out<class_Environment_property_ss_reflections_fade_out>` | ``2.0`` |
  173. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  174. | :ref:`int<class_int>` | :ref:`ss_reflections_max_steps<class_Environment_property_ss_reflections_max_steps>` | ``64`` |
  175. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  176. | :ref:`bool<class_bool>` | :ref:`ss_reflections_roughness<class_Environment_property_ss_reflections_roughness>` | ``true`` |
  177. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  178. | :ref:`float<class_float>` | :ref:`ssao_ao_channel_affect<class_Environment_property_ssao_ao_channel_affect>` | ``0.0`` |
  179. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  180. | :ref:`float<class_float>` | :ref:`ssao_bias<class_Environment_property_ssao_bias>` | ``0.01`` |
  181. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  182. | :ref:`SSAOBlur<enum_Environment_SSAOBlur>` | :ref:`ssao_blur<class_Environment_property_ssao_blur>` | ``3`` |
  183. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  184. | :ref:`Color<class_Color>` | :ref:`ssao_color<class_Environment_property_ssao_color>` | ``Color( 0, 0, 0, 1 )`` |
  185. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  186. | :ref:`float<class_float>` | :ref:`ssao_edge_sharpness<class_Environment_property_ssao_edge_sharpness>` | ``4.0`` |
  187. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  188. | :ref:`bool<class_bool>` | :ref:`ssao_enabled<class_Environment_property_ssao_enabled>` | ``false`` |
  189. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  190. | :ref:`float<class_float>` | :ref:`ssao_intensity<class_Environment_property_ssao_intensity>` | ``1.0`` |
  191. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  192. | :ref:`float<class_float>` | :ref:`ssao_intensity2<class_Environment_property_ssao_intensity2>` | ``1.0`` |
  193. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  194. | :ref:`float<class_float>` | :ref:`ssao_light_affect<class_Environment_property_ssao_light_affect>` | ``0.0`` |
  195. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  196. | :ref:`SSAOQuality<enum_Environment_SSAOQuality>` | :ref:`ssao_quality<class_Environment_property_ssao_quality>` | ``1`` |
  197. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  198. | :ref:`float<class_float>` | :ref:`ssao_radius<class_Environment_property_ssao_radius>` | ``1.0`` |
  199. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  200. | :ref:`float<class_float>` | :ref:`ssao_radius2<class_Environment_property_ssao_radius2>` | ``0.0`` |
  201. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  202. | :ref:`float<class_float>` | :ref:`tonemap_exposure<class_Environment_property_tonemap_exposure>` | ``1.0`` |
  203. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  204. | :ref:`ToneMapper<enum_Environment_ToneMapper>` | :ref:`tonemap_mode<class_Environment_property_tonemap_mode>` | ``0`` |
  205. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  206. | :ref:`float<class_float>` | :ref:`tonemap_white<class_Environment_property_tonemap_white>` | ``1.0`` |
  207. +--------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------------------------+
  208. .. rst-class:: classref-reftable-group
  209. Methods
  210. -------
  211. .. table::
  212. :widths: auto
  213. +-------------------------+---------------------------------------------------------------------------------------------------------------------------------------+
  214. | :ref:`bool<class_bool>` | :ref:`is_glow_level_enabled<class_Environment_method_is_glow_level_enabled>` **(** :ref:`int<class_int>` idx **)** |const| |
  215. +-------------------------+---------------------------------------------------------------------------------------------------------------------------------------+
  216. | void | :ref:`set_glow_level<class_Environment_method_set_glow_level>` **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enabled **)** |
  217. +-------------------------+---------------------------------------------------------------------------------------------------------------------------------------+
  218. .. rst-class:: classref-section-separator
  219. ----
  220. .. rst-class:: classref-descriptions-group
  221. Enumerations
  222. ------------
  223. .. _enum_Environment_BGMode:
  224. .. rst-class:: classref-enumeration
  225. enum **BGMode**:
  226. .. _class_Environment_constant_BG_KEEP:
  227. .. rst-class:: classref-enumeration-constant
  228. :ref:`BGMode<enum_Environment_BGMode>` **BG_KEEP** = ``5``
  229. Keeps on screen every pixel drawn in the background. Only select this mode if you really need to keep the old data. On modern GPUs it will generally not be faster than clearing the background, and can be significantly slower, particularly on mobile.
  230. It can only be safely used in fully-interior scenes (no visible sky or sky reflections). If enabled in a scene where the background is visible, "ghost trail" artifacts will be visible when moving the camera.
  231. .. _class_Environment_constant_BG_CLEAR_COLOR:
  232. .. rst-class:: classref-enumeration-constant
  233. :ref:`BGMode<enum_Environment_BGMode>` **BG_CLEAR_COLOR** = ``0``
  234. Clears the background using the clear color defined in :ref:`ProjectSettings.rendering/environment/default_clear_color<class_ProjectSettings_property_rendering/environment/default_clear_color>`.
  235. .. _class_Environment_constant_BG_COLOR:
  236. .. rst-class:: classref-enumeration-constant
  237. :ref:`BGMode<enum_Environment_BGMode>` **BG_COLOR** = ``1``
  238. Clears the background using a custom clear color.
  239. .. _class_Environment_constant_BG_SKY:
  240. .. rst-class:: classref-enumeration-constant
  241. :ref:`BGMode<enum_Environment_BGMode>` **BG_SKY** = ``2``
  242. Displays a user-defined sky in the background.
  243. .. _class_Environment_constant_BG_COLOR_SKY:
  244. .. rst-class:: classref-enumeration-constant
  245. :ref:`BGMode<enum_Environment_BGMode>` **BG_COLOR_SKY** = ``3``
  246. Clears the background using a custom clear color and allows defining a sky for shading and reflection. This mode is slightly faster than :ref:`BG_SKY<class_Environment_constant_BG_SKY>` and should be preferred in scenes where reflections can be visible, but the sky itself never is (e.g. top-down camera).
  247. .. _class_Environment_constant_BG_CANVAS:
  248. .. rst-class:: classref-enumeration-constant
  249. :ref:`BGMode<enum_Environment_BGMode>` **BG_CANVAS** = ``4``
  250. Displays a :ref:`CanvasLayer<class_CanvasLayer>` in the background.
  251. .. _class_Environment_constant_BG_CAMERA_FEED:
  252. .. rst-class:: classref-enumeration-constant
  253. :ref:`BGMode<enum_Environment_BGMode>` **BG_CAMERA_FEED** = ``6``
  254. Displays a camera feed in the background.
  255. .. _class_Environment_constant_BG_MAX:
  256. .. rst-class:: classref-enumeration-constant
  257. :ref:`BGMode<enum_Environment_BGMode>` **BG_MAX** = ``7``
  258. Represents the size of the :ref:`BGMode<enum_Environment_BGMode>` enum.
  259. .. rst-class:: classref-item-separator
  260. ----
  261. .. _enum_Environment_GlowBlendMode:
  262. .. rst-class:: classref-enumeration
  263. enum **GlowBlendMode**:
  264. .. _class_Environment_constant_GLOW_BLEND_MODE_ADDITIVE:
  265. .. rst-class:: classref-enumeration-constant
  266. :ref:`GlowBlendMode<enum_Environment_GlowBlendMode>` **GLOW_BLEND_MODE_ADDITIVE** = ``0``
  267. Additive glow blending mode. Mostly used for particles, glows (bloom), lens flare, bright sources.
  268. .. _class_Environment_constant_GLOW_BLEND_MODE_SCREEN:
  269. .. rst-class:: classref-enumeration-constant
  270. :ref:`GlowBlendMode<enum_Environment_GlowBlendMode>` **GLOW_BLEND_MODE_SCREEN** = ``1``
  271. Screen glow blending mode. Increases brightness, used frequently with bloom.
  272. .. _class_Environment_constant_GLOW_BLEND_MODE_SOFTLIGHT:
  273. .. rst-class:: classref-enumeration-constant
  274. :ref:`GlowBlendMode<enum_Environment_GlowBlendMode>` **GLOW_BLEND_MODE_SOFTLIGHT** = ``2``
  275. Soft light glow blending mode. Modifies contrast, exposes shadows and highlights (vivid bloom).
  276. .. _class_Environment_constant_GLOW_BLEND_MODE_REPLACE:
  277. .. rst-class:: classref-enumeration-constant
  278. :ref:`GlowBlendMode<enum_Environment_GlowBlendMode>` **GLOW_BLEND_MODE_REPLACE** = ``3``
  279. Replace glow blending mode. Replaces all pixels' color by the glow value. This can be used to simulate a full-screen blur effect by tweaking the glow parameters to match the original image's brightness.
  280. .. rst-class:: classref-item-separator
  281. ----
  282. .. _enum_Environment_ToneMapper:
  283. .. rst-class:: classref-enumeration
  284. enum **ToneMapper**:
  285. .. _class_Environment_constant_TONE_MAPPER_LINEAR:
  286. .. rst-class:: classref-enumeration-constant
  287. :ref:`ToneMapper<enum_Environment_ToneMapper>` **TONE_MAPPER_LINEAR** = ``0``
  288. Linear tonemapper operator. Reads the linear data and passes it on unmodified. This can cause bright lighting to look blown out, with noticeable clipping in the output colors.
  289. .. _class_Environment_constant_TONE_MAPPER_REINHARDT:
  290. .. rst-class:: classref-enumeration-constant
  291. :ref:`ToneMapper<enum_Environment_ToneMapper>` **TONE_MAPPER_REINHARDT** = ``1``
  292. Reinhardt tonemapper operator. Performs a variation on rendered pixels' colors by this formula: ``color = color / (1 + color)``. This avoids clipping bright highlights, but the resulting image can look a bit dull.
  293. .. _class_Environment_constant_TONE_MAPPER_FILMIC:
  294. .. rst-class:: classref-enumeration-constant
  295. :ref:`ToneMapper<enum_Environment_ToneMapper>` **TONE_MAPPER_FILMIC** = ``2``
  296. Filmic tonemapper operator. This avoids clipping bright highlights, with a resulting image that usually looks more vivid than :ref:`TONE_MAPPER_REINHARDT<class_Environment_constant_TONE_MAPPER_REINHARDT>`.
  297. .. _class_Environment_constant_TONE_MAPPER_ACES:
  298. .. rst-class:: classref-enumeration-constant
  299. :ref:`ToneMapper<enum_Environment_ToneMapper>` **TONE_MAPPER_ACES** = ``3``
  300. Use the legacy Godot version of the Academy Color Encoding System tonemapper. Unlike :ref:`TONE_MAPPER_ACES_FITTED<class_Environment_constant_TONE_MAPPER_ACES_FITTED>`, this version of ACES does not handle bright lighting in a physically accurate way. ACES typically has a more contrasted output compared to :ref:`TONE_MAPPER_REINHARDT<class_Environment_constant_TONE_MAPPER_REINHARDT>` and :ref:`TONE_MAPPER_FILMIC<class_Environment_constant_TONE_MAPPER_FILMIC>`.
  301. \ **Note:** This tonemapping operator will be removed in Godot 4.0 in favor of the more accurate :ref:`TONE_MAPPER_ACES_FITTED<class_Environment_constant_TONE_MAPPER_ACES_FITTED>`.
  302. .. _class_Environment_constant_TONE_MAPPER_ACES_FITTED:
  303. .. rst-class:: classref-enumeration-constant
  304. :ref:`ToneMapper<enum_Environment_ToneMapper>` **TONE_MAPPER_ACES_FITTED** = ``4``
  305. Use the Academy Color Encoding System tonemapper. ACES is slightly more expensive than other options, but it handles bright lighting in a more realistic fashion by desaturating it as it becomes brighter. ACES typically has a more contrasted output compared to :ref:`TONE_MAPPER_REINHARDT<class_Environment_constant_TONE_MAPPER_REINHARDT>` and :ref:`TONE_MAPPER_FILMIC<class_Environment_constant_TONE_MAPPER_FILMIC>`.
  306. .. rst-class:: classref-item-separator
  307. ----
  308. .. _enum_Environment_DOFBlurQuality:
  309. .. rst-class:: classref-enumeration
  310. enum **DOFBlurQuality**:
  311. .. _class_Environment_constant_DOF_BLUR_QUALITY_LOW:
  312. .. rst-class:: classref-enumeration-constant
  313. :ref:`DOFBlurQuality<enum_Environment_DOFBlurQuality>` **DOF_BLUR_QUALITY_LOW** = ``0``
  314. Low depth-of-field blur quality (fastest).
  315. .. _class_Environment_constant_DOF_BLUR_QUALITY_MEDIUM:
  316. .. rst-class:: classref-enumeration-constant
  317. :ref:`DOFBlurQuality<enum_Environment_DOFBlurQuality>` **DOF_BLUR_QUALITY_MEDIUM** = ``1``
  318. Medium depth-of-field blur quality.
  319. .. _class_Environment_constant_DOF_BLUR_QUALITY_HIGH:
  320. .. rst-class:: classref-enumeration-constant
  321. :ref:`DOFBlurQuality<enum_Environment_DOFBlurQuality>` **DOF_BLUR_QUALITY_HIGH** = ``2``
  322. High depth-of-field blur quality (slowest).
  323. .. rst-class:: classref-item-separator
  324. ----
  325. .. _enum_Environment_SSAOBlur:
  326. .. rst-class:: classref-enumeration
  327. enum **SSAOBlur**:
  328. .. _class_Environment_constant_SSAO_BLUR_DISABLED:
  329. .. rst-class:: classref-enumeration-constant
  330. :ref:`SSAOBlur<enum_Environment_SSAOBlur>` **SSAO_BLUR_DISABLED** = ``0``
  331. No blur for the screen-space ambient occlusion effect (fastest).
  332. .. _class_Environment_constant_SSAO_BLUR_1x1:
  333. .. rst-class:: classref-enumeration-constant
  334. :ref:`SSAOBlur<enum_Environment_SSAOBlur>` **SSAO_BLUR_1x1** = ``1``
  335. 1×1 blur for the screen-space ambient occlusion effect.
  336. .. _class_Environment_constant_SSAO_BLUR_2x2:
  337. .. rst-class:: classref-enumeration-constant
  338. :ref:`SSAOBlur<enum_Environment_SSAOBlur>` **SSAO_BLUR_2x2** = ``2``
  339. 2×2 blur for the screen-space ambient occlusion effect.
  340. .. _class_Environment_constant_SSAO_BLUR_3x3:
  341. .. rst-class:: classref-enumeration-constant
  342. :ref:`SSAOBlur<enum_Environment_SSAOBlur>` **SSAO_BLUR_3x3** = ``3``
  343. 3×3 blur for the screen-space ambient occlusion effect (slowest).
  344. .. rst-class:: classref-item-separator
  345. ----
  346. .. _enum_Environment_SSAOQuality:
  347. .. rst-class:: classref-enumeration
  348. enum **SSAOQuality**:
  349. .. _class_Environment_constant_SSAO_QUALITY_LOW:
  350. .. rst-class:: classref-enumeration-constant
  351. :ref:`SSAOQuality<enum_Environment_SSAOQuality>` **SSAO_QUALITY_LOW** = ``0``
  352. Low quality for the screen-space ambient occlusion effect (fastest).
  353. .. _class_Environment_constant_SSAO_QUALITY_MEDIUM:
  354. .. rst-class:: classref-enumeration-constant
  355. :ref:`SSAOQuality<enum_Environment_SSAOQuality>` **SSAO_QUALITY_MEDIUM** = ``1``
  356. Medium quality for the screen-space ambient occlusion effect.
  357. .. _class_Environment_constant_SSAO_QUALITY_HIGH:
  358. .. rst-class:: classref-enumeration-constant
  359. :ref:`SSAOQuality<enum_Environment_SSAOQuality>` **SSAO_QUALITY_HIGH** = ``2``
  360. High quality for the screen-space ambient occlusion effect (slowest).
  361. .. rst-class:: classref-section-separator
  362. ----
  363. .. rst-class:: classref-descriptions-group
  364. Property Descriptions
  365. ---------------------
  366. .. _class_Environment_property_adjustment_brightness:
  367. .. rst-class:: classref-property
  368. :ref:`float<class_float>` **adjustment_brightness** = ``1.0``
  369. .. rst-class:: classref-property-setget
  370. - void **set_adjustment_brightness** **(** :ref:`float<class_float>` value **)**
  371. - :ref:`float<class_float>` **get_adjustment_brightness** **(** **)**
  372. The global brightness value of the rendered scene. Effective only if ``adjustment_enabled`` is ``true``.
  373. .. rst-class:: classref-item-separator
  374. ----
  375. .. _class_Environment_property_adjustment_color_correction:
  376. .. rst-class:: classref-property
  377. :ref:`Texture<class_Texture>` **adjustment_color_correction**
  378. .. rst-class:: classref-property-setget
  379. - void **set_adjustment_color_correction** **(** :ref:`Texture<class_Texture>` value **)**
  380. - :ref:`Texture<class_Texture>` **get_adjustment_color_correction** **(** **)**
  381. Applies the provided :ref:`Texture<class_Texture>` resource to affect the global color aspect of the rendered scene. Effective only if ``adjustment_enabled`` is ``true``.
  382. .. rst-class:: classref-item-separator
  383. ----
  384. .. _class_Environment_property_adjustment_contrast:
  385. .. rst-class:: classref-property
  386. :ref:`float<class_float>` **adjustment_contrast** = ``1.0``
  387. .. rst-class:: classref-property-setget
  388. - void **set_adjustment_contrast** **(** :ref:`float<class_float>` value **)**
  389. - :ref:`float<class_float>` **get_adjustment_contrast** **(** **)**
  390. The global contrast value of the rendered scene (default value is 1). Effective only if ``adjustment_enabled`` is ``true``.
  391. .. rst-class:: classref-item-separator
  392. ----
  393. .. _class_Environment_property_adjustment_enabled:
  394. .. rst-class:: classref-property
  395. :ref:`bool<class_bool>` **adjustment_enabled** = ``false``
  396. .. rst-class:: classref-property-setget
  397. - void **set_adjustment_enable** **(** :ref:`bool<class_bool>` value **)**
  398. - :ref:`bool<class_bool>` **is_adjustment_enabled** **(** **)**
  399. If ``true``, enables the ``adjustment_*`` properties provided by this resource. If ``false``, modifications to the ``adjustment_*`` properties will have no effect on the rendered scene.
  400. .. rst-class:: classref-item-separator
  401. ----
  402. .. _class_Environment_property_adjustment_saturation:
  403. .. rst-class:: classref-property
  404. :ref:`float<class_float>` **adjustment_saturation** = ``1.0``
  405. .. rst-class:: classref-property-setget
  406. - void **set_adjustment_saturation** **(** :ref:`float<class_float>` value **)**
  407. - :ref:`float<class_float>` **get_adjustment_saturation** **(** **)**
  408. The global color saturation value of the rendered scene (default value is 1). Effective only if ``adjustment_enabled`` is ``true``.
  409. .. rst-class:: classref-item-separator
  410. ----
  411. .. _class_Environment_property_ambient_light_color:
  412. .. rst-class:: classref-property
  413. :ref:`Color<class_Color>` **ambient_light_color** = ``Color( 0, 0, 0, 1 )``
  414. .. rst-class:: classref-property-setget
  415. - void **set_ambient_light_color** **(** :ref:`Color<class_Color>` value **)**
  416. - :ref:`Color<class_Color>` **get_ambient_light_color** **(** **)**
  417. The ambient light's :ref:`Color<class_Color>`.
  418. .. rst-class:: classref-item-separator
  419. ----
  420. .. _class_Environment_property_ambient_light_energy:
  421. .. rst-class:: classref-property
  422. :ref:`float<class_float>` **ambient_light_energy** = ``1.0``
  423. .. rst-class:: classref-property-setget
  424. - void **set_ambient_light_energy** **(** :ref:`float<class_float>` value **)**
  425. - :ref:`float<class_float>` **get_ambient_light_energy** **(** **)**
  426. The ambient light's energy. The higher the value, the stronger the light.
  427. .. rst-class:: classref-item-separator
  428. ----
  429. .. _class_Environment_property_ambient_light_sky_contribution:
  430. .. rst-class:: classref-property
  431. :ref:`float<class_float>` **ambient_light_sky_contribution** = ``1.0``
  432. .. rst-class:: classref-property-setget
  433. - void **set_ambient_light_sky_contribution** **(** :ref:`float<class_float>` value **)**
  434. - :ref:`float<class_float>` **get_ambient_light_sky_contribution** **(** **)**
  435. Defines the amount of light that the sky brings on the scene. A value of ``0.0`` means that the sky's light emission has no effect on the scene illumination, thus all ambient illumination is provided by the ambient light. On the contrary, a value of ``1.0`` means that *all* the light that affects the scene is provided by the sky, thus the ambient light parameter has no effect on the scene.
  436. \ **Note:** :ref:`ambient_light_sky_contribution<class_Environment_property_ambient_light_sky_contribution>` is internally clamped between ``0.0`` and ``1.0`` (inclusive).
  437. .. rst-class:: classref-item-separator
  438. ----
  439. .. _class_Environment_property_auto_exposure_enabled:
  440. .. rst-class:: classref-property
  441. :ref:`bool<class_bool>` **auto_exposure_enabled** = ``false``
  442. .. rst-class:: classref-property-setget
  443. - void **set_tonemap_auto_exposure** **(** :ref:`bool<class_bool>` value **)**
  444. - :ref:`bool<class_bool>` **get_tonemap_auto_exposure** **(** **)**
  445. If ``true``, enables the tonemapping auto exposure mode of the scene renderer. If ``true``, the renderer will automatically determine the exposure setting to adapt to the scene's illumination and the observed light.
  446. .. rst-class:: classref-item-separator
  447. ----
  448. .. _class_Environment_property_auto_exposure_max_luma:
  449. .. rst-class:: classref-property
  450. :ref:`float<class_float>` **auto_exposure_max_luma** = ``8.0``
  451. .. rst-class:: classref-property-setget
  452. - void **set_tonemap_auto_exposure_max** **(** :ref:`float<class_float>` value **)**
  453. - :ref:`float<class_float>` **get_tonemap_auto_exposure_max** **(** **)**
  454. The maximum luminance value for the auto exposure.
  455. .. rst-class:: classref-item-separator
  456. ----
  457. .. _class_Environment_property_auto_exposure_min_luma:
  458. .. rst-class:: classref-property
  459. :ref:`float<class_float>` **auto_exposure_min_luma** = ``0.05``
  460. .. rst-class:: classref-property-setget
  461. - void **set_tonemap_auto_exposure_min** **(** :ref:`float<class_float>` value **)**
  462. - :ref:`float<class_float>` **get_tonemap_auto_exposure_min** **(** **)**
  463. The minimum luminance value for the auto exposure.
  464. .. rst-class:: classref-item-separator
  465. ----
  466. .. _class_Environment_property_auto_exposure_scale:
  467. .. rst-class:: classref-property
  468. :ref:`float<class_float>` **auto_exposure_scale** = ``0.4``
  469. .. rst-class:: classref-property-setget
  470. - void **set_tonemap_auto_exposure_grey** **(** :ref:`float<class_float>` value **)**
  471. - :ref:`float<class_float>` **get_tonemap_auto_exposure_grey** **(** **)**
  472. The scale of the auto exposure effect. Affects the intensity of auto exposure.
  473. .. rst-class:: classref-item-separator
  474. ----
  475. .. _class_Environment_property_auto_exposure_speed:
  476. .. rst-class:: classref-property
  477. :ref:`float<class_float>` **auto_exposure_speed** = ``0.5``
  478. .. rst-class:: classref-property-setget
  479. - void **set_tonemap_auto_exposure_speed** **(** :ref:`float<class_float>` value **)**
  480. - :ref:`float<class_float>` **get_tonemap_auto_exposure_speed** **(** **)**
  481. The speed of the auto exposure effect. Affects the time needed for the camera to perform auto exposure.
  482. .. rst-class:: classref-item-separator
  483. ----
  484. .. _class_Environment_property_background_camera_feed_id:
  485. .. rst-class:: classref-property
  486. :ref:`int<class_int>` **background_camera_feed_id** = ``1``
  487. .. rst-class:: classref-property-setget
  488. - void **set_camera_feed_id** **(** :ref:`int<class_int>` value **)**
  489. - :ref:`int<class_int>` **get_camera_feed_id** **(** **)**
  490. The ID of the camera feed to show in the background.
  491. .. rst-class:: classref-item-separator
  492. ----
  493. .. _class_Environment_property_background_canvas_max_layer:
  494. .. rst-class:: classref-property
  495. :ref:`int<class_int>` **background_canvas_max_layer** = ``0``
  496. .. rst-class:: classref-property-setget
  497. - void **set_canvas_max_layer** **(** :ref:`int<class_int>` value **)**
  498. - :ref:`int<class_int>` **get_canvas_max_layer** **(** **)**
  499. The maximum layer ID to display. Only effective when using the :ref:`BG_CANVAS<class_Environment_constant_BG_CANVAS>` background mode.
  500. .. rst-class:: classref-item-separator
  501. ----
  502. .. _class_Environment_property_background_color:
  503. .. rst-class:: classref-property
  504. :ref:`Color<class_Color>` **background_color** = ``Color( 0, 0, 0, 1 )``
  505. .. rst-class:: classref-property-setget
  506. - void **set_bg_color** **(** :ref:`Color<class_Color>` value **)**
  507. - :ref:`Color<class_Color>` **get_bg_color** **(** **)**
  508. The :ref:`Color<class_Color>` displayed for clear areas of the scene. Only effective when using the :ref:`BG_COLOR<class_Environment_constant_BG_COLOR>` or :ref:`BG_COLOR_SKY<class_Environment_constant_BG_COLOR_SKY>` background modes).
  509. .. rst-class:: classref-item-separator
  510. ----
  511. .. _class_Environment_property_background_energy:
  512. .. rst-class:: classref-property
  513. :ref:`float<class_float>` **background_energy** = ``1.0``
  514. .. rst-class:: classref-property-setget
  515. - void **set_bg_energy** **(** :ref:`float<class_float>` value **)**
  516. - :ref:`float<class_float>` **get_bg_energy** **(** **)**
  517. The power of the light emitted by the background. This affects the sky brightness, the ambient light (if :ref:`ambient_light_sky_contribution<class_Environment_property_ambient_light_sky_contribution>` is greater than ``0.0``) and specular light from the sky.
  518. .. rst-class:: classref-item-separator
  519. ----
  520. .. _class_Environment_property_background_mode:
  521. .. rst-class:: classref-property
  522. :ref:`BGMode<enum_Environment_BGMode>` **background_mode** = ``0``
  523. .. rst-class:: classref-property-setget
  524. - void **set_background** **(** :ref:`BGMode<enum_Environment_BGMode>` value **)**
  525. - :ref:`BGMode<enum_Environment_BGMode>` **get_background** **(** **)**
  526. The background mode. See :ref:`BGMode<enum_Environment_BGMode>` for possible values.
  527. .. rst-class:: classref-item-separator
  528. ----
  529. .. _class_Environment_property_background_sky:
  530. .. rst-class:: classref-property
  531. :ref:`Sky<class_Sky>` **background_sky**
  532. .. rst-class:: classref-property-setget
  533. - void **set_sky** **(** :ref:`Sky<class_Sky>` value **)**
  534. - :ref:`Sky<class_Sky>` **get_sky** **(** **)**
  535. The :ref:`Sky<class_Sky>` resource defined as background.
  536. .. rst-class:: classref-item-separator
  537. ----
  538. .. _class_Environment_property_background_sky_custom_fov:
  539. .. rst-class:: classref-property
  540. :ref:`float<class_float>` **background_sky_custom_fov** = ``0.0``
  541. .. rst-class:: classref-property-setget
  542. - void **set_sky_custom_fov** **(** :ref:`float<class_float>` value **)**
  543. - :ref:`float<class_float>` **get_sky_custom_fov** **(** **)**
  544. The :ref:`Sky<class_Sky>` resource's custom field of view.
  545. .. rst-class:: classref-item-separator
  546. ----
  547. .. _class_Environment_property_background_sky_orientation:
  548. .. rst-class:: classref-property
  549. :ref:`Basis<class_Basis>` **background_sky_orientation** = ``Basis( 1, 0, 0, 0, 1, 0, 0, 0, 1 )``
  550. .. rst-class:: classref-property-setget
  551. - void **set_sky_orientation** **(** :ref:`Basis<class_Basis>` value **)**
  552. - :ref:`Basis<class_Basis>` **get_sky_orientation** **(** **)**
  553. The :ref:`Sky<class_Sky>` resource's rotation expressed as a :ref:`Basis<class_Basis>`.
  554. .. rst-class:: classref-item-separator
  555. ----
  556. .. _class_Environment_property_background_sky_rotation:
  557. .. rst-class:: classref-property
  558. :ref:`Vector3<class_Vector3>` **background_sky_rotation** = ``Vector3( 0, 0, 0 )``
  559. .. rst-class:: classref-property-setget
  560. - void **set_sky_rotation** **(** :ref:`Vector3<class_Vector3>` value **)**
  561. - :ref:`Vector3<class_Vector3>` **get_sky_rotation** **(** **)**
  562. The :ref:`Sky<class_Sky>` resource's rotation expressed as Euler angles in radians.
  563. .. rst-class:: classref-item-separator
  564. ----
  565. .. _class_Environment_property_background_sky_rotation_degrees:
  566. .. rst-class:: classref-property
  567. :ref:`Vector3<class_Vector3>` **background_sky_rotation_degrees** = ``Vector3( 0, 0, 0 )``
  568. .. rst-class:: classref-property-setget
  569. - void **set_sky_rotation_degrees** **(** :ref:`Vector3<class_Vector3>` value **)**
  570. - :ref:`Vector3<class_Vector3>` **get_sky_rotation_degrees** **(** **)**
  571. The :ref:`Sky<class_Sky>` resource's rotation expressed as Euler angles in degrees.
  572. .. rst-class:: classref-item-separator
  573. ----
  574. .. _class_Environment_property_dof_blur_far_amount:
  575. .. rst-class:: classref-property
  576. :ref:`float<class_float>` **dof_blur_far_amount** = ``0.1``
  577. .. rst-class:: classref-property-setget
  578. - void **set_dof_blur_far_amount** **(** :ref:`float<class_float>` value **)**
  579. - :ref:`float<class_float>` **get_dof_blur_far_amount** **(** **)**
  580. The amount of far blur for the depth-of-field effect.
  581. .. rst-class:: classref-item-separator
  582. ----
  583. .. _class_Environment_property_dof_blur_far_distance:
  584. .. rst-class:: classref-property
  585. :ref:`float<class_float>` **dof_blur_far_distance** = ``10.0``
  586. .. rst-class:: classref-property-setget
  587. - void **set_dof_blur_far_distance** **(** :ref:`float<class_float>` value **)**
  588. - :ref:`float<class_float>` **get_dof_blur_far_distance** **(** **)**
  589. The distance from the camera where the far blur effect affects the rendering.
  590. .. rst-class:: classref-item-separator
  591. ----
  592. .. _class_Environment_property_dof_blur_far_enabled:
  593. .. rst-class:: classref-property
  594. :ref:`bool<class_bool>` **dof_blur_far_enabled** = ``false``
  595. .. rst-class:: classref-property-setget
  596. - void **set_dof_blur_far_enabled** **(** :ref:`bool<class_bool>` value **)**
  597. - :ref:`bool<class_bool>` **is_dof_blur_far_enabled** **(** **)**
  598. If ``true``, enables the depth-of-field far blur effect.
  599. .. rst-class:: classref-item-separator
  600. ----
  601. .. _class_Environment_property_dof_blur_far_quality:
  602. .. rst-class:: classref-property
  603. :ref:`DOFBlurQuality<enum_Environment_DOFBlurQuality>` **dof_blur_far_quality** = ``1``
  604. .. rst-class:: classref-property-setget
  605. - void **set_dof_blur_far_quality** **(** :ref:`DOFBlurQuality<enum_Environment_DOFBlurQuality>` value **)**
  606. - :ref:`DOFBlurQuality<enum_Environment_DOFBlurQuality>` **get_dof_blur_far_quality** **(** **)**
  607. The depth-of-field far blur's quality. Higher values can mitigate the visible banding effect seen at higher strengths, but are much slower.
  608. .. rst-class:: classref-item-separator
  609. ----
  610. .. _class_Environment_property_dof_blur_far_transition:
  611. .. rst-class:: classref-property
  612. :ref:`float<class_float>` **dof_blur_far_transition** = ``5.0``
  613. .. rst-class:: classref-property-setget
  614. - void **set_dof_blur_far_transition** **(** :ref:`float<class_float>` value **)**
  615. - :ref:`float<class_float>` **get_dof_blur_far_transition** **(** **)**
  616. The length of the transition between the no-blur area and far blur.
  617. .. rst-class:: classref-item-separator
  618. ----
  619. .. _class_Environment_property_dof_blur_near_amount:
  620. .. rst-class:: classref-property
  621. :ref:`float<class_float>` **dof_blur_near_amount** = ``0.1``
  622. .. rst-class:: classref-property-setget
  623. - void **set_dof_blur_near_amount** **(** :ref:`float<class_float>` value **)**
  624. - :ref:`float<class_float>` **get_dof_blur_near_amount** **(** **)**
  625. The amount of near blur for the depth-of-field effect.
  626. .. rst-class:: classref-item-separator
  627. ----
  628. .. _class_Environment_property_dof_blur_near_distance:
  629. .. rst-class:: classref-property
  630. :ref:`float<class_float>` **dof_blur_near_distance** = ``2.0``
  631. .. rst-class:: classref-property-setget
  632. - void **set_dof_blur_near_distance** **(** :ref:`float<class_float>` value **)**
  633. - :ref:`float<class_float>` **get_dof_blur_near_distance** **(** **)**
  634. Distance from the camera where the near blur effect affects the rendering.
  635. .. rst-class:: classref-item-separator
  636. ----
  637. .. _class_Environment_property_dof_blur_near_enabled:
  638. .. rst-class:: classref-property
  639. :ref:`bool<class_bool>` **dof_blur_near_enabled** = ``false``
  640. .. rst-class:: classref-property-setget
  641. - void **set_dof_blur_near_enabled** **(** :ref:`bool<class_bool>` value **)**
  642. - :ref:`bool<class_bool>` **is_dof_blur_near_enabled** **(** **)**
  643. If ``true``, enables the depth-of-field near blur effect.
  644. .. rst-class:: classref-item-separator
  645. ----
  646. .. _class_Environment_property_dof_blur_near_quality:
  647. .. rst-class:: classref-property
  648. :ref:`DOFBlurQuality<enum_Environment_DOFBlurQuality>` **dof_blur_near_quality** = ``1``
  649. .. rst-class:: classref-property-setget
  650. - void **set_dof_blur_near_quality** **(** :ref:`DOFBlurQuality<enum_Environment_DOFBlurQuality>` value **)**
  651. - :ref:`DOFBlurQuality<enum_Environment_DOFBlurQuality>` **get_dof_blur_near_quality** **(** **)**
  652. The depth-of-field near blur's quality. Higher values can mitigate the visible banding effect seen at higher strengths, but are much slower.
  653. .. rst-class:: classref-item-separator
  654. ----
  655. .. _class_Environment_property_dof_blur_near_transition:
  656. .. rst-class:: classref-property
  657. :ref:`float<class_float>` **dof_blur_near_transition** = ``1.0``
  658. .. rst-class:: classref-property-setget
  659. - void **set_dof_blur_near_transition** **(** :ref:`float<class_float>` value **)**
  660. - :ref:`float<class_float>` **get_dof_blur_near_transition** **(** **)**
  661. The length of the transition between the near blur and no-blur area.
  662. .. rst-class:: classref-item-separator
  663. ----
  664. .. _class_Environment_property_fog_color:
  665. .. rst-class:: classref-property
  666. :ref:`Color<class_Color>` **fog_color** = ``Color( 0.5, 0.6, 0.7, 1 )``
  667. .. rst-class:: classref-property-setget
  668. - void **set_fog_color** **(** :ref:`Color<class_Color>` value **)**
  669. - :ref:`Color<class_Color>` **get_fog_color** **(** **)**
  670. The fog's :ref:`Color<class_Color>`.
  671. .. rst-class:: classref-item-separator
  672. ----
  673. .. _class_Environment_property_fog_depth_begin:
  674. .. rst-class:: classref-property
  675. :ref:`float<class_float>` **fog_depth_begin** = ``10.0``
  676. .. rst-class:: classref-property-setget
  677. - void **set_fog_depth_begin** **(** :ref:`float<class_float>` value **)**
  678. - :ref:`float<class_float>` **get_fog_depth_begin** **(** **)**
  679. The fog's depth starting distance from the camera.
  680. .. rst-class:: classref-item-separator
  681. ----
  682. .. _class_Environment_property_fog_depth_curve:
  683. .. rst-class:: classref-property
  684. :ref:`float<class_float>` **fog_depth_curve** = ``1.0``
  685. .. rst-class:: classref-property-setget
  686. - void **set_fog_depth_curve** **(** :ref:`float<class_float>` value **)**
  687. - :ref:`float<class_float>` **get_fog_depth_curve** **(** **)**
  688. The fog depth's intensity curve. A number of presets are available in the **Inspector** by right-clicking the curve.
  689. .. rst-class:: classref-item-separator
  690. ----
  691. .. _class_Environment_property_fog_depth_enabled:
  692. .. rst-class:: classref-property
  693. :ref:`bool<class_bool>` **fog_depth_enabled** = ``true``
  694. .. rst-class:: classref-property-setget
  695. - void **set_fog_depth_enabled** **(** :ref:`bool<class_bool>` value **)**
  696. - :ref:`bool<class_bool>` **is_fog_depth_enabled** **(** **)**
  697. If ``true``, the depth fog effect is enabled. When enabled, fog will appear in the distance (relative to the camera).
  698. .. rst-class:: classref-item-separator
  699. ----
  700. .. _class_Environment_property_fog_depth_end:
  701. .. rst-class:: classref-property
  702. :ref:`float<class_float>` **fog_depth_end** = ``100.0``
  703. .. rst-class:: classref-property-setget
  704. - void **set_fog_depth_end** **(** :ref:`float<class_float>` value **)**
  705. - :ref:`float<class_float>` **get_fog_depth_end** **(** **)**
  706. The fog's depth end distance from the camera. If this value is set to 0, it will be equal to the current camera's :ref:`Camera.far<class_Camera_property_far>` value.
  707. .. rst-class:: classref-item-separator
  708. ----
  709. .. _class_Environment_property_fog_enabled:
  710. .. rst-class:: classref-property
  711. :ref:`bool<class_bool>` **fog_enabled** = ``false``
  712. .. rst-class:: classref-property-setget
  713. - void **set_fog_enabled** **(** :ref:`bool<class_bool>` value **)**
  714. - :ref:`bool<class_bool>` **is_fog_enabled** **(** **)**
  715. If ``true``, fog effects are enabled. :ref:`fog_height_enabled<class_Environment_property_fog_height_enabled>` and/or :ref:`fog_depth_enabled<class_Environment_property_fog_depth_enabled>` must be set to ``true`` to actually display fog.
  716. .. rst-class:: classref-item-separator
  717. ----
  718. .. _class_Environment_property_fog_height_curve:
  719. .. rst-class:: classref-property
  720. :ref:`float<class_float>` **fog_height_curve** = ``1.0``
  721. .. rst-class:: classref-property-setget
  722. - void **set_fog_height_curve** **(** :ref:`float<class_float>` value **)**
  723. - :ref:`float<class_float>` **get_fog_height_curve** **(** **)**
  724. The height fog's intensity. A number of presets are available in the **Inspector** by right-clicking the curve.
  725. .. rst-class:: classref-item-separator
  726. ----
  727. .. _class_Environment_property_fog_height_enabled:
  728. .. rst-class:: classref-property
  729. :ref:`bool<class_bool>` **fog_height_enabled** = ``false``
  730. .. rst-class:: classref-property-setget
  731. - void **set_fog_height_enabled** **(** :ref:`bool<class_bool>` value **)**
  732. - :ref:`bool<class_bool>` **is_fog_height_enabled** **(** **)**
  733. If ``true``, the height fog effect is enabled. When enabled, fog will appear in a defined height range, regardless of the distance from the camera. This can be used to simulate "deep water" effects with a lower performance cost compared to a dedicated shader.
  734. .. rst-class:: classref-item-separator
  735. ----
  736. .. _class_Environment_property_fog_height_max:
  737. .. rst-class:: classref-property
  738. :ref:`float<class_float>` **fog_height_max** = ``0.0``
  739. .. rst-class:: classref-property-setget
  740. - void **set_fog_height_max** **(** :ref:`float<class_float>` value **)**
  741. - :ref:`float<class_float>` **get_fog_height_max** **(** **)**
  742. The Y coordinate where the height fog will be the most intense. If this value is greater than :ref:`fog_height_min<class_Environment_property_fog_height_min>`, fog will be displayed from bottom to top. Otherwise, it will be displayed from top to bottom.
  743. .. rst-class:: classref-item-separator
  744. ----
  745. .. _class_Environment_property_fog_height_min:
  746. .. rst-class:: classref-property
  747. :ref:`float<class_float>` **fog_height_min** = ``10.0``
  748. .. rst-class:: classref-property-setget
  749. - void **set_fog_height_min** **(** :ref:`float<class_float>` value **)**
  750. - :ref:`float<class_float>` **get_fog_height_min** **(** **)**
  751. The Y coordinate where the height fog will be the least intense. If this value is greater than :ref:`fog_height_max<class_Environment_property_fog_height_max>`, fog will be displayed from top to bottom. Otherwise, it will be displayed from bottom to top.
  752. .. rst-class:: classref-item-separator
  753. ----
  754. .. _class_Environment_property_fog_sun_amount:
  755. .. rst-class:: classref-property
  756. :ref:`float<class_float>` **fog_sun_amount** = ``0.0``
  757. .. rst-class:: classref-property-setget
  758. - void **set_fog_sun_amount** **(** :ref:`float<class_float>` value **)**
  759. - :ref:`float<class_float>` **get_fog_sun_amount** **(** **)**
  760. The intensity of the depth fog color transition when looking towards the sun. The sun's direction is determined automatically using the DirectionalLight node in the scene.
  761. .. rst-class:: classref-item-separator
  762. ----
  763. .. _class_Environment_property_fog_sun_color:
  764. .. rst-class:: classref-property
  765. :ref:`Color<class_Color>` **fog_sun_color** = ``Color( 1, 0.9, 0.7, 1 )``
  766. .. rst-class:: classref-property-setget
  767. - void **set_fog_sun_color** **(** :ref:`Color<class_Color>` value **)**
  768. - :ref:`Color<class_Color>` **get_fog_sun_color** **(** **)**
  769. The depth fog's :ref:`Color<class_Color>` when looking towards the sun.
  770. .. rst-class:: classref-item-separator
  771. ----
  772. .. _class_Environment_property_fog_transmit_curve:
  773. .. rst-class:: classref-property
  774. :ref:`float<class_float>` **fog_transmit_curve** = ``1.0``
  775. .. rst-class:: classref-property-setget
  776. - void **set_fog_transmit_curve** **(** :ref:`float<class_float>` value **)**
  777. - :ref:`float<class_float>` **get_fog_transmit_curve** **(** **)**
  778. The intensity of the fog light transmittance effect. Amount of light that the fog transmits.
  779. .. rst-class:: classref-item-separator
  780. ----
  781. .. _class_Environment_property_fog_transmit_enabled:
  782. .. rst-class:: classref-property
  783. :ref:`bool<class_bool>` **fog_transmit_enabled** = ``false``
  784. .. rst-class:: classref-property-setget
  785. - void **set_fog_transmit_enabled** **(** :ref:`bool<class_bool>` value **)**
  786. - :ref:`bool<class_bool>` **is_fog_transmit_enabled** **(** **)**
  787. Enables fog's light transmission effect. If ``true``, light will be more visible in the fog to simulate light scattering as in real life.
  788. .. rst-class:: classref-item-separator
  789. ----
  790. .. _class_Environment_property_glow_bicubic_upscale:
  791. .. rst-class:: classref-property
  792. :ref:`bool<class_bool>` **glow_bicubic_upscale** = ``false``
  793. .. rst-class:: classref-property-setget
  794. - void **set_glow_bicubic_upscale** **(** :ref:`bool<class_bool>` value **)**
  795. - :ref:`bool<class_bool>` **is_glow_bicubic_upscale_enabled** **(** **)**
  796. Smooths out the blockiness created by sampling higher levels, at the cost of performance.
  797. \ **Note:** When using the GLES2 renderer, this is only available if the GPU supports the ``GL_EXT_gpu_shader4`` extension.
  798. .. rst-class:: classref-item-separator
  799. ----
  800. .. _class_Environment_property_glow_blend_mode:
  801. .. rst-class:: classref-property
  802. :ref:`GlowBlendMode<enum_Environment_GlowBlendMode>` **glow_blend_mode** = ``2``
  803. .. rst-class:: classref-property-setget
  804. - void **set_glow_blend_mode** **(** :ref:`GlowBlendMode<enum_Environment_GlowBlendMode>` value **)**
  805. - :ref:`GlowBlendMode<enum_Environment_GlowBlendMode>` **get_glow_blend_mode** **(** **)**
  806. The glow blending mode.
  807. .. rst-class:: classref-item-separator
  808. ----
  809. .. _class_Environment_property_glow_bloom:
  810. .. rst-class:: classref-property
  811. :ref:`float<class_float>` **glow_bloom** = ``0.0``
  812. .. rst-class:: classref-property-setget
  813. - void **set_glow_bloom** **(** :ref:`float<class_float>` value **)**
  814. - :ref:`float<class_float>` **get_glow_bloom** **(** **)**
  815. The bloom's intensity. If set to a value higher than ``0``, this will make glow visible in areas darker than the :ref:`glow_hdr_threshold<class_Environment_property_glow_hdr_threshold>`.
  816. .. rst-class:: classref-item-separator
  817. ----
  818. .. _class_Environment_property_glow_enabled:
  819. .. rst-class:: classref-property
  820. :ref:`bool<class_bool>` **glow_enabled** = ``false``
  821. .. rst-class:: classref-property-setget
  822. - void **set_glow_enabled** **(** :ref:`bool<class_bool>` value **)**
  823. - :ref:`bool<class_bool>` **is_glow_enabled** **(** **)**
  824. If ``true``, the glow effect is enabled.
  825. \ **Note:** Only effective if :ref:`ProjectSettings.rendering/quality/intended_usage/framebuffer_allocation<class_ProjectSettings_property_rendering/quality/intended_usage/framebuffer_allocation>` is **3D** (*not* **3D Without Effects**). On mobile, :ref:`ProjectSettings.rendering/quality/intended_usage/framebuffer_allocation<class_ProjectSettings_property_rendering/quality/intended_usage/framebuffer_allocation>` defaults to **3D Without Effects** by default, so its ``.mobile`` override needs to be changed to **3D**.
  826. \ **Note:** When using GLES3 on mobile, HDR rendering is disabled by default for performance reasons. This means glow will only be visible if :ref:`glow_hdr_threshold<class_Environment_property_glow_hdr_threshold>` is decreased below ``1.0`` or if :ref:`glow_bloom<class_Environment_property_glow_bloom>` is increased above ``0.0``. Also consider increasing :ref:`glow_intensity<class_Environment_property_glow_intensity>` to ``1.5``. If you want glow to behave on mobile like it does on desktop (at a performance cost), enable :ref:`ProjectSettings.rendering/quality/depth/hdr<class_ProjectSettings_property_rendering/quality/depth/hdr>`'s ``.mobile`` override.
  827. .. rst-class:: classref-item-separator
  828. ----
  829. .. _class_Environment_property_glow_hdr_luminance_cap:
  830. .. rst-class:: classref-property
  831. :ref:`float<class_float>` **glow_hdr_luminance_cap** = ``12.0``
  832. .. rst-class:: classref-property-setget
  833. - void **set_glow_hdr_luminance_cap** **(** :ref:`float<class_float>` value **)**
  834. - :ref:`float<class_float>` **get_glow_hdr_luminance_cap** **(** **)**
  835. The higher threshold of the HDR glow. Areas brighter than this threshold will be clamped for the purposes of the glow effect.
  836. .. rst-class:: classref-item-separator
  837. ----
  838. .. _class_Environment_property_glow_hdr_scale:
  839. .. rst-class:: classref-property
  840. :ref:`float<class_float>` **glow_hdr_scale** = ``2.0``
  841. .. rst-class:: classref-property-setget
  842. - void **set_glow_hdr_bleed_scale** **(** :ref:`float<class_float>` value **)**
  843. - :ref:`float<class_float>` **get_glow_hdr_bleed_scale** **(** **)**
  844. The bleed scale of the HDR glow.
  845. .. rst-class:: classref-item-separator
  846. ----
  847. .. _class_Environment_property_glow_hdr_threshold:
  848. .. rst-class:: classref-property
  849. :ref:`float<class_float>` **glow_hdr_threshold** = ``1.0``
  850. .. rst-class:: classref-property-setget
  851. - void **set_glow_hdr_bleed_threshold** **(** :ref:`float<class_float>` value **)**
  852. - :ref:`float<class_float>` **get_glow_hdr_bleed_threshold** **(** **)**
  853. The lower threshold of the HDR glow. When using the GLES2 renderer (which doesn't support HDR), this needs to be below ``1.0`` for glow to be visible. A value of ``0.9`` works well in this case.
  854. .. rst-class:: classref-item-separator
  855. ----
  856. .. _class_Environment_property_glow_high_quality:
  857. .. rst-class:: classref-property
  858. :ref:`bool<class_bool>` **glow_high_quality** = ``false``
  859. .. rst-class:: classref-property-setget
  860. - void **set_glow_high_quality** **(** :ref:`bool<class_bool>` value **)**
  861. - :ref:`bool<class_bool>` **is_glow_high_quality_enabled** **(** **)**
  862. Takes more samples during downsample pass of glow. This ensures that single pixels are captured by glow which makes the glow look smoother and more stable during movement. However, it is very expensive and makes the glow post process take twice as long.
  863. .. rst-class:: classref-item-separator
  864. ----
  865. .. _class_Environment_property_glow_intensity:
  866. .. rst-class:: classref-property
  867. :ref:`float<class_float>` **glow_intensity** = ``0.8``
  868. .. rst-class:: classref-property-setget
  869. - void **set_glow_intensity** **(** :ref:`float<class_float>` value **)**
  870. - :ref:`float<class_float>` **get_glow_intensity** **(** **)**
  871. The glow intensity. When using the GLES2 renderer, this should be increased to 1.5 to compensate for the lack of HDR rendering.
  872. .. rst-class:: classref-item-separator
  873. ----
  874. .. _class_Environment_property_glow_levels/1:
  875. .. rst-class:: classref-property
  876. :ref:`bool<class_bool>` **glow_levels/1** = ``false``
  877. .. rst-class:: classref-property-setget
  878. - void **set_glow_level** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enabled **)**
  879. - :ref:`bool<class_bool>` **is_glow_level_enabled** **(** :ref:`int<class_int>` idx **)** |const|
  880. If ``true``, the 1st level of glow is enabled. This is the most "local" level (least blurry).
  881. .. rst-class:: classref-item-separator
  882. ----
  883. .. _class_Environment_property_glow_levels/2:
  884. .. rst-class:: classref-property
  885. :ref:`bool<class_bool>` **glow_levels/2** = ``false``
  886. .. rst-class:: classref-property-setget
  887. - void **set_glow_level** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enabled **)**
  888. - :ref:`bool<class_bool>` **is_glow_level_enabled** **(** :ref:`int<class_int>` idx **)** |const|
  889. If ``true``, the 2th level of glow is enabled.
  890. .. rst-class:: classref-item-separator
  891. ----
  892. .. _class_Environment_property_glow_levels/3:
  893. .. rst-class:: classref-property
  894. :ref:`bool<class_bool>` **glow_levels/3** = ``true``
  895. .. rst-class:: classref-property-setget
  896. - void **set_glow_level** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enabled **)**
  897. - :ref:`bool<class_bool>` **is_glow_level_enabled** **(** :ref:`int<class_int>` idx **)** |const|
  898. If ``true``, the 3th level of glow is enabled.
  899. .. rst-class:: classref-item-separator
  900. ----
  901. .. _class_Environment_property_glow_levels/4:
  902. .. rst-class:: classref-property
  903. :ref:`bool<class_bool>` **glow_levels/4** = ``false``
  904. .. rst-class:: classref-property-setget
  905. - void **set_glow_level** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enabled **)**
  906. - :ref:`bool<class_bool>` **is_glow_level_enabled** **(** :ref:`int<class_int>` idx **)** |const|
  907. If ``true``, the 4th level of glow is enabled.
  908. .. rst-class:: classref-item-separator
  909. ----
  910. .. _class_Environment_property_glow_levels/5:
  911. .. rst-class:: classref-property
  912. :ref:`bool<class_bool>` **glow_levels/5** = ``true``
  913. .. rst-class:: classref-property-setget
  914. - void **set_glow_level** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enabled **)**
  915. - :ref:`bool<class_bool>` **is_glow_level_enabled** **(** :ref:`int<class_int>` idx **)** |const|
  916. If ``true``, the 5th level of glow is enabled.
  917. .. rst-class:: classref-item-separator
  918. ----
  919. .. _class_Environment_property_glow_levels/6:
  920. .. rst-class:: classref-property
  921. :ref:`bool<class_bool>` **glow_levels/6** = ``false``
  922. .. rst-class:: classref-property-setget
  923. - void **set_glow_level** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enabled **)**
  924. - :ref:`bool<class_bool>` **is_glow_level_enabled** **(** :ref:`int<class_int>` idx **)** |const|
  925. If ``true``, the 6th level of glow is enabled.
  926. .. rst-class:: classref-item-separator
  927. ----
  928. .. _class_Environment_property_glow_levels/7:
  929. .. rst-class:: classref-property
  930. :ref:`bool<class_bool>` **glow_levels/7** = ``false``
  931. .. rst-class:: classref-property-setget
  932. - void **set_glow_level** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enabled **)**
  933. - :ref:`bool<class_bool>` **is_glow_level_enabled** **(** :ref:`int<class_int>` idx **)** |const|
  934. If ``true``, the 7th level of glow is enabled. This is the most "global" level (blurriest).
  935. .. rst-class:: classref-item-separator
  936. ----
  937. .. _class_Environment_property_glow_strength:
  938. .. rst-class:: classref-property
  939. :ref:`float<class_float>` **glow_strength** = ``1.0``
  940. .. rst-class:: classref-property-setget
  941. - void **set_glow_strength** **(** :ref:`float<class_float>` value **)**
  942. - :ref:`float<class_float>` **get_glow_strength** **(** **)**
  943. The glow strength. When using the GLES2 renderer, this should be increased to 1.3 to compensate for the lack of HDR rendering.
  944. .. rst-class:: classref-item-separator
  945. ----
  946. .. _class_Environment_property_ss_reflections_depth_tolerance:
  947. .. rst-class:: classref-property
  948. :ref:`float<class_float>` **ss_reflections_depth_tolerance** = ``0.2``
  949. .. rst-class:: classref-property-setget
  950. - void **set_ssr_depth_tolerance** **(** :ref:`float<class_float>` value **)**
  951. - :ref:`float<class_float>` **get_ssr_depth_tolerance** **(** **)**
  952. The depth tolerance for screen-space reflections.
  953. .. rst-class:: classref-item-separator
  954. ----
  955. .. _class_Environment_property_ss_reflections_enabled:
  956. .. rst-class:: classref-property
  957. :ref:`bool<class_bool>` **ss_reflections_enabled** = ``false``
  958. .. rst-class:: classref-property-setget
  959. - void **set_ssr_enabled** **(** :ref:`bool<class_bool>` value **)**
  960. - :ref:`bool<class_bool>` **is_ssr_enabled** **(** **)**
  961. If ``true``, screen-space reflections are enabled. Screen-space reflections are more accurate than reflections from :ref:`GIProbe<class_GIProbe>`\ s or :ref:`ReflectionProbe<class_ReflectionProbe>`\ s, but are slower and can't reflect surfaces occluded by others.
  962. .. rst-class:: classref-item-separator
  963. ----
  964. .. _class_Environment_property_ss_reflections_fade_in:
  965. .. rst-class:: classref-property
  966. :ref:`float<class_float>` **ss_reflections_fade_in** = ``0.15``
  967. .. rst-class:: classref-property-setget
  968. - void **set_ssr_fade_in** **(** :ref:`float<class_float>` value **)**
  969. - :ref:`float<class_float>` **get_ssr_fade_in** **(** **)**
  970. The fade-in distance for screen-space reflections. Affects the area from the reflected material to the screen-space reflection).
  971. .. rst-class:: classref-item-separator
  972. ----
  973. .. _class_Environment_property_ss_reflections_fade_out:
  974. .. rst-class:: classref-property
  975. :ref:`float<class_float>` **ss_reflections_fade_out** = ``2.0``
  976. .. rst-class:: classref-property-setget
  977. - void **set_ssr_fade_out** **(** :ref:`float<class_float>` value **)**
  978. - :ref:`float<class_float>` **get_ssr_fade_out** **(** **)**
  979. The fade-out distance for screen-space reflections. Affects the area from the screen-space reflection to the "global" reflection.
  980. .. rst-class:: classref-item-separator
  981. ----
  982. .. _class_Environment_property_ss_reflections_max_steps:
  983. .. rst-class:: classref-property
  984. :ref:`int<class_int>` **ss_reflections_max_steps** = ``64``
  985. .. rst-class:: classref-property-setget
  986. - void **set_ssr_max_steps** **(** :ref:`int<class_int>` value **)**
  987. - :ref:`int<class_int>` **get_ssr_max_steps** **(** **)**
  988. The maximum number of steps for screen-space reflections. Higher values are slower.
  989. .. rst-class:: classref-item-separator
  990. ----
  991. .. _class_Environment_property_ss_reflections_roughness:
  992. .. rst-class:: classref-property
  993. :ref:`bool<class_bool>` **ss_reflections_roughness** = ``true``
  994. .. rst-class:: classref-property-setget
  995. - void **set_ssr_rough** **(** :ref:`bool<class_bool>` value **)**
  996. - :ref:`bool<class_bool>` **is_ssr_rough** **(** **)**
  997. If ``true``, screen-space reflections will take the material roughness into account.
  998. .. rst-class:: classref-item-separator
  999. ----
  1000. .. _class_Environment_property_ssao_ao_channel_affect:
  1001. .. rst-class:: classref-property
  1002. :ref:`float<class_float>` **ssao_ao_channel_affect** = ``0.0``
  1003. .. rst-class:: classref-property-setget
  1004. - void **set_ssao_ao_channel_affect** **(** :ref:`float<class_float>` value **)**
  1005. - :ref:`float<class_float>` **get_ssao_ao_channel_affect** **(** **)**
  1006. The screen-space ambient occlusion intensity on materials that have an AO texture defined. Values higher than ``0`` will make the SSAO effect visible in areas darkened by AO textures.
  1007. .. rst-class:: classref-item-separator
  1008. ----
  1009. .. _class_Environment_property_ssao_bias:
  1010. .. rst-class:: classref-property
  1011. :ref:`float<class_float>` **ssao_bias** = ``0.01``
  1012. .. rst-class:: classref-property-setget
  1013. - void **set_ssao_bias** **(** :ref:`float<class_float>` value **)**
  1014. - :ref:`float<class_float>` **get_ssao_bias** **(** **)**
  1015. The screen-space ambient occlusion bias. This should be kept high enough to prevent "smooth" curves from being affected by ambient occlusion.
  1016. .. rst-class:: classref-item-separator
  1017. ----
  1018. .. _class_Environment_property_ssao_blur:
  1019. .. rst-class:: classref-property
  1020. :ref:`SSAOBlur<enum_Environment_SSAOBlur>` **ssao_blur** = ``3``
  1021. .. rst-class:: classref-property-setget
  1022. - void **set_ssao_blur** **(** :ref:`SSAOBlur<enum_Environment_SSAOBlur>` value **)**
  1023. - :ref:`SSAOBlur<enum_Environment_SSAOBlur>` **get_ssao_blur** **(** **)**
  1024. The screen-space ambient occlusion blur quality. See :ref:`SSAOBlur<enum_Environment_SSAOBlur>` for possible values.
  1025. .. rst-class:: classref-item-separator
  1026. ----
  1027. .. _class_Environment_property_ssao_color:
  1028. .. rst-class:: classref-property
  1029. :ref:`Color<class_Color>` **ssao_color** = ``Color( 0, 0, 0, 1 )``
  1030. .. rst-class:: classref-property-setget
  1031. - void **set_ssao_color** **(** :ref:`Color<class_Color>` value **)**
  1032. - :ref:`Color<class_Color>` **get_ssao_color** **(** **)**
  1033. The screen-space ambient occlusion color.
  1034. .. rst-class:: classref-item-separator
  1035. ----
  1036. .. _class_Environment_property_ssao_edge_sharpness:
  1037. .. rst-class:: classref-property
  1038. :ref:`float<class_float>` **ssao_edge_sharpness** = ``4.0``
  1039. .. rst-class:: classref-property-setget
  1040. - void **set_ssao_edge_sharpness** **(** :ref:`float<class_float>` value **)**
  1041. - :ref:`float<class_float>` **get_ssao_edge_sharpness** **(** **)**
  1042. The screen-space ambient occlusion edge sharpness.
  1043. .. rst-class:: classref-item-separator
  1044. ----
  1045. .. _class_Environment_property_ssao_enabled:
  1046. .. rst-class:: classref-property
  1047. :ref:`bool<class_bool>` **ssao_enabled** = ``false``
  1048. .. rst-class:: classref-property-setget
  1049. - void **set_ssao_enabled** **(** :ref:`bool<class_bool>` value **)**
  1050. - :ref:`bool<class_bool>` **is_ssao_enabled** **(** **)**
  1051. If ``true``, the screen-space ambient occlusion effect is enabled. This darkens objects' corners and cavities to simulate ambient light not reaching the entire object as in real life. This works well for small, dynamic objects, but baked lighting or ambient occlusion textures will do a better job at displaying ambient occlusion on large static objects. This is a costly effect and should be disabled first when running into performance issues.
  1052. .. rst-class:: classref-item-separator
  1053. ----
  1054. .. _class_Environment_property_ssao_intensity:
  1055. .. rst-class:: classref-property
  1056. :ref:`float<class_float>` **ssao_intensity** = ``1.0``
  1057. .. rst-class:: classref-property-setget
  1058. - void **set_ssao_intensity** **(** :ref:`float<class_float>` value **)**
  1059. - :ref:`float<class_float>` **get_ssao_intensity** **(** **)**
  1060. The primary screen-space ambient occlusion intensity. See also :ref:`ssao_radius<class_Environment_property_ssao_radius>`.
  1061. .. rst-class:: classref-item-separator
  1062. ----
  1063. .. _class_Environment_property_ssao_intensity2:
  1064. .. rst-class:: classref-property
  1065. :ref:`float<class_float>` **ssao_intensity2** = ``1.0``
  1066. .. rst-class:: classref-property-setget
  1067. - void **set_ssao_intensity2** **(** :ref:`float<class_float>` value **)**
  1068. - :ref:`float<class_float>` **get_ssao_intensity2** **(** **)**
  1069. The secondary screen-space ambient occlusion intensity. See also :ref:`ssao_radius2<class_Environment_property_ssao_radius2>`.
  1070. .. rst-class:: classref-item-separator
  1071. ----
  1072. .. _class_Environment_property_ssao_light_affect:
  1073. .. rst-class:: classref-property
  1074. :ref:`float<class_float>` **ssao_light_affect** = ``0.0``
  1075. .. rst-class:: classref-property-setget
  1076. - void **set_ssao_direct_light_affect** **(** :ref:`float<class_float>` value **)**
  1077. - :ref:`float<class_float>` **get_ssao_direct_light_affect** **(** **)**
  1078. The screen-space ambient occlusion intensity in direct light. In real life, ambient occlusion only applies to indirect light, which means its effects can't be seen in direct light. Values higher than ``0`` will make the SSAO effect visible in direct light.
  1079. .. rst-class:: classref-item-separator
  1080. ----
  1081. .. _class_Environment_property_ssao_quality:
  1082. .. rst-class:: classref-property
  1083. :ref:`SSAOQuality<enum_Environment_SSAOQuality>` **ssao_quality** = ``1``
  1084. .. rst-class:: classref-property-setget
  1085. - void **set_ssao_quality** **(** :ref:`SSAOQuality<enum_Environment_SSAOQuality>` value **)**
  1086. - :ref:`SSAOQuality<enum_Environment_SSAOQuality>` **get_ssao_quality** **(** **)**
  1087. The screen-space ambient occlusion quality. Higher qualities will make better use of small objects for ambient occlusion, but are slower.
  1088. .. rst-class:: classref-item-separator
  1089. ----
  1090. .. _class_Environment_property_ssao_radius:
  1091. .. rst-class:: classref-property
  1092. :ref:`float<class_float>` **ssao_radius** = ``1.0``
  1093. .. rst-class:: classref-property-setget
  1094. - void **set_ssao_radius** **(** :ref:`float<class_float>` value **)**
  1095. - :ref:`float<class_float>` **get_ssao_radius** **(** **)**
  1096. The primary screen-space ambient occlusion radius.
  1097. .. rst-class:: classref-item-separator
  1098. ----
  1099. .. _class_Environment_property_ssao_radius2:
  1100. .. rst-class:: classref-property
  1101. :ref:`float<class_float>` **ssao_radius2** = ``0.0``
  1102. .. rst-class:: classref-property-setget
  1103. - void **set_ssao_radius2** **(** :ref:`float<class_float>` value **)**
  1104. - :ref:`float<class_float>` **get_ssao_radius2** **(** **)**
  1105. The secondary screen-space ambient occlusion radius. If set to a value higher than ``0``, enables the secondary screen-space ambient occlusion effect which can be used to improve the effect's appearance (at the cost of performance).
  1106. .. rst-class:: classref-item-separator
  1107. ----
  1108. .. _class_Environment_property_tonemap_exposure:
  1109. .. rst-class:: classref-property
  1110. :ref:`float<class_float>` **tonemap_exposure** = ``1.0``
  1111. .. rst-class:: classref-property-setget
  1112. - void **set_tonemap_exposure** **(** :ref:`float<class_float>` value **)**
  1113. - :ref:`float<class_float>` **get_tonemap_exposure** **(** **)**
  1114. The default exposure used for tonemapping.
  1115. .. rst-class:: classref-item-separator
  1116. ----
  1117. .. _class_Environment_property_tonemap_mode:
  1118. .. rst-class:: classref-property
  1119. :ref:`ToneMapper<enum_Environment_ToneMapper>` **tonemap_mode** = ``0``
  1120. .. rst-class:: classref-property-setget
  1121. - void **set_tonemapper** **(** :ref:`ToneMapper<enum_Environment_ToneMapper>` value **)**
  1122. - :ref:`ToneMapper<enum_Environment_ToneMapper>` **get_tonemapper** **(** **)**
  1123. The tonemapping mode to use. Tonemapping is the process that "converts" HDR values to be suitable for rendering on a SDR display. (Godot doesn't support rendering on HDR displays yet.)
  1124. .. rst-class:: classref-item-separator
  1125. ----
  1126. .. _class_Environment_property_tonemap_white:
  1127. .. rst-class:: classref-property
  1128. :ref:`float<class_float>` **tonemap_white** = ``1.0``
  1129. .. rst-class:: classref-property-setget
  1130. - void **set_tonemap_white** **(** :ref:`float<class_float>` value **)**
  1131. - :ref:`float<class_float>` **get_tonemap_white** **(** **)**
  1132. The white reference value for tonemapping. Only effective if the :ref:`tonemap_mode<class_Environment_property_tonemap_mode>` isn't set to :ref:`TONE_MAPPER_LINEAR<class_Environment_constant_TONE_MAPPER_LINEAR>`.
  1133. .. rst-class:: classref-section-separator
  1134. ----
  1135. .. rst-class:: classref-descriptions-group
  1136. Method Descriptions
  1137. -------------------
  1138. .. _class_Environment_method_is_glow_level_enabled:
  1139. .. rst-class:: classref-method
  1140. :ref:`bool<class_bool>` **is_glow_level_enabled** **(** :ref:`int<class_int>` idx **)** |const|
  1141. Returns ``true`` if the glow level ``idx`` is specified, ``false`` otherwise.
  1142. .. rst-class:: classref-item-separator
  1143. ----
  1144. .. _class_Environment_method_set_glow_level:
  1145. .. rst-class:: classref-method
  1146. void **set_glow_level** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enabled **)**
  1147. Enables or disables the glow level at index ``idx``. Each level relies on the previous level. This means that enabling higher glow levels will slow down the glow effect rendering, even if previous levels aren't enabled.
  1148. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  1149. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  1150. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  1151. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`