2017-09-13 04:42:36 +08:00
<?xml version="1.0" encoding="UTF-8" ?>
2020-03-31 00:22:57 +08:00
<class name= "GeometryInstance3D" inherits= "VisualInstance3D" version= "4.0" >
2017-09-13 04:42:36 +08:00
<brief_description >
2019-06-22 07:04:47 +08:00
Base node for geometry-based visual instances.
2017-09-13 04:42:36 +08:00
</brief_description>
<description >
2019-06-22 07:04:47 +08:00
Base node for geometry-based visual instances. Shares some common functionality like visibility and custom materials.
2017-09-13 04:42:36 +08:00
</description>
<tutorials >
</tutorials>
<methods >
2020-04-20 17:48:00 +08:00
<method name= "get_shader_instance_uniform" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "Variant" />
<argument index= "0" name= "uniform" type= "StringName" />
2020-04-20 17:48:00 +08:00
<description >
</description>
</method>
2019-02-01 00:54:00 +08:00
<method name= "set_custom_aabb" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
<argument index= "0" name= "aabb" type= "AABB" />
2019-02-01 00:54:00 +08:00
<description >
2019-06-27 17:10:53 +08:00
Overrides the bounding box of this node with a custom one. To remove it, set an [AABB] with all fields set to zero.
2019-02-01 00:54:00 +08:00
</description>
</method>
2020-04-20 17:48:00 +08:00
<method name= "set_shader_instance_uniform" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
<argument index= "0" name= "uniform" type= "StringName" />
<argument index= "1" name= "value" type= "Variant" />
2020-04-20 17:48:00 +08:00
<description >
</description>
</method>
2017-09-13 04:42:36 +08:00
</methods>
<members >
2020-03-31 00:22:57 +08:00
<member name= "cast_shadow" type= "int" setter= "set_cast_shadows_setting" getter= "get_cast_shadows_setting" enum= "GeometryInstance3D.ShadowCastingSetting" default= "1" >
2019-06-27 17:10:53 +08:00
The selected shadow casting flag. See [enum ShadowCastingSetting] for possible values.
2017-09-13 04:42:36 +08:00
</member>
2019-06-29 18:38:01 +08:00
<member name= "extra_cull_margin" type= "float" setter= "set_extra_cull_margin" getter= "get_extra_cull_margin" default= "0.0" >
2020-03-31 00:22:57 +08:00
The extra distance added to the GeometryInstance3D's bounding box ([AABB]) to increase its cull box.
2017-09-13 04:42:36 +08:00
</member>
2020-05-12 16:10:34 +08:00
<member name= "gi_lightmap_scale" type= "int" setter= "set_lightmap_scale" getter= "get_lightmap_scale" enum= "GeometryInstance3D.LightmapScale" default= "0" >
</member>
<member name= "gi_mode" type= "int" setter= "set_gi_mode" getter= "get_gi_mode" enum= "GeometryInstance3D.GIMode" default= "0" >
</member>
2021-04-21 00:40:24 +08:00
<member name= "ignore_occlusion_culling" type= "bool" setter= "set_ignore_occlusion_culling" getter= "is_ignoring_occlusion_culling" default= "false" >
</member>
2021-01-04 21:33:44 +08:00
<member name= "lod_bias" type= "float" setter= "set_lod_bias" getter= "get_lod_bias" default= "1.0" >
</member>
2021-05-10 00:23:20 +08:00
<member name= "material_override" type= "Material" setter= "set_material_override" getter= "get_material_override" >
The material override for the whole geometry.
If a material is assigned to this property, it will be used instead of any material set in any material slot of the mesh.
2017-09-13 04:42:36 +08:00
</member>
2021-07-21 02:17:34 +08:00
<member name= "transparency" type= "float" setter= "set_transparency" getter= "get_transparency" default= "0.0" >
Transparency applied to the whole geometry. In spatial shaders, transparency is set as the default value of the [code]ALPHA[/code] built-in.
</member>
2021-05-10 00:23:20 +08:00
<member name= "visibility_range_begin" type= "float" setter= "set_visibility_range_begin" getter= "get_visibility_range_begin" default= "0.0" >
Starting distance from which the GeometryInstance3D will be visible, taking [member visibility_range_begin_margin] into account as well. The default value of 0 is used to disable the range check.
2017-09-13 04:42:36 +08:00
</member>
2021-05-10 00:23:20 +08:00
<member name= "visibility_range_begin_margin" type= "float" setter= "set_visibility_range_begin_margin" getter= "get_visibility_range_begin_margin" default= "0.0" >
Margin for the [member visibility_range_begin] threshold. The GeometryInstance3D will only change its visibility state when it goes over or under the [member visibility_range_begin] threshold by this amount.
2017-09-13 04:42:36 +08:00
</member>
2021-05-10 00:23:20 +08:00
<member name= "visibility_range_end" type= "float" setter= "set_visibility_range_end" getter= "get_visibility_range_end" default= "0.0" >
2021-07-21 02:17:34 +08:00
Distance from which the GeometryInstance3D will be hidden, taking [member visibility_range_end_margin] into account as well. The default value of 0 is used to disable the range check.
2017-09-13 04:42:36 +08:00
</member>
2021-05-10 00:23:20 +08:00
<member name= "visibility_range_end_margin" type= "float" setter= "set_visibility_range_end_margin" getter= "get_visibility_range_end_margin" default= "0.0" >
Margin for the [member visibility_range_end] threshold. The GeometryInstance3D will only change its visibility state when it goes over or under the [member visibility_range_end] threshold by this amount.
2017-09-13 04:42:36 +08:00
</member>
2021-07-21 02:17:34 +08:00
<member name= "visibility_range_fade_mode" type= "int" setter= "set_visibility_range_fade_mode" getter= "get_visibility_range_fade_mode" enum= "GeometryInstance3D.VisibilityRangeFadeMode" default= "0" >
Controls which instances will be faded when approaching the limits of the visibility range. See [enum VisibilityRangeFadeMode] for possible values.
</member>
2017-09-13 04:42:36 +08:00
</members>
<constants >
2017-11-25 06:16:30 +08:00
<constant name= "SHADOW_CASTING_SETTING_OFF" value= "0" enum= "ShadowCastingSetting" >
2017-11-27 00:12:25 +08:00
Will not cast any shadows.
2017-09-13 04:42:36 +08:00
</constant>
2017-11-25 06:16:30 +08:00
<constant name= "SHADOW_CASTING_SETTING_ON" value= "1" enum= "ShadowCastingSetting" >
2020-03-31 00:22:57 +08:00
Will cast shadows from all visible faces in the GeometryInstance3D.
2017-11-27 00:12:25 +08:00
Will take culling into account, so faces not being rendered will not be taken into account when shadow casting.
2017-09-13 04:42:36 +08:00
</constant>
2017-11-25 06:16:30 +08:00
<constant name= "SHADOW_CASTING_SETTING_DOUBLE_SIDED" value= "2" enum= "ShadowCastingSetting" >
2020-03-31 00:22:57 +08:00
Will cast shadows from all visible faces in the GeometryInstance3D.
2017-11-27 00:12:25 +08:00
Will not take culling into account, so all faces will be taken into account when shadow casting.
2017-09-13 04:42:36 +08:00
</constant>
2017-11-25 06:16:30 +08:00
<constant name= "SHADOW_CASTING_SETTING_SHADOWS_ONLY" value= "3" enum= "ShadowCastingSetting" >
2017-11-27 00:12:25 +08:00
Will only show the shadows casted from this object.
2019-08-21 20:04:56 +08:00
In other words, the actual mesh will not be visible, only the shadows casted from the mesh will be.
2017-09-13 04:42:36 +08:00
</constant>
2020-05-12 16:10:34 +08:00
<constant name= "GI_MODE_DISABLED" value= "0" enum= "GIMode" >
</constant>
<constant name= "GI_MODE_BAKED" value= "1" enum= "GIMode" >
</constant>
<constant name= "GI_MODE_DYNAMIC" value= "2" enum= "GIMode" >
</constant>
<constant name= "LIGHTMAP_SCALE_1X" value= "0" enum= "LightmapScale" >
</constant>
<constant name= "LIGHTMAP_SCALE_2X" value= "1" enum= "LightmapScale" >
2020-02-12 16:59:06 +08:00
</constant>
2020-05-12 16:10:34 +08:00
<constant name= "LIGHTMAP_SCALE_4X" value= "2" enum= "LightmapScale" >
2019-06-27 17:10:53 +08:00
</constant>
2020-05-12 16:10:34 +08:00
<constant name= "LIGHTMAP_SCALE_8X" value= "3" enum= "LightmapScale" >
2017-09-16 07:46:14 +08:00
</constant>
2020-05-12 16:10:34 +08:00
<constant name= "LIGHTMAP_SCALE_MAX" value= "4" enum= "LightmapScale" >
2017-09-13 04:42:36 +08:00
</constant>
2021-07-21 02:17:34 +08:00
<constant name= "VISIBILITY_RANGE_FADE_DISABLED" value= "0" enum= "VisibilityRangeFadeMode" >
Will not fade itself nor its visibility dependencies, hysteresis will be used instead. See [member visibility_range_begin] and [member Node3D.visibility_parent] for more information.
</constant>
<constant name= "VISIBILITY_RANGE_FADE_SELF" value= "1" enum= "VisibilityRangeFadeMode" >
Will fade-out itself when reaching the limits of its own visibility range. The fading range is determined by [member visibility_range_begin_margin] and [member visibility_range_end_margin].
</constant>
<constant name= "VISIBILITY_RANGE_FADE_DEPENDENCIES" value= "2" enum= "VisibilityRangeFadeMode" >
Will fade-in its visibility dependencies (see [member Node3D.visibility_parent]) when reaching the limits of its own visibility range. The fading range is determined by [member visibility_range_begin_margin] and [member visibility_range_end_margin].
</constant>
2017-09-13 04:42:36 +08:00
</constants>
</class>