2020-05-12 10:10:34 +02:00
<?xml version="1.0" encoding="UTF-8" ?>
2022-02-14 14:18:53 +01:00
<class name= "LightmapGI" inherits= "VisualInstance3D" version= "4.0" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "../class.xsd" >
2020-05-12 10:10:34 +02:00
<brief_description >
2021-11-14 20:20:25 +01:00
Computes and stores baked lightmaps for fast global illumination.
2020-05-12 10:10:34 +02:00
</brief_description>
<description >
2021-11-14 20:20:25 +01:00
The [LightmapGI] node is used to compute and store baked lightmaps. Lightmaps are used to provide high-quality indirect lighting with very little light leaking. [LightmapGI] can also provide rough reflections using spherical harmonics if [member directional] is enabled. Dynamic objects can receive indirect lighting thanks to [i]light probes[/i], which can be automatically placed by setting [member generate_probes_subdiv]. Additional lightmap probes can also be added by creating [LightmapProbe] nodes. The downside is that lightmaps are fully static and cannot be baked in an exported project. Baking a [LightmapGI] node is also slower compared to [VoxelGI].
[b]Procedural generation:[/b] Lightmap baking functionality is only available in the editor. This means [LightmapGI] is not suited to procedurally generated or user-built levels. For procedurally generated or user-built levels, use [VoxelGI] or SDFGI instead (see [member Environment.sdfgi_enabled]).
[b]Performance:[/b] [LightmapGI] provides the best possible run-time performance for global illumination. It is suitable for low-end hardware including integrated graphics and mobile devices.
2020-05-12 10:10:34 +02:00
</description>
<tutorials >
</tutorials>
<members >
<member name= "bias" type= "float" setter= "set_bias" getter= "get_bias" default= "0.0005" >
</member>
<member name= "bounces" type= "int" setter= "set_bounces" getter= "get_bounces" default= "1" >
</member>
<member name= "directional" type= "bool" setter= "set_directional" getter= "is_directional" default= "false" >
</member>
<member name= "environment_custom_color" type= "Color" setter= "set_environment_custom_color" getter= "get_environment_custom_color" >
</member>
<member name= "environment_custom_energy" type= "float" setter= "set_environment_custom_energy" getter= "get_environment_custom_energy" >
</member>
<member name= "environment_custom_sky" type= "Sky" setter= "set_environment_custom_sky" getter= "get_environment_custom_sky" >
</member>
2021-06-05 00:47:26 +02:00
<member name= "environment_mode" type= "int" setter= "set_environment_mode" getter= "get_environment_mode" enum= "LightmapGI.EnvironmentMode" default= "0" >
2020-05-12 10:10:34 +02:00
</member>
2021-06-05 00:47:26 +02:00
<member name= "generate_probes_subdiv" type= "int" setter= "set_generate_probes" getter= "get_generate_probes" enum= "LightmapGI.GenerateProbes" default= "0" >
2020-05-12 10:10:34 +02:00
</member>
<member name= "interior" type= "bool" setter= "set_interior" getter= "is_interior" default= "false" >
</member>
2021-06-05 00:47:26 +02:00
<member name= "light_data" type= "LightmapGIData" setter= "set_light_data" getter= "get_light_data" >
2020-05-12 10:10:34 +02:00
</member>
<member name= "max_texture_size" type= "int" setter= "set_max_texture_size" getter= "get_max_texture_size" default= "16384" >
</member>
2021-06-05 00:47:26 +02:00
<member name= "quality" type= "int" setter= "set_bake_quality" getter= "get_bake_quality" enum= "LightmapGI.BakeQuality" default= "1" >
2020-05-12 10:10:34 +02:00
</member>
<member name= "use_denoiser" type= "bool" setter= "set_use_denoiser" getter= "is_using_denoiser" default= "true" >
</member>
</members>
<constants >
<constant name= "BAKE_QUALITY_LOW" value= "0" enum= "BakeQuality" >
</constant>
<constant name= "BAKE_QUALITY_MEDIUM" value= "1" enum= "BakeQuality" >
</constant>
<constant name= "BAKE_QUALITY_HIGH" value= "2" enum= "BakeQuality" >
</constant>
<constant name= "BAKE_QUALITY_ULTRA" value= "3" enum= "BakeQuality" >
</constant>
<constant name= "GENERATE_PROBES_DISABLED" value= "0" enum= "GenerateProbes" >
</constant>
<constant name= "GENERATE_PROBES_SUBDIV_4" value= "1" enum= "GenerateProbes" >
</constant>
<constant name= "GENERATE_PROBES_SUBDIV_8" value= "2" enum= "GenerateProbes" >
</constant>
<constant name= "GENERATE_PROBES_SUBDIV_16" value= "3" enum= "GenerateProbes" >
</constant>
<constant name= "GENERATE_PROBES_SUBDIV_32" value= "4" enum= "GenerateProbes" >
</constant>
<constant name= "BAKE_ERROR_OK" value= "0" enum= "BakeError" >
</constant>
<constant name= "BAKE_ERROR_NO_LIGHTMAPPER" value= "1" enum= "BakeError" >
</constant>
<constant name= "BAKE_ERROR_NO_SAVE_PATH" value= "2" enum= "BakeError" >
</constant>
<constant name= "BAKE_ERROR_NO_MESHES" value= "3" enum= "BakeError" >
</constant>
<constant name= "BAKE_ERROR_MESHES_INVALID" value= "4" enum= "BakeError" >
</constant>
<constant name= "BAKE_ERROR_CANT_CREATE_IMAGE" value= "5" enum= "BakeError" >
</constant>
<constant name= "BAKE_ERROR_USER_ABORTED" value= "6" enum= "BakeError" >
</constant>
<constant name= "ENVIRONMENT_MODE_DISABLED" value= "0" enum= "EnvironmentMode" >
</constant>
<constant name= "ENVIRONMENT_MODE_SCENE" value= "1" enum= "EnvironmentMode" >
</constant>
<constant name= "ENVIRONMENT_MODE_CUSTOM_SKY" value= "2" enum= "EnvironmentMode" >
</constant>
<constant name= "ENVIRONMENT_MODE_CUSTOM_COLOR" value= "3" enum= "EnvironmentMode" >
</constant>
</constants>
</class>