:github_url: hide .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/3.5/doc/tools/make_rst.py. .. XML source: https://github.com/godotengine/godot/tree/3.5/doc/classes/VisualServer.xml. .. _class_VisualServer: VisualServer ============ **Inherits:** :ref:`Object` Server for anything visible. .. rst-class:: classref-introduction-group Description ----------- Server for anything visible. The visual server is the API backend for everything visible. The whole scene system mounts on it to display. The visual server is completely opaque, the internals are entirely implementation specific and cannot be accessed. The visual server can be used to bypass the scene system entirely. Resources are created using the ``*_create`` functions. All objects are drawn to a viewport. You can use the :ref:`Viewport` attached to the :ref:`SceneTree` or you can create one yourself with :ref:`viewport_create`. When using a custom scenario or canvas, the scenario or canvas needs to be attached to the viewport using :ref:`viewport_set_scenario` or :ref:`viewport_attach_canvas`. In 3D, all visual objects must be associated with a scenario. The scenario is a visual representation of the world. If accessing the visual server from a running game, the scenario can be accessed from the scene tree from any :ref:`Spatial` node with :ref:`Spatial.get_world`. Otherwise, a scenario can be created with :ref:`scenario_create`. Similarly, in 2D, a canvas is needed to draw all canvas items. In 3D, all visible objects are comprised of a resource and an instance. A resource can be a mesh, a particle system, a light, or any other 3D object. In order to be visible resources must be attached to an instance using :ref:`instance_set_base`. The instance must also be attached to the scenario using :ref:`instance_set_scenario` in order to be visible. In 2D, all visible objects are some form of canvas item. In order to be visible, a canvas item needs to be the child of a canvas attached to a viewport, or it needs to be the child of another canvas item that is eventually attached to the canvas. .. rst-class:: classref-introduction-group Tutorials --------- - :doc:`../tutorials/performance/using_servers` .. rst-class:: classref-reftable-group Properties ---------- .. table:: :widths: auto +-------------------------+-----------------------------------------------------------------------------+ | :ref:`bool` | :ref:`render_loop_enabled` | +-------------------------+-----------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group Methods ------- .. table:: :widths: auto +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`black_bars_set_images` **(** :ref:`RID` left, :ref:`RID` top, :ref:`RID` right, :ref:`RID` bottom **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`black_bars_set_margins` **(** :ref:`int` left, :ref:`int` top, :ref:`int` right, :ref:`int` bottom **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`camera_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`camera_set_cull_mask` **(** :ref:`RID` camera, :ref:`int` layers **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`camera_set_environment` **(** :ref:`RID` camera, :ref:`RID` env **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`camera_set_frustum` **(** :ref:`RID` camera, :ref:`float` size, :ref:`Vector2` offset, :ref:`float` z_near, :ref:`float` z_far **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`camera_set_orthogonal` **(** :ref:`RID` camera, :ref:`float` size, :ref:`float` z_near, :ref:`float` z_far **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`camera_set_perspective` **(** :ref:`RID` camera, :ref:`float` fovy_degrees, :ref:`float` z_near, :ref:`float` z_far **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`camera_set_transform` **(** :ref:`RID` camera, :ref:`Transform` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`camera_set_use_vertical_aspect` **(** :ref:`RID` camera, :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`canvas_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_circle` **(** :ref:`RID` item, :ref:`Vector2` pos, :ref:`float` radius, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_clip_ignore` **(** :ref:`RID` item, :ref:`bool` ignore **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_line` **(** :ref:`RID` item, :ref:`Vector2` from, :ref:`Vector2` to, :ref:`Color` color, :ref:`float` width=1.0, :ref:`bool` antialiased=false **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_mesh` **(** :ref:`RID` item, :ref:`RID` mesh, :ref:`Transform2D` transform=Transform2D( 1, 0, 0, 1, 0, 0 ), :ref:`Color` modulate=Color( 1, 1, 1, 1 ), :ref:`RID` texture, :ref:`RID` normal_map **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_multimesh` **(** :ref:`RID` item, :ref:`RID` mesh, :ref:`RID` texture, :ref:`RID` normal_map **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_nine_patch` **(** :ref:`RID` item, :ref:`Rect2` rect, :ref:`Rect2` source, :ref:`RID` texture, :ref:`Vector2` topleft, :ref:`Vector2` bottomright, :ref:`NinePatchAxisMode` x_axis_mode=0, :ref:`NinePatchAxisMode` y_axis_mode=0, :ref:`bool` draw_center=true, :ref:`Color` modulate=Color( 1, 1, 1, 1 ), :ref:`RID` normal_map **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_particles` **(** :ref:`RID` item, :ref:`RID` particles, :ref:`RID` texture, :ref:`RID` normal_map **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_polygon` **(** :ref:`RID` item, :ref:`PoolVector2Array` points, :ref:`PoolColorArray` colors, :ref:`PoolVector2Array` uvs=PoolVector2Array( ), :ref:`RID` texture, :ref:`RID` normal_map, :ref:`bool` antialiased=false **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_polyline` **(** :ref:`RID` item, :ref:`PoolVector2Array` points, :ref:`PoolColorArray` colors, :ref:`float` width=1.0, :ref:`bool` antialiased=false **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_primitive` **(** :ref:`RID` item, :ref:`PoolVector2Array` points, :ref:`PoolColorArray` colors, :ref:`PoolVector2Array` uvs, :ref:`RID` texture, :ref:`float` width=1.0, :ref:`RID` normal_map **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_rect` **(** :ref:`RID` item, :ref:`Rect2` rect, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_set_transform` **(** :ref:`RID` item, :ref:`Transform2D` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_texture_rect` **(** :ref:`RID` item, :ref:`Rect2` rect, :ref:`RID` texture, :ref:`bool` tile=false, :ref:`Color` modulate=Color( 1, 1, 1, 1 ), :ref:`bool` transpose=false, :ref:`RID` normal_map **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_texture_rect_region` **(** :ref:`RID` item, :ref:`Rect2` rect, :ref:`RID` texture, :ref:`Rect2` src_rect, :ref:`Color` modulate=Color( 1, 1, 1, 1 ), :ref:`bool` transpose=false, :ref:`RID` normal_map, :ref:`bool` clip_uv=true **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_add_triangle_array` **(** :ref:`RID` item, :ref:`PoolIntArray` indices, :ref:`PoolVector2Array` points, :ref:`PoolColorArray` colors, :ref:`PoolVector2Array` uvs=PoolVector2Array( ), :ref:`PoolIntArray` bones=PoolIntArray( ), :ref:`PoolRealArray` weights=PoolRealArray( ), :ref:`RID` texture, :ref:`int` count=-1, :ref:`RID` normal_map, :ref:`bool` antialiased=false, :ref:`bool` antialiasing_use_indices=false **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_clear` **(** :ref:`RID` item **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`canvas_item_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_clip` **(** :ref:`RID` item, :ref:`bool` clip **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_copy_to_backbuffer` **(** :ref:`RID` item, :ref:`bool` enabled, :ref:`Rect2` rect **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_custom_rect` **(** :ref:`RID` item, :ref:`bool` use_custom_rect, :ref:`Rect2` rect=Rect2( 0, 0, 0, 0 ) **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_distance_field_mode` **(** :ref:`RID` item, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_draw_behind_parent` **(** :ref:`RID` item, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_draw_index` **(** :ref:`RID` item, :ref:`int` index **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_light_mask` **(** :ref:`RID` item, :ref:`int` mask **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_material` **(** :ref:`RID` item, :ref:`RID` material **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_modulate` **(** :ref:`RID` item, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_parent` **(** :ref:`RID` item, :ref:`RID` parent **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_self_modulate` **(** :ref:`RID` item, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_sort_children_by_y` **(** :ref:`RID` item, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_transform` **(** :ref:`RID` item, :ref:`Transform2D` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_use_parent_material` **(** :ref:`RID` item, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_visible` **(** :ref:`RID` item, :ref:`bool` visible **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_z_as_relative_to_parent` **(** :ref:`RID` item, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_item_set_z_index` **(** :ref:`RID` item, :ref:`int` z_index **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_attach_to_canvas` **(** :ref:`RID` light, :ref:`RID` canvas **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`canvas_light_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_occluder_attach_to_canvas` **(** :ref:`RID` occluder, :ref:`RID` canvas **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`canvas_light_occluder_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_occluder_set_enabled` **(** :ref:`RID` occluder, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_occluder_set_light_mask` **(** :ref:`RID` occluder, :ref:`int` mask **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_occluder_set_polygon` **(** :ref:`RID` occluder, :ref:`RID` polygon **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_occluder_set_transform` **(** :ref:`RID` occluder, :ref:`Transform2D` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_color` **(** :ref:`RID` light, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_enabled` **(** :ref:`RID` light, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_energy` **(** :ref:`RID` light, :ref:`float` energy **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_height` **(** :ref:`RID` light, :ref:`float` height **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_item_cull_mask` **(** :ref:`RID` light, :ref:`int` mask **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_item_shadow_cull_mask` **(** :ref:`RID` light, :ref:`int` mask **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_layer_range` **(** :ref:`RID` light, :ref:`int` min_layer, :ref:`int` max_layer **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_mode` **(** :ref:`RID` light, :ref:`CanvasLightMode` mode **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_scale` **(** :ref:`RID` light, :ref:`float` scale **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_shadow_buffer_size` **(** :ref:`RID` light, :ref:`int` size **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_shadow_color` **(** :ref:`RID` light, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_shadow_enabled` **(** :ref:`RID` light, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_shadow_filter` **(** :ref:`RID` light, :ref:`CanvasLightShadowFilter` filter **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_shadow_gradient_length` **(** :ref:`RID` light, :ref:`float` length **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_shadow_smooth` **(** :ref:`RID` light, :ref:`float` smooth **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_texture` **(** :ref:`RID` light, :ref:`RID` texture **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_texture_offset` **(** :ref:`RID` light, :ref:`Vector2` offset **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_transform` **(** :ref:`RID` light, :ref:`Transform2D` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_light_set_z_range` **(** :ref:`RID` light, :ref:`int` min_z, :ref:`int` max_z **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`canvas_occluder_polygon_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_occluder_polygon_set_cull_mode` **(** :ref:`RID` occluder_polygon, :ref:`CanvasOccluderPolygonCullMode` mode **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_occluder_polygon_set_shape` **(** :ref:`RID` occluder_polygon, :ref:`PoolVector2Array` shape, :ref:`bool` closed **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_occluder_polygon_set_shape_as_lines` **(** :ref:`RID` occluder_polygon, :ref:`PoolVector2Array` shape **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_set_item_mirroring` **(** :ref:`RID` canvas, :ref:`RID` item, :ref:`Vector2` mirroring **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`canvas_set_modulate` **(** :ref:`RID` canvas, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`directional_light_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`draw` **(** :ref:`bool` swap_buffers=true, :ref:`float` frame_step=0.0 **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`environment_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_adjustment` **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` brightness, :ref:`float` contrast, :ref:`float` saturation, :ref:`RID` ramp **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_ambient_light` **(** :ref:`RID` env, :ref:`Color` color, :ref:`float` energy=1.0, :ref:`float` sky_contibution=0.0 **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_background` **(** :ref:`RID` env, :ref:`EnvironmentBG` bg **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_bg_color` **(** :ref:`RID` env, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_bg_energy` **(** :ref:`RID` env, :ref:`float` energy **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_canvas_max_layer` **(** :ref:`RID` env, :ref:`int` max_layer **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_dof_blur_far` **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` distance, :ref:`float` transition, :ref:`float` far_amount, :ref:`EnvironmentDOFBlurQuality` quality **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_dof_blur_near` **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` distance, :ref:`float` transition, :ref:`float` far_amount, :ref:`EnvironmentDOFBlurQuality` quality **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_fog` **(** :ref:`RID` env, :ref:`bool` enable, :ref:`Color` color, :ref:`Color` sun_color, :ref:`float` sun_amount **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_fog_depth` **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` depth_begin, :ref:`float` depth_end, :ref:`float` depth_curve, :ref:`bool` transmit, :ref:`float` transmit_curve **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_fog_height` **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` min_height, :ref:`float` max_height, :ref:`float` height_curve **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_glow` **(** :ref:`RID` env, :ref:`bool` enable, :ref:`int` level_flags, :ref:`float` intensity, :ref:`float` strength, :ref:`float` bloom_threshold, :ref:`EnvironmentGlowBlendMode` blend_mode, :ref:`float` hdr_bleed_threshold, :ref:`float` hdr_bleed_scale, :ref:`float` hdr_luminance_cap, :ref:`bool` bicubic_upscale, :ref:`bool` high_quality **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_sky` **(** :ref:`RID` env, :ref:`RID` sky **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_sky_custom_fov` **(** :ref:`RID` env, :ref:`float` scale **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_sky_orientation` **(** :ref:`RID` env, :ref:`Basis` orientation **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_ssao` **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` radius, :ref:`float` intensity, :ref:`float` radius2, :ref:`float` intensity2, :ref:`float` bias, :ref:`float` light_affect, :ref:`float` ao_channel_affect, :ref:`Color` color, :ref:`EnvironmentSSAOQuality` quality, :ref:`EnvironmentSSAOBlur` blur, :ref:`float` bilateral_sharpness **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_ssr` **(** :ref:`RID` env, :ref:`bool` enable, :ref:`int` max_steps, :ref:`float` fade_in, :ref:`float` fade_out, :ref:`float` depth_tolerance, :ref:`bool` roughness **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`environment_set_tonemap` **(** :ref:`RID` env, :ref:`EnvironmentToneMapper` tone_mapper, :ref:`float` exposure, :ref:`float` white, :ref:`bool` auto_exposure, :ref:`float` min_luminance, :ref:`float` max_luminance, :ref:`float` auto_exp_speed, :ref:`float` auto_exp_grey **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`finish` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`force_draw` **(** :ref:`bool` swap_buffers=true, :ref:`float` frame_step=0.0 **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`force_sync` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`free_rid` **(** :ref:`RID` rid **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_render_info` **(** :ref:`RenderInfo` info **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`get_test_cube` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`get_test_texture` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_video_adapter_name` **(** **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_video_adapter_vendor` **(** **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`get_white_texture` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`gi_probe_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`gi_probe_get_bias` **(** :ref:`RID` probe **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`AABB` | :ref:`gi_probe_get_bounds` **(** :ref:`RID` probe **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`gi_probe_get_cell_size` **(** :ref:`RID` probe **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PoolIntArray` | :ref:`gi_probe_get_dynamic_data` **(** :ref:`RID` probe **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`gi_probe_get_dynamic_range` **(** :ref:`RID` probe **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`gi_probe_get_energy` **(** :ref:`RID` probe **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`gi_probe_get_normal_bias` **(** :ref:`RID` probe **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`gi_probe_get_propagation` **(** :ref:`RID` probe **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Transform` | :ref:`gi_probe_get_to_cell_xform` **(** :ref:`RID` probe **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`gi_probe_is_compressed` **(** :ref:`RID` probe **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`gi_probe_is_interior` **(** :ref:`RID` probe **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`gi_probe_set_bias` **(** :ref:`RID` probe, :ref:`float` bias **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`gi_probe_set_bounds` **(** :ref:`RID` probe, :ref:`AABB` bounds **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`gi_probe_set_cell_size` **(** :ref:`RID` probe, :ref:`float` range **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`gi_probe_set_compress` **(** :ref:`RID` probe, :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`gi_probe_set_dynamic_data` **(** :ref:`RID` probe, :ref:`PoolIntArray` data **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`gi_probe_set_dynamic_range` **(** :ref:`RID` probe, :ref:`int` range **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`gi_probe_set_energy` **(** :ref:`RID` probe, :ref:`float` energy **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`gi_probe_set_interior` **(** :ref:`RID` probe, :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`gi_probe_set_normal_bias` **(** :ref:`RID` probe, :ref:`float` bias **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`gi_probe_set_propagation` **(** :ref:`RID` probe, :ref:`float` propagation **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`gi_probe_set_to_cell_xform` **(** :ref:`RID` probe, :ref:`Transform` xform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_changed` **(** :ref:`ChangedPriority` queried_priority=0 **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_feature` **(** :ref:`Features` feature **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_os_feature` **(** :ref:`String` feature **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`immediate_begin` **(** :ref:`RID` immediate, :ref:`PrimitiveType` primitive, :ref:`RID` texture **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`immediate_clear` **(** :ref:`RID` immediate **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`immediate_color` **(** :ref:`RID` immediate, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`immediate_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`immediate_end` **(** :ref:`RID` immediate **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`immediate_get_material` **(** :ref:`RID` immediate **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`immediate_normal` **(** :ref:`RID` immediate, :ref:`Vector3` normal **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`immediate_set_material` **(** :ref:`RID` immediate, :ref:`RID` material **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`immediate_tangent` **(** :ref:`RID` immediate, :ref:`Plane` tangent **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`immediate_uv` **(** :ref:`RID` immediate, :ref:`Vector2` tex_uv **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`immediate_uv2` **(** :ref:`RID` immediate, :ref:`Vector2` tex_uv **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`immediate_vertex` **(** :ref:`RID` immediate, :ref:`Vector3` vertex **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`immediate_vertex_2d` **(** :ref:`RID` immediate, :ref:`Vector2` vertex **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`init` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_attach_object_instance_id` **(** :ref:`RID` instance, :ref:`int` id **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_attach_skeleton` **(** :ref:`RID` instance, :ref:`RID` skeleton **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`instance_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`instance_create2` **(** :ref:`RID` base, :ref:`RID` scenario **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_geometry_set_as_instance_lod` **(** :ref:`RID` instance, :ref:`RID` as_lod_of_instance **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_geometry_set_cast_shadows_setting` **(** :ref:`RID` instance, :ref:`ShadowCastingSetting` shadow_casting_setting **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_geometry_set_draw_range` **(** :ref:`RID` instance, :ref:`float` min, :ref:`float` max, :ref:`float` min_margin, :ref:`float` max_margin **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_geometry_set_flag` **(** :ref:`RID` instance, :ref:`InstanceFlags` flag, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_geometry_set_material_overlay` **(** :ref:`RID` instance, :ref:`RID` material **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_geometry_set_material_override` **(** :ref:`RID` instance, :ref:`RID` material **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_set_base` **(** :ref:`RID` instance, :ref:`RID` base **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_set_blend_shape_weight` **(** :ref:`RID` instance, :ref:`int` shape, :ref:`float` weight **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_set_custom_aabb` **(** :ref:`RID` instance, :ref:`AABB` aabb **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_set_exterior` **(** :ref:`RID` instance, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_set_extra_visibility_margin` **(** :ref:`RID` instance, :ref:`float` margin **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_set_layer_mask` **(** :ref:`RID` instance, :ref:`int` mask **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_set_scenario` **(** :ref:`RID` instance, :ref:`RID` scenario **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_set_surface_material` **(** :ref:`RID` instance, :ref:`int` surface, :ref:`RID` material **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_set_transform` **(** :ref:`RID` instance, :ref:`Transform` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_set_use_lightmap` **(** :ref:`RID` instance, :ref:`RID` lightmap_instance, :ref:`RID` lightmap, :ref:`int` lightmap_slice=-1, :ref:`Rect2` lightmap_uv_rect=Rect2( 0, 0, 1, 1 ) **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`instance_set_visible` **(** :ref:`RID` instance, :ref:`bool` visible **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`instances_cull_aabb` **(** :ref:`AABB` aabb, :ref:`RID` scenario **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`instances_cull_convex` **(** :ref:`Array` convex, :ref:`RID` scenario **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`instances_cull_ray` **(** :ref:`Vector3` from, :ref:`Vector3` to, :ref:`RID` scenario **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_directional_set_blend_splits` **(** :ref:`RID` light, :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_directional_set_shadow_depth_range_mode` **(** :ref:`RID` light, :ref:`LightDirectionalShadowDepthRangeMode` range_mode **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_directional_set_shadow_mode` **(** :ref:`RID` light, :ref:`LightDirectionalShadowMode` mode **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_omni_set_shadow_detail` **(** :ref:`RID` light, :ref:`LightOmniShadowDetail` detail **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_omni_set_shadow_mode` **(** :ref:`RID` light, :ref:`LightOmniShadowMode` mode **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_set_bake_mode` **(** :ref:`RID` light, :ref:`LightBakeMode` bake_mode **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_set_color` **(** :ref:`RID` light, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_set_cull_mask` **(** :ref:`RID` light, :ref:`int` mask **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_set_negative` **(** :ref:`RID` light, :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_set_param` **(** :ref:`RID` light, :ref:`LightParam` param, :ref:`float` value **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_set_projector` **(** :ref:`RID` light, :ref:`RID` texture **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_set_reverse_cull_face_mode` **(** :ref:`RID` light, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_set_shadow` **(** :ref:`RID` light, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_set_shadow_color` **(** :ref:`RID` light, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`light_set_use_gi` **(** :ref:`RID` light, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`lightmap_capture_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`AABB` | :ref:`lightmap_capture_get_bounds` **(** :ref:`RID` capture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`lightmap_capture_get_energy` **(** :ref:`RID` capture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PoolByteArray` | :ref:`lightmap_capture_get_octree` **(** :ref:`RID` capture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`lightmap_capture_get_octree_cell_subdiv` **(** :ref:`RID` capture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Transform` | :ref:`lightmap_capture_get_octree_cell_transform` **(** :ref:`RID` capture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`lightmap_capture_is_interior` **(** :ref:`RID` capture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`lightmap_capture_set_bounds` **(** :ref:`RID` capture, :ref:`AABB` bounds **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`lightmap_capture_set_energy` **(** :ref:`RID` capture, :ref:`float` energy **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`lightmap_capture_set_interior` **(** :ref:`RID` capture, :ref:`bool` interior **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`lightmap_capture_set_octree` **(** :ref:`RID` capture, :ref:`PoolByteArray` octree **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`lightmap_capture_set_octree_cell_subdiv` **(** :ref:`RID` capture, :ref:`int` subdiv **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`lightmap_capture_set_octree_cell_transform` **(** :ref:`RID` capture, :ref:`Transform` xform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`make_sphere_mesh` **(** :ref:`int` latitudes, :ref:`int` longitudes, :ref:`float` radius **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`material_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Variant` | :ref:`material_get_param` **(** :ref:`RID` material, :ref:`String` parameter **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Variant` | :ref:`material_get_param_default` **(** :ref:`RID` material, :ref:`String` parameter **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`material_get_shader` **(** :ref:`RID` shader_material **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`material_set_line_width` **(** :ref:`RID` material, :ref:`float` width **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`material_set_next_pass` **(** :ref:`RID` material, :ref:`RID` next_material **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`material_set_param` **(** :ref:`RID` material, :ref:`String` parameter, :ref:`Variant` value **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`material_set_render_priority` **(** :ref:`RID` material, :ref:`int` priority **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`material_set_shader` **(** :ref:`RID` shader_material, :ref:`RID` shader **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`mesh_add_surface_from_arrays` **(** :ref:`RID` mesh, :ref:`PrimitiveType` primitive, :ref:`Array` arrays, :ref:`Array` blend_shapes=[ ], :ref:`int` compress_format=2194432 **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`mesh_clear` **(** :ref:`RID` mesh **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`mesh_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`mesh_get_blend_shape_count` **(** :ref:`RID` mesh **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`BlendShapeMode` | :ref:`mesh_get_blend_shape_mode` **(** :ref:`RID` mesh **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`AABB` | :ref:`mesh_get_custom_aabb` **(** :ref:`RID` mesh **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`mesh_get_surface_count` **(** :ref:`RID` mesh **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`mesh_remove_surface` **(** :ref:`RID` mesh, :ref:`int` index **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`mesh_set_blend_shape_count` **(** :ref:`RID` mesh, :ref:`int` amount **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`mesh_set_blend_shape_mode` **(** :ref:`RID` mesh, :ref:`BlendShapeMode` mode **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`mesh_set_custom_aabb` **(** :ref:`RID` mesh, :ref:`AABB` aabb **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`AABB` | :ref:`mesh_surface_get_aabb` **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PoolByteArray` | :ref:`mesh_surface_get_array` **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`mesh_surface_get_array_index_len` **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`mesh_surface_get_array_len` **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`mesh_surface_get_arrays` **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`mesh_surface_get_blend_shape_arrays` **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`mesh_surface_get_format` **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`mesh_surface_get_format_offset` **(** :ref:`int` format, :ref:`int` vertex_len, :ref:`int` index_len, :ref:`int` array_index **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`mesh_surface_get_format_stride` **(** :ref:`int` format, :ref:`int` vertex_len, :ref:`int` index_len, :ref:`int` array_index **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PoolByteArray` | :ref:`mesh_surface_get_index_array` **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`mesh_surface_get_material` **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PrimitiveType` | :ref:`mesh_surface_get_primitive_type` **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`mesh_surface_get_skeleton_aabb` **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`mesh_surface_set_material` **(** :ref:`RID` mesh, :ref:`int` surface, :ref:`RID` material **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`mesh_surface_update_region` **(** :ref:`RID` mesh, :ref:`int` surface, :ref:`int` offset, :ref:`PoolByteArray` data **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`multimesh_allocate` **(** :ref:`RID` multimesh, :ref:`int` instances, :ref:`MultimeshTransformFormat` transform_format, :ref:`MultimeshColorFormat` color_format, :ref:`MultimeshCustomDataFormat` custom_data_format=0 **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`multimesh_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`AABB` | :ref:`multimesh_get_aabb` **(** :ref:`RID` multimesh **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`multimesh_get_instance_count` **(** :ref:`RID` multimesh **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`multimesh_get_mesh` **(** :ref:`RID` multimesh **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`multimesh_get_visible_instances` **(** :ref:`RID` multimesh **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`multimesh_instance_get_color` **(** :ref:`RID` multimesh, :ref:`int` index **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`multimesh_instance_get_custom_data` **(** :ref:`RID` multimesh, :ref:`int` index **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Transform` | :ref:`multimesh_instance_get_transform` **(** :ref:`RID` multimesh, :ref:`int` index **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Transform2D` | :ref:`multimesh_instance_get_transform_2d` **(** :ref:`RID` multimesh, :ref:`int` index **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`multimesh_instance_set_color` **(** :ref:`RID` multimesh, :ref:`int` index, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`multimesh_instance_set_custom_data` **(** :ref:`RID` multimesh, :ref:`int` index, :ref:`Color` custom_data **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`multimesh_instance_set_transform` **(** :ref:`RID` multimesh, :ref:`int` index, :ref:`Transform` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`multimesh_instance_set_transform_2d` **(** :ref:`RID` multimesh, :ref:`int` index, :ref:`Transform2D` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`multimesh_set_as_bulk_array` **(** :ref:`RID` multimesh, :ref:`PoolRealArray` array **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`multimesh_set_mesh` **(** :ref:`RID` multimesh, :ref:`RID` mesh **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`multimesh_set_visible_instances` **(** :ref:`RID` multimesh, :ref:`int` visible **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`omni_light_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`particles_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`AABB` | :ref:`particles_get_current_aabb` **(** :ref:`RID` particles **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`particles_get_emitting` **(** :ref:`RID` particles **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`particles_is_inactive` **(** :ref:`RID` particles **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_request_process` **(** :ref:`RID` particles **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_restart` **(** :ref:`RID` particles **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_amount` **(** :ref:`RID` particles, :ref:`int` amount **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_custom_aabb` **(** :ref:`RID` particles, :ref:`AABB` aabb **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_draw_order` **(** :ref:`RID` particles, :ref:`ParticlesDrawOrder` order **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_draw_pass_mesh` **(** :ref:`RID` particles, :ref:`int` pass, :ref:`RID` mesh **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_draw_passes` **(** :ref:`RID` particles, :ref:`int` count **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_emission_transform` **(** :ref:`RID` particles, :ref:`Transform` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_emitting` **(** :ref:`RID` particles, :ref:`bool` emitting **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_explosiveness_ratio` **(** :ref:`RID` particles, :ref:`float` ratio **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_fixed_fps` **(** :ref:`RID` particles, :ref:`int` fps **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_fractional_delta` **(** :ref:`RID` particles, :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_lifetime` **(** :ref:`RID` particles, :ref:`float` lifetime **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_one_shot` **(** :ref:`RID` particles, :ref:`bool` one_shot **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_pre_process_time` **(** :ref:`RID` particles, :ref:`float` time **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_process_material` **(** :ref:`RID` particles, :ref:`RID` material **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_randomness_ratio` **(** :ref:`RID` particles, :ref:`float` ratio **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_speed_scale` **(** :ref:`RID` particles, :ref:`float` scale **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`particles_set_use_local_coordinates` **(** :ref:`RID` particles, :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`reflection_probe_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_as_interior` **(** :ref:`RID` probe, :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_cull_mask` **(** :ref:`RID` probe, :ref:`int` layers **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_enable_box_projection` **(** :ref:`RID` probe, :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_enable_shadows` **(** :ref:`RID` probe, :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_extents` **(** :ref:`RID` probe, :ref:`Vector3` extents **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_intensity` **(** :ref:`RID` probe, :ref:`float` intensity **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_interior_ambient` **(** :ref:`RID` probe, :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_interior_ambient_energy` **(** :ref:`RID` probe, :ref:`float` energy **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_interior_ambient_probe_contribution` **(** :ref:`RID` probe, :ref:`float` contrib **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_max_distance` **(** :ref:`RID` probe, :ref:`float` distance **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_origin_offset` **(** :ref:`RID` probe, :ref:`Vector3` offset **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`reflection_probe_set_update_mode` **(** :ref:`RID` probe, :ref:`ReflectionProbeUpdateMode` mode **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`request_frame_drawn_callback` **(** :ref:`Object` where, :ref:`String` method, :ref:`Variant` userdata **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`scenario_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`scenario_set_debug` **(** :ref:`RID` scenario, :ref:`ScenarioDebugMode` debug_mode **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`scenario_set_environment` **(** :ref:`RID` scenario, :ref:`RID` environment **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`scenario_set_fallback_environment` **(** :ref:`RID` scenario, :ref:`RID` environment **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`scenario_set_reflection_atlas_size` **(** :ref:`RID` scenario, :ref:`int` size, :ref:`int` subdiv **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_boot_image` **(** :ref:`Image` image, :ref:`Color` color, :ref:`bool` scale, :ref:`bool` use_filter=true **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_debug_generate_wireframes` **(** :ref:`bool` generate **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_default_clear_color` **(** :ref:`Color` color **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_shader_async_hidden_forbidden` **(** :ref:`bool` forbidden **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_shader_time_scale` **(** :ref:`float` scale **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_use_occlusion_culling` **(** :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`shader_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`shader_get_code` **(** :ref:`RID` shader **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`shader_get_default_texture_param` **(** :ref:`RID` shader, :ref:`String` name **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`shader_get_param_list` **(** :ref:`RID` shader **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`shader_set_code` **(** :ref:`RID` shader, :ref:`String` code **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`shader_set_default_texture_param` **(** :ref:`RID` shader, :ref:`String` name, :ref:`RID` texture **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`skeleton_allocate` **(** :ref:`RID` skeleton, :ref:`int` bones, :ref:`bool` is_2d_skeleton=false **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Transform` | :ref:`skeleton_bone_get_transform` **(** :ref:`RID` skeleton, :ref:`int` bone **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Transform2D` | :ref:`skeleton_bone_get_transform_2d` **(** :ref:`RID` skeleton, :ref:`int` bone **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`skeleton_bone_set_transform` **(** :ref:`RID` skeleton, :ref:`int` bone, :ref:`Transform` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`skeleton_bone_set_transform_2d` **(** :ref:`RID` skeleton, :ref:`int` bone, :ref:`Transform2D` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`skeleton_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`skeleton_get_bone_count` **(** :ref:`RID` skeleton **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`sky_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`sky_set_texture` **(** :ref:`RID` sky, :ref:`RID` cube_map, :ref:`int` radiance_size **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`spot_light_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`sync` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`texture_allocate` **(** :ref:`RID` texture, :ref:`int` width, :ref:`int` height, :ref:`int` depth_3d, :ref:`Format` format, :ref:`TextureType` type, :ref:`int` flags=7 **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`texture_bind` **(** :ref:`RID` texture, :ref:`int` number **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`texture_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`texture_create_from_image` **(** :ref:`Image` image, :ref:`int` flags=7 **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`texture_debug_usage` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Image` | :ref:`texture_get_data` **(** :ref:`RID` texture, :ref:`int` cube_side=0 **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`texture_get_depth` **(** :ref:`RID` texture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`texture_get_flags` **(** :ref:`RID` texture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Format` | :ref:`texture_get_format` **(** :ref:`RID` texture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`texture_get_height` **(** :ref:`RID` texture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`texture_get_path` **(** :ref:`RID` texture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`texture_get_texid` **(** :ref:`RID` texture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`TextureType` | :ref:`texture_get_type` **(** :ref:`RID` texture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`texture_get_width` **(** :ref:`RID` texture **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`texture_set_data` **(** :ref:`RID` texture, :ref:`Image` image, :ref:`int` layer=0 **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`texture_set_data_partial` **(** :ref:`RID` texture, :ref:`Image` image, :ref:`int` src_x, :ref:`int` src_y, :ref:`int` src_w, :ref:`int` src_h, :ref:`int` dst_x, :ref:`int` dst_y, :ref:`int` dst_mip, :ref:`int` layer=0 **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`texture_set_flags` **(** :ref:`RID` texture, :ref:`int` flags **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`texture_set_path` **(** :ref:`RID` texture, :ref:`String` path **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`texture_set_proxy` **(** :ref:`RID` proxy, :ref:`RID` base **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`texture_set_shrink_all_x2_on_set_data` **(** :ref:`bool` shrink **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`texture_set_size_override` **(** :ref:`RID` texture, :ref:`int` width, :ref:`int` height, :ref:`int` depth **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`textures_keep_original` **(** :ref:`bool` enable **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_attach_camera` **(** :ref:`RID` viewport, :ref:`RID` camera **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_attach_canvas` **(** :ref:`RID` viewport, :ref:`RID` canvas **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_attach_to_screen` **(** :ref:`RID` viewport, :ref:`Rect2` rect=Rect2( 0, 0, 0, 0 ), :ref:`int` screen=0 **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`viewport_create` **(** **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_detach` **(** :ref:`RID` viewport **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`viewport_get_render_info` **(** :ref:`RID` viewport, :ref:`ViewportRenderInfo` info **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`viewport_get_texture` **(** :ref:`RID` viewport **)** |const| | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_remove_canvas` **(** :ref:`RID` viewport, :ref:`RID` canvas **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_active` **(** :ref:`RID` viewport, :ref:`bool` active **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_canvas_stacking` **(** :ref:`RID` viewport, :ref:`RID` canvas, :ref:`int` layer, :ref:`int` sublayer **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_canvas_transform` **(** :ref:`RID` viewport, :ref:`RID` canvas, :ref:`Transform2D` offset **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_clear_mode` **(** :ref:`RID` viewport, :ref:`ViewportClearMode` clear_mode **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_debug_draw` **(** :ref:`RID` viewport, :ref:`ViewportDebugDraw` draw **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_disable_3d` **(** :ref:`RID` viewport, :ref:`bool` disabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_disable_environment` **(** :ref:`RID` viewport, :ref:`bool` disabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_global_canvas_transform` **(** :ref:`RID` viewport, :ref:`Transform2D` transform **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_hdr` **(** :ref:`RID` viewport, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_hide_canvas` **(** :ref:`RID` viewport, :ref:`bool` hidden **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_hide_scenario` **(** :ref:`RID` viewport, :ref:`bool` hidden **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_msaa` **(** :ref:`RID` viewport, :ref:`ViewportMSAA` msaa **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_parent_viewport` **(** :ref:`RID` viewport, :ref:`RID` parent_viewport **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_render_direct_to_screen` **(** :ref:`RID` viewport, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_scenario` **(** :ref:`RID` viewport, :ref:`RID` scenario **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_shadow_atlas_quadrant_subdivision` **(** :ref:`RID` viewport, :ref:`int` quadrant, :ref:`int` subdivision **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_shadow_atlas_size` **(** :ref:`RID` viewport, :ref:`int` size **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_sharpen_intensity` **(** :ref:`RID` viewport, :ref:`float` intensity **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_size` **(** :ref:`RID` viewport, :ref:`int` width, :ref:`int` height **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_transparent_background` **(** :ref:`RID` viewport, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_update_mode` **(** :ref:`RID` viewport, :ref:`ViewportUpdateMode` update_mode **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_usage` **(** :ref:`RID` viewport, :ref:`ViewportUsage` usage **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_use_32_bpc_depth` **(** :ref:`RID` viewport, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_use_arvr` **(** :ref:`RID` viewport, :ref:`bool` use_arvr **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_use_debanding` **(** :ref:`RID` viewport, :ref:`bool` debanding **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_use_fxaa` **(** :ref:`RID` viewport, :ref:`bool` fxaa **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`viewport_set_vflip` **(** :ref:`RID` viewport, :ref:`bool` enabled **)** | +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Signals ------- .. _class_VisualServer_signal_frame_post_draw: .. rst-class:: classref-signal **frame_post_draw** **(** **)** Emitted at the end of the frame, after the VisualServer has finished updating all the Viewports. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_signal_frame_pre_draw: .. rst-class:: classref-signal **frame_pre_draw** **(** **)** Emitted at the beginning of the frame, before the VisualServer updates all the Viewports. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Enumerations ------------ .. _enum_VisualServer_CubeMapSide: .. rst-class:: classref-enumeration enum **CubeMapSide**: .. _class_VisualServer_constant_CUBEMAP_LEFT: .. rst-class:: classref-enumeration-constant :ref:`CubeMapSide` **CUBEMAP_LEFT** = ``0`` Marks the left side of a cubemap. .. _class_VisualServer_constant_CUBEMAP_RIGHT: .. rst-class:: classref-enumeration-constant :ref:`CubeMapSide` **CUBEMAP_RIGHT** = ``1`` Marks the right side of a cubemap. .. _class_VisualServer_constant_CUBEMAP_BOTTOM: .. rst-class:: classref-enumeration-constant :ref:`CubeMapSide` **CUBEMAP_BOTTOM** = ``2`` Marks the bottom side of a cubemap. .. _class_VisualServer_constant_CUBEMAP_TOP: .. rst-class:: classref-enumeration-constant :ref:`CubeMapSide` **CUBEMAP_TOP** = ``3`` Marks the top side of a cubemap. .. _class_VisualServer_constant_CUBEMAP_FRONT: .. rst-class:: classref-enumeration-constant :ref:`CubeMapSide` **CUBEMAP_FRONT** = ``4`` Marks the front side of a cubemap. .. _class_VisualServer_constant_CUBEMAP_BACK: .. rst-class:: classref-enumeration-constant :ref:`CubeMapSide` **CUBEMAP_BACK** = ``5`` Marks the back side of a cubemap. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_TextureType: .. rst-class:: classref-enumeration enum **TextureType**: .. _class_VisualServer_constant_TEXTURE_TYPE_2D: .. rst-class:: classref-enumeration-constant :ref:`TextureType` **TEXTURE_TYPE_2D** = ``0`` Normal texture with 2 dimensions, width and height. .. _class_VisualServer_constant_TEXTURE_TYPE_CUBEMAP: .. rst-class:: classref-enumeration-constant :ref:`TextureType` **TEXTURE_TYPE_CUBEMAP** = ``2`` Texture made up of six faces, can be looked up with a ``vec3`` in shader. .. _class_VisualServer_constant_TEXTURE_TYPE_2D_ARRAY: .. rst-class:: classref-enumeration-constant :ref:`TextureType` **TEXTURE_TYPE_2D_ARRAY** = ``3`` An array of 2-dimensional textures. .. _class_VisualServer_constant_TEXTURE_TYPE_3D: .. rst-class:: classref-enumeration-constant :ref:`TextureType` **TEXTURE_TYPE_3D** = ``4`` A 3-dimensional texture with width, height, and depth. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_TextureFlags: .. rst-class:: classref-enumeration enum **TextureFlags**: .. _class_VisualServer_constant_TEXTURE_FLAG_MIPMAPS: .. rst-class:: classref-enumeration-constant :ref:`TextureFlags` **TEXTURE_FLAG_MIPMAPS** = ``1`` Generates mipmaps, which are smaller versions of the same texture to use when zoomed out, keeping the aspect ratio. .. _class_VisualServer_constant_TEXTURE_FLAG_REPEAT: .. rst-class:: classref-enumeration-constant :ref:`TextureFlags` **TEXTURE_FLAG_REPEAT** = ``2`` Repeats the texture (instead of clamp to edge). .. _class_VisualServer_constant_TEXTURE_FLAG_FILTER: .. rst-class:: classref-enumeration-constant :ref:`TextureFlags` **TEXTURE_FLAG_FILTER** = ``4`` Uses a magnifying filter, to enable smooth zooming in of the texture. .. _class_VisualServer_constant_TEXTURE_FLAG_ANISOTROPIC_FILTER: .. rst-class:: classref-enumeration-constant :ref:`TextureFlags` **TEXTURE_FLAG_ANISOTROPIC_FILTER** = ``8`` Uses anisotropic mipmap filtering. Generates smaller versions of the same texture with different aspect ratios. This results in better-looking textures when viewed from oblique angles. .. _class_VisualServer_constant_TEXTURE_FLAG_CONVERT_TO_LINEAR: .. rst-class:: classref-enumeration-constant :ref:`TextureFlags` **TEXTURE_FLAG_CONVERT_TO_LINEAR** = ``16`` Converts the texture to the sRGB color space. .. _class_VisualServer_constant_TEXTURE_FLAG_MIRRORED_REPEAT: .. rst-class:: classref-enumeration-constant :ref:`TextureFlags` **TEXTURE_FLAG_MIRRORED_REPEAT** = ``32`` Repeats the texture with alternate sections mirrored. .. _class_VisualServer_constant_TEXTURE_FLAG_USED_FOR_STREAMING: .. rst-class:: classref-enumeration-constant :ref:`TextureFlags` **TEXTURE_FLAG_USED_FOR_STREAMING** = ``2048`` Texture is a video surface. .. _class_VisualServer_constant_TEXTURE_FLAGS_DEFAULT: .. rst-class:: classref-enumeration-constant :ref:`TextureFlags` **TEXTURE_FLAGS_DEFAULT** = ``7`` Default flags. :ref:`TEXTURE_FLAG_MIPMAPS`, :ref:`TEXTURE_FLAG_REPEAT` and :ref:`TEXTURE_FLAG_FILTER` are enabled. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ShaderMode: .. rst-class:: classref-enumeration enum **ShaderMode**: .. _class_VisualServer_constant_SHADER_SPATIAL: .. rst-class:: classref-enumeration-constant :ref:`ShaderMode` **SHADER_SPATIAL** = ``0`` Shader is a 3D shader. .. _class_VisualServer_constant_SHADER_CANVAS_ITEM: .. rst-class:: classref-enumeration-constant :ref:`ShaderMode` **SHADER_CANVAS_ITEM** = ``1`` Shader is a 2D shader. .. _class_VisualServer_constant_SHADER_PARTICLES: .. rst-class:: classref-enumeration-constant :ref:`ShaderMode` **SHADER_PARTICLES** = ``2`` Shader is a particle shader. .. _class_VisualServer_constant_SHADER_MAX: .. rst-class:: classref-enumeration-constant :ref:`ShaderMode` **SHADER_MAX** = ``3`` Represents the size of the :ref:`ShaderMode` enum. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ArrayType: .. rst-class:: classref-enumeration enum **ArrayType**: .. _class_VisualServer_constant_ARRAY_VERTEX: .. rst-class:: classref-enumeration-constant :ref:`ArrayType` **ARRAY_VERTEX** = ``0`` Array is a vertex array. .. _class_VisualServer_constant_ARRAY_NORMAL: .. rst-class:: classref-enumeration-constant :ref:`ArrayType` **ARRAY_NORMAL** = ``1`` Array is a normal array. .. _class_VisualServer_constant_ARRAY_TANGENT: .. rst-class:: classref-enumeration-constant :ref:`ArrayType` **ARRAY_TANGENT** = ``2`` Array is a tangent array. .. _class_VisualServer_constant_ARRAY_COLOR: .. rst-class:: classref-enumeration-constant :ref:`ArrayType` **ARRAY_COLOR** = ``3`` Array is a color array. .. _class_VisualServer_constant_ARRAY_TEX_UV: .. rst-class:: classref-enumeration-constant :ref:`ArrayType` **ARRAY_TEX_UV** = ``4`` Array is an UV coordinates array. .. _class_VisualServer_constant_ARRAY_TEX_UV2: .. rst-class:: classref-enumeration-constant :ref:`ArrayType` **ARRAY_TEX_UV2** = ``5`` Array is an UV coordinates array for the second UV coordinates. .. _class_VisualServer_constant_ARRAY_BONES: .. rst-class:: classref-enumeration-constant :ref:`ArrayType` **ARRAY_BONES** = ``6`` Array contains bone information. .. _class_VisualServer_constant_ARRAY_WEIGHTS: .. rst-class:: classref-enumeration-constant :ref:`ArrayType` **ARRAY_WEIGHTS** = ``7`` Array is weight information. .. _class_VisualServer_constant_ARRAY_INDEX: .. rst-class:: classref-enumeration-constant :ref:`ArrayType` **ARRAY_INDEX** = ``8`` Array is index array. .. _class_VisualServer_constant_ARRAY_MAX: .. rst-class:: classref-enumeration-constant :ref:`ArrayType` **ARRAY_MAX** = ``9`` Represents the size of the :ref:`ArrayType` enum. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ArrayFormat: .. rst-class:: classref-enumeration enum **ArrayFormat**: .. _class_VisualServer_constant_ARRAY_FORMAT_VERTEX: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FORMAT_VERTEX** = ``1`` Flag used to mark a vertex array. .. _class_VisualServer_constant_ARRAY_FORMAT_NORMAL: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FORMAT_NORMAL** = ``2`` Flag used to mark a normal array. .. _class_VisualServer_constant_ARRAY_FORMAT_TANGENT: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FORMAT_TANGENT** = ``4`` Flag used to mark a tangent array. .. _class_VisualServer_constant_ARRAY_FORMAT_COLOR: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FORMAT_COLOR** = ``8`` Flag used to mark a color array. .. _class_VisualServer_constant_ARRAY_FORMAT_TEX_UV: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FORMAT_TEX_UV** = ``16`` Flag used to mark an UV coordinates array. .. _class_VisualServer_constant_ARRAY_FORMAT_TEX_UV2: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FORMAT_TEX_UV2** = ``32`` Flag used to mark an UV coordinates array for the second UV coordinates. .. _class_VisualServer_constant_ARRAY_FORMAT_BONES: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FORMAT_BONES** = ``64`` Flag used to mark a bone information array. .. _class_VisualServer_constant_ARRAY_FORMAT_WEIGHTS: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FORMAT_WEIGHTS** = ``128`` Flag used to mark a weights array. .. _class_VisualServer_constant_ARRAY_FORMAT_INDEX: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FORMAT_INDEX** = ``256`` Flag used to mark an index array. .. _class_VisualServer_constant_ARRAY_COMPRESS_VERTEX: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_COMPRESS_VERTEX** = ``512`` Flag used to mark a compressed (half float) vertex array. .. _class_VisualServer_constant_ARRAY_COMPRESS_NORMAL: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_COMPRESS_NORMAL** = ``1024`` Flag used to mark a compressed (half float) normal array. .. _class_VisualServer_constant_ARRAY_COMPRESS_TANGENT: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_COMPRESS_TANGENT** = ``2048`` Flag used to mark a compressed (half float) tangent array. .. _class_VisualServer_constant_ARRAY_COMPRESS_COLOR: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_COMPRESS_COLOR** = ``4096`` Flag used to mark a compressed (half float) color array. .. _class_VisualServer_constant_ARRAY_COMPRESS_TEX_UV: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_COMPRESS_TEX_UV** = ``8192`` Flag used to mark a compressed (half float) UV coordinates array. .. _class_VisualServer_constant_ARRAY_COMPRESS_TEX_UV2: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_COMPRESS_TEX_UV2** = ``16384`` Flag used to mark a compressed (half float) UV coordinates array for the second UV coordinates. .. _class_VisualServer_constant_ARRAY_COMPRESS_BONES: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_COMPRESS_BONES** = ``32768`` Flag used to mark a compressed bone array. .. _class_VisualServer_constant_ARRAY_COMPRESS_WEIGHTS: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_COMPRESS_WEIGHTS** = ``65536`` Flag used to mark a compressed (half float) weight array. .. _class_VisualServer_constant_ARRAY_COMPRESS_INDEX: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_COMPRESS_INDEX** = ``131072`` Flag used to mark a compressed index array. .. _class_VisualServer_constant_ARRAY_FLAG_USE_2D_VERTICES: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FLAG_USE_2D_VERTICES** = ``262144`` Flag used to mark that the array contains 2D vertices. .. _class_VisualServer_constant_ARRAY_FLAG_USE_16_BIT_BONES: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FLAG_USE_16_BIT_BONES** = ``524288`` Flag used to mark that the array uses 16-bit bones instead of 8-bit. .. _class_VisualServer_constant_ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION** = ``2097152`` Flag used to mark that the array uses an octahedral representation of normal and tangent vectors rather than cartesian. .. _class_VisualServer_constant_ARRAY_COMPRESS_DEFAULT: .. rst-class:: classref-enumeration-constant :ref:`ArrayFormat` **ARRAY_COMPRESS_DEFAULT** = ``2194432`` Used to set flags :ref:`ARRAY_COMPRESS_NORMAL`, :ref:`ARRAY_COMPRESS_TANGENT`, :ref:`ARRAY_COMPRESS_COLOR`, :ref:`ARRAY_COMPRESS_TEX_UV`, :ref:`ARRAY_COMPRESS_TEX_UV2`, :ref:`ARRAY_COMPRESS_WEIGHTS`, and :ref:`ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION` quickly. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_PrimitiveType: .. rst-class:: classref-enumeration enum **PrimitiveType**: .. _class_VisualServer_constant_PRIMITIVE_POINTS: .. rst-class:: classref-enumeration-constant :ref:`PrimitiveType` **PRIMITIVE_POINTS** = ``0`` Primitive to draw consists of points. .. _class_VisualServer_constant_PRIMITIVE_LINES: .. rst-class:: classref-enumeration-constant :ref:`PrimitiveType` **PRIMITIVE_LINES** = ``1`` Primitive to draw consists of lines. .. _class_VisualServer_constant_PRIMITIVE_LINE_STRIP: .. rst-class:: classref-enumeration-constant :ref:`PrimitiveType` **PRIMITIVE_LINE_STRIP** = ``2`` Primitive to draw consists of a line strip from start to end. .. _class_VisualServer_constant_PRIMITIVE_LINE_LOOP: .. rst-class:: classref-enumeration-constant :ref:`PrimitiveType` **PRIMITIVE_LINE_LOOP** = ``3`` Primitive to draw consists of a line loop (a line strip with a line between the last and the first vertex). .. _class_VisualServer_constant_PRIMITIVE_TRIANGLES: .. rst-class:: classref-enumeration-constant :ref:`PrimitiveType` **PRIMITIVE_TRIANGLES** = ``4`` Primitive to draw consists of triangles. .. _class_VisualServer_constant_PRIMITIVE_TRIANGLE_STRIP: .. rst-class:: classref-enumeration-constant :ref:`PrimitiveType` **PRIMITIVE_TRIANGLE_STRIP** = ``5`` Primitive to draw consists of a triangle strip (the last 3 vertices are always combined to make a triangle). .. _class_VisualServer_constant_PRIMITIVE_TRIANGLE_FAN: .. rst-class:: classref-enumeration-constant :ref:`PrimitiveType` **PRIMITIVE_TRIANGLE_FAN** = ``6`` Primitive to draw consists of a triangle strip (the last 2 vertices are always combined with the first to make a triangle). .. _class_VisualServer_constant_PRIMITIVE_MAX: .. rst-class:: classref-enumeration-constant :ref:`PrimitiveType` **PRIMITIVE_MAX** = ``7`` Represents the size of the :ref:`PrimitiveType` enum. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_BlendShapeMode: .. rst-class:: classref-enumeration enum **BlendShapeMode**: .. _class_VisualServer_constant_BLEND_SHAPE_MODE_NORMALIZED: .. rst-class:: classref-enumeration-constant :ref:`BlendShapeMode` **BLEND_SHAPE_MODE_NORMALIZED** = ``0`` Blend shapes are normalized. .. _class_VisualServer_constant_BLEND_SHAPE_MODE_RELATIVE: .. rst-class:: classref-enumeration-constant :ref:`BlendShapeMode` **BLEND_SHAPE_MODE_RELATIVE** = ``1`` Blend shapes are relative to base weight. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_LightType: .. rst-class:: classref-enumeration enum **LightType**: .. _class_VisualServer_constant_LIGHT_DIRECTIONAL: .. rst-class:: classref-enumeration-constant :ref:`LightType` **LIGHT_DIRECTIONAL** = ``0`` Is a directional (sun) light. .. _class_VisualServer_constant_LIGHT_OMNI: .. rst-class:: classref-enumeration-constant :ref:`LightType` **LIGHT_OMNI** = ``1`` Is an omni light. .. _class_VisualServer_constant_LIGHT_SPOT: .. rst-class:: classref-enumeration-constant :ref:`LightType` **LIGHT_SPOT** = ``2`` Is a spot light. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_LightParam: .. rst-class:: classref-enumeration enum **LightParam**: .. _class_VisualServer_constant_LIGHT_PARAM_ENERGY: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_ENERGY** = ``0`` The light's energy. .. _class_VisualServer_constant_LIGHT_PARAM_INDIRECT_ENERGY: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_INDIRECT_ENERGY** = ``1`` Secondary multiplier used with indirect light (light bounces). .. _class_VisualServer_constant_LIGHT_PARAM_SIZE: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_SIZE** = ``2`` The light's size, currently only used for soft shadows in baked lightmaps. .. _class_VisualServer_constant_LIGHT_PARAM_SPECULAR: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_SPECULAR** = ``3`` The light's influence on specularity. .. _class_VisualServer_constant_LIGHT_PARAM_RANGE: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_RANGE** = ``4`` The light's range. .. _class_VisualServer_constant_LIGHT_PARAM_ATTENUATION: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_ATTENUATION** = ``5`` The light's attenuation. .. _class_VisualServer_constant_LIGHT_PARAM_SPOT_ANGLE: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_SPOT_ANGLE** = ``6`` The spotlight's angle. .. _class_VisualServer_constant_LIGHT_PARAM_SPOT_ATTENUATION: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_SPOT_ATTENUATION** = ``7`` The spotlight's attenuation. .. _class_VisualServer_constant_LIGHT_PARAM_CONTACT_SHADOW_SIZE: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_CONTACT_SHADOW_SIZE** = ``8`` Scales the shadow color. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_MAX_DISTANCE: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_SHADOW_MAX_DISTANCE** = ``9`` Max distance that shadows will be rendered. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_SPLIT_1_OFFSET: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_SHADOW_SPLIT_1_OFFSET** = ``10`` Proportion of shadow atlas occupied by the first split. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_SPLIT_2_OFFSET: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_SHADOW_SPLIT_2_OFFSET** = ``11`` Proportion of shadow atlas occupied by the second split. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_SPLIT_3_OFFSET: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_SHADOW_SPLIT_3_OFFSET** = ``12`` Proportion of shadow atlas occupied by the third split. The fourth split occupies the rest. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_NORMAL_BIAS: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_SHADOW_NORMAL_BIAS** = ``13`` Normal bias used to offset shadow lookup by object normal. Can be used to fix self-shadowing artifacts. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_BIAS: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_SHADOW_BIAS** = ``14`` Bias the shadow lookup to fix self-shadowing artifacts. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_BIAS_SPLIT_SCALE: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_SHADOW_BIAS_SPLIT_SCALE** = ``15`` Increases bias on further splits to fix self-shadowing that only occurs far away from the camera. .. _class_VisualServer_constant_LIGHT_PARAM_MAX: .. rst-class:: classref-enumeration-constant :ref:`LightParam` **LIGHT_PARAM_MAX** = ``16`` Represents the size of the :ref:`LightParam` enum. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_LightBakeMode: .. rst-class:: classref-enumeration enum **LightBakeMode**: .. _class_VisualServer_constant_LIGHT_BAKE_DISABLED: .. rst-class:: classref-enumeration-constant :ref:`LightBakeMode` **LIGHT_BAKE_DISABLED** = ``0`` .. _class_VisualServer_constant_LIGHT_BAKE_INDIRECT: .. rst-class:: classref-enumeration-constant :ref:`LightBakeMode` **LIGHT_BAKE_INDIRECT** = ``1`` .. _class_VisualServer_constant_LIGHT_BAKE_ALL: .. rst-class:: classref-enumeration-constant :ref:`LightBakeMode` **LIGHT_BAKE_ALL** = ``2`` .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_LightOmniShadowMode: .. rst-class:: classref-enumeration enum **LightOmniShadowMode**: .. _class_VisualServer_constant_LIGHT_OMNI_SHADOW_DUAL_PARABOLOID: .. rst-class:: classref-enumeration-constant :ref:`LightOmniShadowMode` **LIGHT_OMNI_SHADOW_DUAL_PARABOLOID** = ``0`` Use a dual paraboloid shadow map for omni lights. .. _class_VisualServer_constant_LIGHT_OMNI_SHADOW_CUBE: .. rst-class:: classref-enumeration-constant :ref:`LightOmniShadowMode` **LIGHT_OMNI_SHADOW_CUBE** = ``1`` Use a cubemap shadow map for omni lights. Slower but better quality than dual paraboloid. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_LightOmniShadowDetail: .. rst-class:: classref-enumeration enum **LightOmniShadowDetail**: .. _class_VisualServer_constant_LIGHT_OMNI_SHADOW_DETAIL_VERTICAL: .. rst-class:: classref-enumeration-constant :ref:`LightOmniShadowDetail` **LIGHT_OMNI_SHADOW_DETAIL_VERTICAL** = ``0`` Use more detail vertically when computing shadow map. .. _class_VisualServer_constant_LIGHT_OMNI_SHADOW_DETAIL_HORIZONTAL: .. rst-class:: classref-enumeration-constant :ref:`LightOmniShadowDetail` **LIGHT_OMNI_SHADOW_DETAIL_HORIZONTAL** = ``1`` Use more detail horizontally when computing shadow map. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_LightDirectionalShadowMode: .. rst-class:: classref-enumeration enum **LightDirectionalShadowMode**: .. _class_VisualServer_constant_LIGHT_DIRECTIONAL_SHADOW_ORTHOGONAL: .. rst-class:: classref-enumeration-constant :ref:`LightDirectionalShadowMode` **LIGHT_DIRECTIONAL_SHADOW_ORTHOGONAL** = ``0`` Use orthogonal shadow projection for directional light. .. _class_VisualServer_constant_LIGHT_DIRECTIONAL_SHADOW_PARALLEL_2_SPLITS: .. rst-class:: classref-enumeration-constant :ref:`LightDirectionalShadowMode` **LIGHT_DIRECTIONAL_SHADOW_PARALLEL_2_SPLITS** = ``1`` Use 2 splits for shadow projection when using directional light. .. _class_VisualServer_constant_LIGHT_DIRECTIONAL_SHADOW_PARALLEL_4_SPLITS: .. rst-class:: classref-enumeration-constant :ref:`LightDirectionalShadowMode` **LIGHT_DIRECTIONAL_SHADOW_PARALLEL_4_SPLITS** = ``2`` Use 4 splits for shadow projection when using directional light. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_LightDirectionalShadowDepthRangeMode: .. rst-class:: classref-enumeration enum **LightDirectionalShadowDepthRangeMode**: .. _class_VisualServer_constant_LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_STABLE: .. rst-class:: classref-enumeration-constant :ref:`LightDirectionalShadowDepthRangeMode` **LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_STABLE** = ``0`` Keeps shadows stable as camera moves but has lower effective resolution. .. _class_VisualServer_constant_LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_OPTIMIZED: .. rst-class:: classref-enumeration-constant :ref:`LightDirectionalShadowDepthRangeMode` **LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_OPTIMIZED** = ``1`` Optimize use of shadow maps, increasing the effective resolution. But may result in shadows moving or flickering slightly. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ViewportUpdateMode: .. rst-class:: classref-enumeration enum **ViewportUpdateMode**: .. _class_VisualServer_constant_VIEWPORT_UPDATE_DISABLED: .. rst-class:: classref-enumeration-constant :ref:`ViewportUpdateMode` **VIEWPORT_UPDATE_DISABLED** = ``0`` Do not update the viewport. .. _class_VisualServer_constant_VIEWPORT_UPDATE_ONCE: .. rst-class:: classref-enumeration-constant :ref:`ViewportUpdateMode` **VIEWPORT_UPDATE_ONCE** = ``1`` Update the viewport once then set to disabled. .. _class_VisualServer_constant_VIEWPORT_UPDATE_WHEN_VISIBLE: .. rst-class:: classref-enumeration-constant :ref:`ViewportUpdateMode` **VIEWPORT_UPDATE_WHEN_VISIBLE** = ``2`` Update the viewport whenever it is visible. .. _class_VisualServer_constant_VIEWPORT_UPDATE_ALWAYS: .. rst-class:: classref-enumeration-constant :ref:`ViewportUpdateMode` **VIEWPORT_UPDATE_ALWAYS** = ``3`` Always update the viewport. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ViewportClearMode: .. rst-class:: classref-enumeration enum **ViewportClearMode**: .. _class_VisualServer_constant_VIEWPORT_CLEAR_ALWAYS: .. rst-class:: classref-enumeration-constant :ref:`ViewportClearMode` **VIEWPORT_CLEAR_ALWAYS** = ``0`` The viewport is always cleared before drawing. .. _class_VisualServer_constant_VIEWPORT_CLEAR_NEVER: .. rst-class:: classref-enumeration-constant :ref:`ViewportClearMode` **VIEWPORT_CLEAR_NEVER** = ``1`` The viewport is never cleared before drawing. .. _class_VisualServer_constant_VIEWPORT_CLEAR_ONLY_NEXT_FRAME: .. rst-class:: classref-enumeration-constant :ref:`ViewportClearMode` **VIEWPORT_CLEAR_ONLY_NEXT_FRAME** = ``2`` The viewport is cleared once, then the clear mode is set to :ref:`VIEWPORT_CLEAR_NEVER`. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ViewportMSAA: .. rst-class:: classref-enumeration enum **ViewportMSAA**: .. _class_VisualServer_constant_VIEWPORT_MSAA_DISABLED: .. rst-class:: classref-enumeration-constant :ref:`ViewportMSAA` **VIEWPORT_MSAA_DISABLED** = ``0`` Multisample antialiasing is disabled. .. _class_VisualServer_constant_VIEWPORT_MSAA_2X: .. rst-class:: classref-enumeration-constant :ref:`ViewportMSAA` **VIEWPORT_MSAA_2X** = ``1`` Multisample antialiasing is set to 2×. .. _class_VisualServer_constant_VIEWPORT_MSAA_4X: .. rst-class:: classref-enumeration-constant :ref:`ViewportMSAA` **VIEWPORT_MSAA_4X** = ``2`` Multisample antialiasing is set to 4×. .. _class_VisualServer_constant_VIEWPORT_MSAA_8X: .. rst-class:: classref-enumeration-constant :ref:`ViewportMSAA` **VIEWPORT_MSAA_8X** = ``3`` Multisample antialiasing is set to 8×. .. _class_VisualServer_constant_VIEWPORT_MSAA_16X: .. rst-class:: classref-enumeration-constant :ref:`ViewportMSAA` **VIEWPORT_MSAA_16X** = ``4`` Multisample antialiasing is set to 16×. .. _class_VisualServer_constant_VIEWPORT_MSAA_EXT_2X: .. rst-class:: classref-enumeration-constant :ref:`ViewportMSAA` **VIEWPORT_MSAA_EXT_2X** = ``5`` Multisample antialiasing is set to 2× on external texture. Special mode for GLES2 Android VR (Oculus Quest and Go). .. _class_VisualServer_constant_VIEWPORT_MSAA_EXT_4X: .. rst-class:: classref-enumeration-constant :ref:`ViewportMSAA` **VIEWPORT_MSAA_EXT_4X** = ``6`` Multisample antialiasing is set to 4× on external texture. Special mode for GLES2 Android VR (Oculus Quest and Go). .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ViewportUsage: .. rst-class:: classref-enumeration enum **ViewportUsage**: .. _class_VisualServer_constant_VIEWPORT_USAGE_2D: .. rst-class:: classref-enumeration-constant :ref:`ViewportUsage` **VIEWPORT_USAGE_2D** = ``0`` The Viewport does not render 3D but samples. .. _class_VisualServer_constant_VIEWPORT_USAGE_2D_NO_SAMPLING: .. rst-class:: classref-enumeration-constant :ref:`ViewportUsage` **VIEWPORT_USAGE_2D_NO_SAMPLING** = ``1`` The Viewport does not render 3D and does not sample. .. _class_VisualServer_constant_VIEWPORT_USAGE_3D: .. rst-class:: classref-enumeration-constant :ref:`ViewportUsage` **VIEWPORT_USAGE_3D** = ``2`` The Viewport renders 3D with effects. .. _class_VisualServer_constant_VIEWPORT_USAGE_3D_NO_EFFECTS: .. rst-class:: classref-enumeration-constant :ref:`ViewportUsage` **VIEWPORT_USAGE_3D_NO_EFFECTS** = ``3`` The Viewport renders 3D but without effects. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ViewportRenderInfo: .. rst-class:: classref-enumeration enum **ViewportRenderInfo**: .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_OBJECTS_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`ViewportRenderInfo` **VIEWPORT_RENDER_INFO_OBJECTS_IN_FRAME** = ``0`` Number of objects drawn in a single frame. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_VERTICES_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`ViewportRenderInfo` **VIEWPORT_RENDER_INFO_VERTICES_IN_FRAME** = ``1`` Number of vertices drawn in a single frame. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_MATERIAL_CHANGES_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`ViewportRenderInfo` **VIEWPORT_RENDER_INFO_MATERIAL_CHANGES_IN_FRAME** = ``2`` Number of material changes during this frame. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_SHADER_CHANGES_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`ViewportRenderInfo` **VIEWPORT_RENDER_INFO_SHADER_CHANGES_IN_FRAME** = ``3`` Number of shader changes during this frame. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_SURFACE_CHANGES_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`ViewportRenderInfo` **VIEWPORT_RENDER_INFO_SURFACE_CHANGES_IN_FRAME** = ``4`` Number of surface changes during this frame. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_DRAW_CALLS_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`ViewportRenderInfo` **VIEWPORT_RENDER_INFO_DRAW_CALLS_IN_FRAME** = ``5`` Number of draw calls during this frame. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_2D_ITEMS_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`ViewportRenderInfo` **VIEWPORT_RENDER_INFO_2D_ITEMS_IN_FRAME** = ``6`` Number of 2d items drawn this frame. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_2D_DRAW_CALLS_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`ViewportRenderInfo` **VIEWPORT_RENDER_INFO_2D_DRAW_CALLS_IN_FRAME** = ``7`` Number of 2d draw calls during this frame. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_MAX: .. rst-class:: classref-enumeration-constant :ref:`ViewportRenderInfo` **VIEWPORT_RENDER_INFO_MAX** = ``8`` Represents the size of the :ref:`ViewportRenderInfo` enum. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ViewportDebugDraw: .. rst-class:: classref-enumeration enum **ViewportDebugDraw**: .. _class_VisualServer_constant_VIEWPORT_DEBUG_DRAW_DISABLED: .. rst-class:: classref-enumeration-constant :ref:`ViewportDebugDraw` **VIEWPORT_DEBUG_DRAW_DISABLED** = ``0`` Debug draw is disabled. Default setting. .. _class_VisualServer_constant_VIEWPORT_DEBUG_DRAW_UNSHADED: .. rst-class:: classref-enumeration-constant :ref:`ViewportDebugDraw` **VIEWPORT_DEBUG_DRAW_UNSHADED** = ``1`` Debug draw sets objects to unshaded. .. _class_VisualServer_constant_VIEWPORT_DEBUG_DRAW_OVERDRAW: .. rst-class:: classref-enumeration-constant :ref:`ViewportDebugDraw` **VIEWPORT_DEBUG_DRAW_OVERDRAW** = ``2`` Overwrites clear color to ``(0,0,0,0)``. .. _class_VisualServer_constant_VIEWPORT_DEBUG_DRAW_WIREFRAME: .. rst-class:: classref-enumeration-constant :ref:`ViewportDebugDraw` **VIEWPORT_DEBUG_DRAW_WIREFRAME** = ``3`` Debug draw draws objects in wireframe. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ScenarioDebugMode: .. rst-class:: classref-enumeration enum **ScenarioDebugMode**: .. _class_VisualServer_constant_SCENARIO_DEBUG_DISABLED: .. rst-class:: classref-enumeration-constant :ref:`ScenarioDebugMode` **SCENARIO_DEBUG_DISABLED** = ``0`` Do not use a debug mode. .. _class_VisualServer_constant_SCENARIO_DEBUG_WIREFRAME: .. rst-class:: classref-enumeration-constant :ref:`ScenarioDebugMode` **SCENARIO_DEBUG_WIREFRAME** = ``1`` Draw all objects as wireframe models. .. _class_VisualServer_constant_SCENARIO_DEBUG_OVERDRAW: .. rst-class:: classref-enumeration-constant :ref:`ScenarioDebugMode` **SCENARIO_DEBUG_OVERDRAW** = ``2`` Draw all objects in a way that displays how much overdraw is occurring. Overdraw occurs when a section of pixels is drawn and shaded and then another object covers it up. To optimize a scene, you should reduce overdraw. .. _class_VisualServer_constant_SCENARIO_DEBUG_SHADELESS: .. rst-class:: classref-enumeration-constant :ref:`ScenarioDebugMode` **SCENARIO_DEBUG_SHADELESS** = ``3`` Draw all objects without shading. Equivalent to setting all objects shaders to ``unshaded``. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_InstanceType: .. rst-class:: classref-enumeration enum **InstanceType**: .. _class_VisualServer_constant_INSTANCE_NONE: .. rst-class:: classref-enumeration-constant :ref:`InstanceType` **INSTANCE_NONE** = ``0`` The instance does not have a type. .. _class_VisualServer_constant_INSTANCE_MESH: .. rst-class:: classref-enumeration-constant :ref:`InstanceType` **INSTANCE_MESH** = ``1`` The instance is a mesh. .. _class_VisualServer_constant_INSTANCE_MULTIMESH: .. rst-class:: classref-enumeration-constant :ref:`InstanceType` **INSTANCE_MULTIMESH** = ``2`` The instance is a multimesh. .. _class_VisualServer_constant_INSTANCE_IMMEDIATE: .. rst-class:: classref-enumeration-constant :ref:`InstanceType` **INSTANCE_IMMEDIATE** = ``3`` The instance is an immediate geometry. .. _class_VisualServer_constant_INSTANCE_PARTICLES: .. rst-class:: classref-enumeration-constant :ref:`InstanceType` **INSTANCE_PARTICLES** = ``4`` The instance is a particle emitter. .. _class_VisualServer_constant_INSTANCE_LIGHT: .. rst-class:: classref-enumeration-constant :ref:`InstanceType` **INSTANCE_LIGHT** = ``5`` The instance is a light. .. _class_VisualServer_constant_INSTANCE_REFLECTION_PROBE: .. rst-class:: classref-enumeration-constant :ref:`InstanceType` **INSTANCE_REFLECTION_PROBE** = ``6`` The instance is a reflection probe. .. _class_VisualServer_constant_INSTANCE_GI_PROBE: .. rst-class:: classref-enumeration-constant :ref:`InstanceType` **INSTANCE_GI_PROBE** = ``7`` The instance is a GI probe. .. _class_VisualServer_constant_INSTANCE_LIGHTMAP_CAPTURE: .. rst-class:: classref-enumeration-constant :ref:`InstanceType` **INSTANCE_LIGHTMAP_CAPTURE** = ``8`` The instance is a lightmap capture. .. _class_VisualServer_constant_INSTANCE_MAX: .. rst-class:: classref-enumeration-constant :ref:`InstanceType` **INSTANCE_MAX** = ``9`` Represents the size of the :ref:`InstanceType` enum. .. _class_VisualServer_constant_INSTANCE_GEOMETRY_MASK: .. rst-class:: classref-enumeration-constant :ref:`InstanceType` **INSTANCE_GEOMETRY_MASK** = ``30`` A combination of the flags of geometry instances (mesh, multimesh, immediate and particles). .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_InstanceFlags: .. rst-class:: classref-enumeration enum **InstanceFlags**: .. _class_VisualServer_constant_INSTANCE_FLAG_USE_BAKED_LIGHT: .. rst-class:: classref-enumeration-constant :ref:`InstanceFlags` **INSTANCE_FLAG_USE_BAKED_LIGHT** = ``0`` Allows the instance to be used in baked lighting. .. _class_VisualServer_constant_INSTANCE_FLAG_DRAW_NEXT_FRAME_IF_VISIBLE: .. rst-class:: classref-enumeration-constant :ref:`InstanceFlags` **INSTANCE_FLAG_DRAW_NEXT_FRAME_IF_VISIBLE** = ``1`` When set, manually requests to draw geometry on next frame. .. _class_VisualServer_constant_INSTANCE_FLAG_MAX: .. rst-class:: classref-enumeration-constant :ref:`InstanceFlags` **INSTANCE_FLAG_MAX** = ``2`` Represents the size of the :ref:`InstanceFlags` enum. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ShadowCastingSetting: .. rst-class:: classref-enumeration enum **ShadowCastingSetting**: .. _class_VisualServer_constant_SHADOW_CASTING_SETTING_OFF: .. rst-class:: classref-enumeration-constant :ref:`ShadowCastingSetting` **SHADOW_CASTING_SETTING_OFF** = ``0`` Disable shadows from this instance. .. _class_VisualServer_constant_SHADOW_CASTING_SETTING_ON: .. rst-class:: classref-enumeration-constant :ref:`ShadowCastingSetting` **SHADOW_CASTING_SETTING_ON** = ``1`` Cast shadows from this instance. .. _class_VisualServer_constant_SHADOW_CASTING_SETTING_DOUBLE_SIDED: .. rst-class:: classref-enumeration-constant :ref:`ShadowCastingSetting` **SHADOW_CASTING_SETTING_DOUBLE_SIDED** = ``2`` Disable backface culling when rendering the shadow of the object. This is slightly slower but may result in more correct shadows. .. _class_VisualServer_constant_SHADOW_CASTING_SETTING_SHADOWS_ONLY: .. rst-class:: classref-enumeration-constant :ref:`ShadowCastingSetting` **SHADOW_CASTING_SETTING_SHADOWS_ONLY** = ``3`` Only render the shadows from the object. The object itself will not be drawn. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_NinePatchAxisMode: .. rst-class:: classref-enumeration enum **NinePatchAxisMode**: .. _class_VisualServer_constant_NINE_PATCH_STRETCH: .. rst-class:: classref-enumeration-constant :ref:`NinePatchAxisMode` **NINE_PATCH_STRETCH** = ``0`` The nine patch gets stretched where needed. .. _class_VisualServer_constant_NINE_PATCH_TILE: .. rst-class:: classref-enumeration-constant :ref:`NinePatchAxisMode` **NINE_PATCH_TILE** = ``1`` The nine patch gets filled with tiles where needed. .. _class_VisualServer_constant_NINE_PATCH_TILE_FIT: .. rst-class:: classref-enumeration-constant :ref:`NinePatchAxisMode` **NINE_PATCH_TILE_FIT** = ``2`` The nine patch gets filled with tiles where needed and stretches them a bit if needed. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_CanvasLightMode: .. rst-class:: classref-enumeration enum **CanvasLightMode**: .. _class_VisualServer_constant_CANVAS_LIGHT_MODE_ADD: .. rst-class:: classref-enumeration-constant :ref:`CanvasLightMode` **CANVAS_LIGHT_MODE_ADD** = ``0`` Adds light color additive to the canvas. .. _class_VisualServer_constant_CANVAS_LIGHT_MODE_SUB: .. rst-class:: classref-enumeration-constant :ref:`CanvasLightMode` **CANVAS_LIGHT_MODE_SUB** = ``1`` Adds light color subtractive to the canvas. .. _class_VisualServer_constant_CANVAS_LIGHT_MODE_MIX: .. rst-class:: classref-enumeration-constant :ref:`CanvasLightMode` **CANVAS_LIGHT_MODE_MIX** = ``2`` The light adds color depending on transparency. .. _class_VisualServer_constant_CANVAS_LIGHT_MODE_MASK: .. rst-class:: classref-enumeration-constant :ref:`CanvasLightMode` **CANVAS_LIGHT_MODE_MASK** = ``3`` The light adds color depending on mask. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_CanvasLightShadowFilter: .. rst-class:: classref-enumeration enum **CanvasLightShadowFilter**: .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_NONE: .. rst-class:: classref-enumeration-constant :ref:`CanvasLightShadowFilter` **CANVAS_LIGHT_FILTER_NONE** = ``0`` Do not apply a filter to canvas light shadows. .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_PCF3: .. rst-class:: classref-enumeration-constant :ref:`CanvasLightShadowFilter` **CANVAS_LIGHT_FILTER_PCF3** = ``1`` Use PCF3 filtering to filter canvas light shadows. .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_PCF5: .. rst-class:: classref-enumeration-constant :ref:`CanvasLightShadowFilter` **CANVAS_LIGHT_FILTER_PCF5** = ``2`` Use PCF5 filtering to filter canvas light shadows. .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_PCF7: .. rst-class:: classref-enumeration-constant :ref:`CanvasLightShadowFilter` **CANVAS_LIGHT_FILTER_PCF7** = ``3`` Use PCF7 filtering to filter canvas light shadows. .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_PCF9: .. rst-class:: classref-enumeration-constant :ref:`CanvasLightShadowFilter` **CANVAS_LIGHT_FILTER_PCF9** = ``4`` Use PCF9 filtering to filter canvas light shadows. .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_PCF13: .. rst-class:: classref-enumeration-constant :ref:`CanvasLightShadowFilter` **CANVAS_LIGHT_FILTER_PCF13** = ``5`` Use PCF13 filtering to filter canvas light shadows. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_CanvasOccluderPolygonCullMode: .. rst-class:: classref-enumeration enum **CanvasOccluderPolygonCullMode**: .. _class_VisualServer_constant_CANVAS_OCCLUDER_POLYGON_CULL_DISABLED: .. rst-class:: classref-enumeration-constant :ref:`CanvasOccluderPolygonCullMode` **CANVAS_OCCLUDER_POLYGON_CULL_DISABLED** = ``0`` Culling of the canvas occluder is disabled. .. _class_VisualServer_constant_CANVAS_OCCLUDER_POLYGON_CULL_CLOCKWISE: .. rst-class:: classref-enumeration-constant :ref:`CanvasOccluderPolygonCullMode` **CANVAS_OCCLUDER_POLYGON_CULL_CLOCKWISE** = ``1`` Culling of the canvas occluder is clockwise. .. _class_VisualServer_constant_CANVAS_OCCLUDER_POLYGON_CULL_COUNTER_CLOCKWISE: .. rst-class:: classref-enumeration-constant :ref:`CanvasOccluderPolygonCullMode` **CANVAS_OCCLUDER_POLYGON_CULL_COUNTER_CLOCKWISE** = ``2`` Culling of the canvas occluder is counterclockwise. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_RenderInfo: .. rst-class:: classref-enumeration enum **RenderInfo**: .. _class_VisualServer_constant_INFO_OBJECTS_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_OBJECTS_IN_FRAME** = ``0`` The amount of objects in the frame. .. _class_VisualServer_constant_INFO_VERTICES_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_VERTICES_IN_FRAME** = ``1`` The amount of vertices in the frame. .. _class_VisualServer_constant_INFO_MATERIAL_CHANGES_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_MATERIAL_CHANGES_IN_FRAME** = ``2`` The amount of modified materials in the frame. .. _class_VisualServer_constant_INFO_SHADER_CHANGES_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_SHADER_CHANGES_IN_FRAME** = ``3`` The amount of shader rebinds in the frame. .. _class_VisualServer_constant_INFO_SHADER_COMPILES_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_SHADER_COMPILES_IN_FRAME** = ``4`` The peak amount of shaders that have been under compilation in the frame. This is useful to know when asynchronous shader compilation has finished for the current shaders on screen. \ **Note:** For complete certainty, only assume there are no outstanding compilations when this value is zero for at least two frames in a row. Unimplemented in the GLES2 rendering backend, always returns 0. .. _class_VisualServer_constant_INFO_SURFACE_CHANGES_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_SURFACE_CHANGES_IN_FRAME** = ``5`` The amount of surface changes in the frame. .. _class_VisualServer_constant_INFO_DRAW_CALLS_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_DRAW_CALLS_IN_FRAME** = ``6`` The amount of draw calls in frame. .. _class_VisualServer_constant_INFO_2D_ITEMS_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_2D_ITEMS_IN_FRAME** = ``7`` The amount of 2d items in the frame. .. _class_VisualServer_constant_INFO_2D_DRAW_CALLS_IN_FRAME: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_2D_DRAW_CALLS_IN_FRAME** = ``8`` The amount of 2d draw calls in frame. .. _class_VisualServer_constant_INFO_USAGE_VIDEO_MEM_TOTAL: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_USAGE_VIDEO_MEM_TOTAL** = ``9`` Unimplemented in the GLES2 and GLES3 rendering backends, always returns 0. .. _class_VisualServer_constant_INFO_VIDEO_MEM_USED: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_VIDEO_MEM_USED** = ``10`` The amount of video memory used, i.e. texture and vertex memory combined. .. _class_VisualServer_constant_INFO_TEXTURE_MEM_USED: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_TEXTURE_MEM_USED** = ``11`` The amount of texture memory used. .. _class_VisualServer_constant_INFO_VERTEX_MEM_USED: .. rst-class:: classref-enumeration-constant :ref:`RenderInfo` **INFO_VERTEX_MEM_USED** = ``12`` The amount of vertex memory used. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_Features: .. rst-class:: classref-enumeration enum **Features**: .. _class_VisualServer_constant_FEATURE_SHADERS: .. rst-class:: classref-enumeration-constant :ref:`Features` **FEATURE_SHADERS** = ``0`` Hardware supports shaders. This enum is currently unused in Godot 3.x. .. _class_VisualServer_constant_FEATURE_MULTITHREADED: .. rst-class:: classref-enumeration-constant :ref:`Features` **FEATURE_MULTITHREADED** = ``1`` Hardware supports multithreading. This enum is currently unused in Godot 3.x. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_MultimeshTransformFormat: .. rst-class:: classref-enumeration enum **MultimeshTransformFormat**: .. _class_VisualServer_constant_MULTIMESH_TRANSFORM_2D: .. rst-class:: classref-enumeration-constant :ref:`MultimeshTransformFormat` **MULTIMESH_TRANSFORM_2D** = ``0`` Use :ref:`Transform2D` to store MultiMesh transform. .. _class_VisualServer_constant_MULTIMESH_TRANSFORM_3D: .. rst-class:: classref-enumeration-constant :ref:`MultimeshTransformFormat` **MULTIMESH_TRANSFORM_3D** = ``1`` Use :ref:`Transform` to store MultiMesh transform. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_MultimeshColorFormat: .. rst-class:: classref-enumeration enum **MultimeshColorFormat**: .. _class_VisualServer_constant_MULTIMESH_COLOR_NONE: .. rst-class:: classref-enumeration-constant :ref:`MultimeshColorFormat` **MULTIMESH_COLOR_NONE** = ``0`` MultiMesh does not use per-instance color. .. _class_VisualServer_constant_MULTIMESH_COLOR_8BIT: .. rst-class:: classref-enumeration-constant :ref:`MultimeshColorFormat` **MULTIMESH_COLOR_8BIT** = ``1`` MultiMesh color uses 8 bits per component. This packs the color into a single float. .. _class_VisualServer_constant_MULTIMESH_COLOR_FLOAT: .. rst-class:: classref-enumeration-constant :ref:`MultimeshColorFormat` **MULTIMESH_COLOR_FLOAT** = ``2`` MultiMesh color uses a float per channel. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_MultimeshCustomDataFormat: .. rst-class:: classref-enumeration enum **MultimeshCustomDataFormat**: .. _class_VisualServer_constant_MULTIMESH_CUSTOM_DATA_NONE: .. rst-class:: classref-enumeration-constant :ref:`MultimeshCustomDataFormat` **MULTIMESH_CUSTOM_DATA_NONE** = ``0`` MultiMesh does not use custom data. .. _class_VisualServer_constant_MULTIMESH_CUSTOM_DATA_8BIT: .. rst-class:: classref-enumeration-constant :ref:`MultimeshCustomDataFormat` **MULTIMESH_CUSTOM_DATA_8BIT** = ``1`` MultiMesh custom data uses 8 bits per component. This packs the 4-component custom data into a single float. .. _class_VisualServer_constant_MULTIMESH_CUSTOM_DATA_FLOAT: .. rst-class:: classref-enumeration-constant :ref:`MultimeshCustomDataFormat` **MULTIMESH_CUSTOM_DATA_FLOAT** = ``2`` MultiMesh custom data uses a float per component. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ReflectionProbeUpdateMode: .. rst-class:: classref-enumeration enum **ReflectionProbeUpdateMode**: .. _class_VisualServer_constant_REFLECTION_PROBE_UPDATE_ONCE: .. rst-class:: classref-enumeration-constant :ref:`ReflectionProbeUpdateMode` **REFLECTION_PROBE_UPDATE_ONCE** = ``0`` Reflection probe will update reflections once and then stop. .. _class_VisualServer_constant_REFLECTION_PROBE_UPDATE_ALWAYS: .. rst-class:: classref-enumeration-constant :ref:`ReflectionProbeUpdateMode` **REFLECTION_PROBE_UPDATE_ALWAYS** = ``1`` Reflection probe will update each frame. This mode is necessary to capture moving objects. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ParticlesDrawOrder: .. rst-class:: classref-enumeration enum **ParticlesDrawOrder**: .. _class_VisualServer_constant_PARTICLES_DRAW_ORDER_INDEX: .. rst-class:: classref-enumeration-constant :ref:`ParticlesDrawOrder` **PARTICLES_DRAW_ORDER_INDEX** = ``0`` Draw particles in the order that they appear in the particles array. .. _class_VisualServer_constant_PARTICLES_DRAW_ORDER_LIFETIME: .. rst-class:: classref-enumeration-constant :ref:`ParticlesDrawOrder` **PARTICLES_DRAW_ORDER_LIFETIME** = ``1`` Sort particles based on their lifetime. .. _class_VisualServer_constant_PARTICLES_DRAW_ORDER_VIEW_DEPTH: .. rst-class:: classref-enumeration-constant :ref:`ParticlesDrawOrder` **PARTICLES_DRAW_ORDER_VIEW_DEPTH** = ``2`` Sort particles based on their distance to the camera. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_EnvironmentBG: .. rst-class:: classref-enumeration enum **EnvironmentBG**: .. _class_VisualServer_constant_ENV_BG_CLEAR_COLOR: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentBG` **ENV_BG_CLEAR_COLOR** = ``0`` Use the clear color as background. .. _class_VisualServer_constant_ENV_BG_COLOR: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentBG` **ENV_BG_COLOR** = ``1`` Use a specified color as the background. .. _class_VisualServer_constant_ENV_BG_SKY: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentBG` **ENV_BG_SKY** = ``2`` Use a sky resource for the background. .. _class_VisualServer_constant_ENV_BG_COLOR_SKY: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentBG` **ENV_BG_COLOR_SKY** = ``3`` Use a custom color for background, but use a sky for shading and reflections. .. _class_VisualServer_constant_ENV_BG_CANVAS: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentBG` **ENV_BG_CANVAS** = ``4`` Use a specified canvas layer as the background. This can be useful for instantiating a 2D scene in a 3D world. .. _class_VisualServer_constant_ENV_BG_KEEP: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentBG` **ENV_BG_KEEP** = ``5`` Do not clear the background, use whatever was rendered last frame as the background. .. _class_VisualServer_constant_ENV_BG_MAX: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentBG` **ENV_BG_MAX** = ``7`` Represents the size of the :ref:`EnvironmentBG` enum. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_EnvironmentDOFBlurQuality: .. rst-class:: classref-enumeration enum **EnvironmentDOFBlurQuality**: .. _class_VisualServer_constant_ENV_DOF_BLUR_QUALITY_LOW: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentDOFBlurQuality` **ENV_DOF_BLUR_QUALITY_LOW** = ``0`` Use lowest blur quality. Fastest, but may look bad. .. _class_VisualServer_constant_ENV_DOF_BLUR_QUALITY_MEDIUM: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentDOFBlurQuality` **ENV_DOF_BLUR_QUALITY_MEDIUM** = ``1`` Use medium blur quality. .. _class_VisualServer_constant_ENV_DOF_BLUR_QUALITY_HIGH: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentDOFBlurQuality` **ENV_DOF_BLUR_QUALITY_HIGH** = ``2`` Used highest blur quality. Looks the best, but is the slowest. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_EnvironmentGlowBlendMode: .. rst-class:: classref-enumeration enum **EnvironmentGlowBlendMode**: .. _class_VisualServer_constant_GLOW_BLEND_MODE_ADDITIVE: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentGlowBlendMode` **GLOW_BLEND_MODE_ADDITIVE** = ``0`` Add the effect of the glow on top of the scene. .. _class_VisualServer_constant_GLOW_BLEND_MODE_SCREEN: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentGlowBlendMode` **GLOW_BLEND_MODE_SCREEN** = ``1`` Blends the glow effect with the screen. Does not get as bright as additive. .. _class_VisualServer_constant_GLOW_BLEND_MODE_SOFTLIGHT: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentGlowBlendMode` **GLOW_BLEND_MODE_SOFTLIGHT** = ``2`` Produces a subtle color disturbance around objects. .. _class_VisualServer_constant_GLOW_BLEND_MODE_REPLACE: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentGlowBlendMode` **GLOW_BLEND_MODE_REPLACE** = ``3`` Shows the glow effect by itself without the underlying scene. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_EnvironmentToneMapper: .. rst-class:: classref-enumeration enum **EnvironmentToneMapper**: .. _class_VisualServer_constant_ENV_TONE_MAPPER_LINEAR: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentToneMapper` **ENV_TONE_MAPPER_LINEAR** = ``0`` Output color as they came in. This can cause bright lighting to look blown out, with noticeable clipping in the output colors. .. _class_VisualServer_constant_ENV_TONE_MAPPER_REINHARD: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentToneMapper` **ENV_TONE_MAPPER_REINHARD** = ``1`` Use the Reinhard tonemapper. 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. .. _class_VisualServer_constant_ENV_TONE_MAPPER_FILMIC: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentToneMapper` **ENV_TONE_MAPPER_FILMIC** = ``2`` Use the filmic tonemapper. This avoids clipping bright highlights, with a resulting image that usually looks more vivid than :ref:`ENV_TONE_MAPPER_REINHARD`. .. _class_VisualServer_constant_ENV_TONE_MAPPER_ACES: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentToneMapper` **ENV_TONE_MAPPER_ACES** = ``3`` Use the legacy Godot version of the Academy Color Encoding System tonemapper. Unlike :ref:`ENV_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:`ENV_TONE_MAPPER_REINHARD` and :ref:`ENV_TONE_MAPPER_FILMIC`. \ **Note:** This tonemapping operator will be removed in Godot 4.0 in favor of the more accurate :ref:`ENV_TONE_MAPPER_ACES_FITTED`. .. _class_VisualServer_constant_ENV_TONE_MAPPER_ACES_FITTED: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentToneMapper` **ENV_TONE_MAPPER_ACES_FITTED** = ``4`` 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:`ENV_TONE_MAPPER_REINHARD` and :ref:`ENV_TONE_MAPPER_FILMIC`. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_EnvironmentSSAOQuality: .. rst-class:: classref-enumeration enum **EnvironmentSSAOQuality**: .. _class_VisualServer_constant_ENV_SSAO_QUALITY_LOW: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentSSAOQuality` **ENV_SSAO_QUALITY_LOW** = ``0`` Lowest quality of screen space ambient occlusion. .. _class_VisualServer_constant_ENV_SSAO_QUALITY_MEDIUM: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentSSAOQuality` **ENV_SSAO_QUALITY_MEDIUM** = ``1`` Medium quality screen space ambient occlusion. .. _class_VisualServer_constant_ENV_SSAO_QUALITY_HIGH: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentSSAOQuality` **ENV_SSAO_QUALITY_HIGH** = ``2`` Highest quality screen space ambient occlusion. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_EnvironmentSSAOBlur: .. rst-class:: classref-enumeration enum **EnvironmentSSAOBlur**: .. _class_VisualServer_constant_ENV_SSAO_BLUR_DISABLED: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentSSAOBlur` **ENV_SSAO_BLUR_DISABLED** = ``0`` Disables the blur set for SSAO. Will make SSAO look noisier. .. _class_VisualServer_constant_ENV_SSAO_BLUR_1x1: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentSSAOBlur` **ENV_SSAO_BLUR_1x1** = ``1`` Perform a 1x1 blur on the SSAO output. .. _class_VisualServer_constant_ENV_SSAO_BLUR_2x2: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentSSAOBlur` **ENV_SSAO_BLUR_2x2** = ``2`` Performs a 2x2 blur on the SSAO output. .. _class_VisualServer_constant_ENV_SSAO_BLUR_3x3: .. rst-class:: classref-enumeration-constant :ref:`EnvironmentSSAOBlur` **ENV_SSAO_BLUR_3x3** = ``3`` Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO. .. rst-class:: classref-item-separator ---- .. _enum_VisualServer_ChangedPriority: .. rst-class:: classref-enumeration enum **ChangedPriority**: .. _class_VisualServer_constant_CHANGED_PRIORITY_ANY: .. rst-class:: classref-enumeration-constant :ref:`ChangedPriority` **CHANGED_PRIORITY_ANY** = ``0`` Used to query for any changes that request a redraw, whatever the priority. .. _class_VisualServer_constant_CHANGED_PRIORITY_LOW: .. rst-class:: classref-enumeration-constant :ref:`ChangedPriority` **CHANGED_PRIORITY_LOW** = ``1`` Registered changes which have low priority can be optionally prevented from causing editor redraws. Examples might include dynamic shaders (typically using the ``TIME`` built-in). .. _class_VisualServer_constant_CHANGED_PRIORITY_HIGH: .. rst-class:: classref-enumeration-constant :ref:`ChangedPriority` **CHANGED_PRIORITY_HIGH** = ``2`` Registered changes which can cause a redraw default to high priority. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Constants --------- .. _class_VisualServer_constant_NO_INDEX_ARRAY: .. rst-class:: classref-constant **NO_INDEX_ARRAY** = ``-1`` Marks an error that shows that the index array is empty. .. _class_VisualServer_constant_ARRAY_WEIGHTS_SIZE: .. rst-class:: classref-constant **ARRAY_WEIGHTS_SIZE** = ``4`` Number of weights/bones per vertex. .. _class_VisualServer_constant_CANVAS_ITEM_Z_MIN: .. rst-class:: classref-constant **CANVAS_ITEM_Z_MIN** = ``-4096`` The minimum Z-layer for canvas items. .. _class_VisualServer_constant_CANVAS_ITEM_Z_MAX: .. rst-class:: classref-constant **CANVAS_ITEM_Z_MAX** = ``4096`` The maximum Z-layer for canvas items. .. _class_VisualServer_constant_MAX_GLOW_LEVELS: .. rst-class:: classref-constant **MAX_GLOW_LEVELS** = ``7`` Max number of glow levels that can be used with glow post-process effect. .. _class_VisualServer_constant_MAX_CURSORS: .. rst-class:: classref-constant **MAX_CURSORS** = ``8`` Unused enum in Godot 3.x. .. _class_VisualServer_constant_MATERIAL_RENDER_PRIORITY_MIN: .. rst-class:: classref-constant **MATERIAL_RENDER_PRIORITY_MIN** = ``-128`` The minimum renderpriority of all materials. .. _class_VisualServer_constant_MATERIAL_RENDER_PRIORITY_MAX: .. rst-class:: classref-constant **MATERIAL_RENDER_PRIORITY_MAX** = ``127`` The maximum renderpriority of all materials. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Property Descriptions --------------------- .. _class_VisualServer_property_render_loop_enabled: .. rst-class:: classref-property :ref:`bool` **render_loop_enabled** .. rst-class:: classref-property-setget - void **set_render_loop_enabled** **(** :ref:`bool` value **)** - :ref:`bool` **is_render_loop_enabled** **(** **)** If ``false``, disables rendering completely, but the engine logic is still being processed. You can call :ref:`force_draw` to draw a frame even with rendering disabled. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Method Descriptions ------------------- .. _class_VisualServer_method_black_bars_set_images: .. rst-class:: classref-method void **black_bars_set_images** **(** :ref:`RID` left, :ref:`RID` top, :ref:`RID` right, :ref:`RID` bottom **)** Sets images to be rendered in the window margin. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_black_bars_set_margins: .. rst-class:: classref-method void **black_bars_set_margins** **(** :ref:`int` left, :ref:`int` top, :ref:`int` right, :ref:`int` bottom **)** Sets margin size, where black bars (or images, if :ref:`black_bars_set_images` was used) are rendered. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_camera_create: .. rst-class:: classref-method :ref:`RID` **camera_create** **(** **)** Creates a camera and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``camera_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_camera_set_cull_mask: .. rst-class:: classref-method void **camera_set_cull_mask** **(** :ref:`RID` camera, :ref:`int` layers **)** Sets the cull mask associated with this camera. The cull mask describes which 3D layers are rendered by this camera. Equivalent to :ref:`Camera.cull_mask`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_camera_set_environment: .. rst-class:: classref-method void **camera_set_environment** **(** :ref:`RID` camera, :ref:`RID` env **)** Sets the environment used by this camera. Equivalent to :ref:`Camera.environment`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_camera_set_frustum: .. rst-class:: classref-method void **camera_set_frustum** **(** :ref:`RID` camera, :ref:`float` size, :ref:`Vector2` offset, :ref:`float` z_near, :ref:`float` z_far **)** Sets camera to use frustum projection. This mode allows adjusting the ``offset`` argument to create "tilted frustum" effects. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_camera_set_orthogonal: .. rst-class:: classref-method void **camera_set_orthogonal** **(** :ref:`RID` camera, :ref:`float` size, :ref:`float` z_near, :ref:`float` z_far **)** Sets camera to use orthogonal projection, also known as orthographic projection. Objects remain the same size on the screen no matter how far away they are. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_camera_set_perspective: .. rst-class:: classref-method void **camera_set_perspective** **(** :ref:`RID` camera, :ref:`float` fovy_degrees, :ref:`float` z_near, :ref:`float` z_far **)** Sets camera to use perspective projection. Objects on the screen becomes smaller when they are far away. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_camera_set_transform: .. rst-class:: classref-method void **camera_set_transform** **(** :ref:`RID` camera, :ref:`Transform` transform **)** Sets :ref:`Transform` of camera. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_camera_set_use_vertical_aspect: .. rst-class:: classref-method void **camera_set_use_vertical_aspect** **(** :ref:`RID` camera, :ref:`bool` enable **)** If ``true``, preserves the horizontal aspect ratio which is equivalent to :ref:`Camera.KEEP_WIDTH`. If ``false``, preserves the vertical aspect ratio which is equivalent to :ref:`Camera.KEEP_HEIGHT`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_create: .. rst-class:: classref-method :ref:`RID` **canvas_create** **(** **)** Creates a canvas and returns the assigned :ref:`RID`. It can be accessed with the RID that is returned. This RID will be used in all ``canvas_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_circle: .. rst-class:: classref-method void **canvas_item_add_circle** **(** :ref:`RID` item, :ref:`Vector2` pos, :ref:`float` radius, :ref:`Color` color **)** Adds a circle command to the :ref:`CanvasItem`'s draw commands. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_clip_ignore: .. rst-class:: classref-method void **canvas_item_add_clip_ignore** **(** :ref:`RID` item, :ref:`bool` ignore **)** If ignore is ``true``, the VisualServer does not perform clipping. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_line: .. rst-class:: classref-method void **canvas_item_add_line** **(** :ref:`RID` item, :ref:`Vector2` from, :ref:`Vector2` to, :ref:`Color` color, :ref:`float` width=1.0, :ref:`bool` antialiased=false **)** Adds a line command to the :ref:`CanvasItem`'s draw commands. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_mesh: .. rst-class:: classref-method void **canvas_item_add_mesh** **(** :ref:`RID` item, :ref:`RID` mesh, :ref:`Transform2D` transform=Transform2D( 1, 0, 0, 1, 0, 0 ), :ref:`Color` modulate=Color( 1, 1, 1, 1 ), :ref:`RID` texture, :ref:`RID` normal_map **)** Adds a mesh command to the :ref:`CanvasItem`'s draw commands. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_multimesh: .. rst-class:: classref-method void **canvas_item_add_multimesh** **(** :ref:`RID` item, :ref:`RID` mesh, :ref:`RID` texture, :ref:`RID` normal_map **)** Adds a :ref:`MultiMesh` to the :ref:`CanvasItem`'s draw commands. Only affects its aabb at the moment. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_nine_patch: .. rst-class:: classref-method void **canvas_item_add_nine_patch** **(** :ref:`RID` item, :ref:`Rect2` rect, :ref:`Rect2` source, :ref:`RID` texture, :ref:`Vector2` topleft, :ref:`Vector2` bottomright, :ref:`NinePatchAxisMode` x_axis_mode=0, :ref:`NinePatchAxisMode` y_axis_mode=0, :ref:`bool` draw_center=true, :ref:`Color` modulate=Color( 1, 1, 1, 1 ), :ref:`RID` normal_map **)** Adds a nine patch image to the :ref:`CanvasItem`'s draw commands. See :ref:`NinePatchRect` for more explanation. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_particles: .. rst-class:: classref-method void **canvas_item_add_particles** **(** :ref:`RID` item, :ref:`RID` particles, :ref:`RID` texture, :ref:`RID` normal_map **)** Adds a particle system to the :ref:`CanvasItem`'s draw commands. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_polygon: .. rst-class:: classref-method void **canvas_item_add_polygon** **(** :ref:`RID` item, :ref:`PoolVector2Array` points, :ref:`PoolColorArray` colors, :ref:`PoolVector2Array` uvs=PoolVector2Array( ), :ref:`RID` texture, :ref:`RID` normal_map, :ref:`bool` antialiased=false **)** Adds a polygon to the :ref:`CanvasItem`'s draw commands. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_polyline: .. rst-class:: classref-method void **canvas_item_add_polyline** **(** :ref:`RID` item, :ref:`PoolVector2Array` points, :ref:`PoolColorArray` colors, :ref:`float` width=1.0, :ref:`bool` antialiased=false **)** Adds a polyline, which is a line from multiple points with a width, to the :ref:`CanvasItem`'s draw commands. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_primitive: .. rst-class:: classref-method void **canvas_item_add_primitive** **(** :ref:`RID` item, :ref:`PoolVector2Array` points, :ref:`PoolColorArray` colors, :ref:`PoolVector2Array` uvs, :ref:`RID` texture, :ref:`float` width=1.0, :ref:`RID` normal_map **)** Adds a primitive to the :ref:`CanvasItem`'s draw commands. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_rect: .. rst-class:: classref-method void **canvas_item_add_rect** **(** :ref:`RID` item, :ref:`Rect2` rect, :ref:`Color` color **)** Adds a rectangle to the :ref:`CanvasItem`'s draw commands. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_set_transform: .. rst-class:: classref-method void **canvas_item_add_set_transform** **(** :ref:`RID` item, :ref:`Transform2D` transform **)** Adds a :ref:`Transform2D` command to the :ref:`CanvasItem`'s draw commands. This sets the extra_matrix uniform when executed. This affects the later commands of the canvas item. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_texture_rect: .. rst-class:: classref-method void **canvas_item_add_texture_rect** **(** :ref:`RID` item, :ref:`Rect2` rect, :ref:`RID` texture, :ref:`bool` tile=false, :ref:`Color` modulate=Color( 1, 1, 1, 1 ), :ref:`bool` transpose=false, :ref:`RID` normal_map **)** Adds a textured rect to the :ref:`CanvasItem`'s draw commands. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_texture_rect_region: .. rst-class:: classref-method void **canvas_item_add_texture_rect_region** **(** :ref:`RID` item, :ref:`Rect2` rect, :ref:`RID` texture, :ref:`Rect2` src_rect, :ref:`Color` modulate=Color( 1, 1, 1, 1 ), :ref:`bool` transpose=false, :ref:`RID` normal_map, :ref:`bool` clip_uv=true **)** Adds a texture rect with region setting to the :ref:`CanvasItem`'s draw commands. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_add_triangle_array: .. rst-class:: classref-method void **canvas_item_add_triangle_array** **(** :ref:`RID` item, :ref:`PoolIntArray` indices, :ref:`PoolVector2Array` points, :ref:`PoolColorArray` colors, :ref:`PoolVector2Array` uvs=PoolVector2Array( ), :ref:`PoolIntArray` bones=PoolIntArray( ), :ref:`PoolRealArray` weights=PoolRealArray( ), :ref:`RID` texture, :ref:`int` count=-1, :ref:`RID` normal_map, :ref:`bool` antialiased=false, :ref:`bool` antialiasing_use_indices=false **)** Adds a triangle array to the :ref:`CanvasItem`'s draw commands. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_clear: .. rst-class:: classref-method void **canvas_item_clear** **(** :ref:`RID` item **)** Clears the :ref:`CanvasItem` and removes all commands in it. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_create: .. rst-class:: classref-method :ref:`RID` **canvas_item_create** **(** **)** Creates a new :ref:`CanvasItem` and returns its :ref:`RID`. It can be accessed with the RID that is returned. This RID will be used in all ``canvas_item_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_clip: .. rst-class:: classref-method void **canvas_item_set_clip** **(** :ref:`RID` item, :ref:`bool` clip **)** Sets clipping for the :ref:`CanvasItem`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_copy_to_backbuffer: .. rst-class:: classref-method void **canvas_item_set_copy_to_backbuffer** **(** :ref:`RID` item, :ref:`bool` enabled, :ref:`Rect2` rect **)** Sets the :ref:`CanvasItem` to copy a rect to the backbuffer. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_custom_rect: .. rst-class:: classref-method void **canvas_item_set_custom_rect** **(** :ref:`RID` item, :ref:`bool` use_custom_rect, :ref:`Rect2` rect=Rect2( 0, 0, 0, 0 ) **)** Defines a custom drawing rectangle for the :ref:`CanvasItem`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_distance_field_mode: .. rst-class:: classref-method void **canvas_item_set_distance_field_mode** **(** :ref:`RID` item, :ref:`bool` enabled **)** Enables the use of distance fields for GUI elements that are rendering distance field based fonts. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_draw_behind_parent: .. rst-class:: classref-method void **canvas_item_set_draw_behind_parent** **(** :ref:`RID` item, :ref:`bool` enabled **)** Sets :ref:`CanvasItem` to be drawn behind its parent. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_draw_index: .. rst-class:: classref-method void **canvas_item_set_draw_index** **(** :ref:`RID` item, :ref:`int` index **)** Sets the index for the :ref:`CanvasItem`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_light_mask: .. rst-class:: classref-method void **canvas_item_set_light_mask** **(** :ref:`RID` item, :ref:`int` mask **)** The light mask. See :ref:`LightOccluder2D` for more information on light masks. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_material: .. rst-class:: classref-method void **canvas_item_set_material** **(** :ref:`RID` item, :ref:`RID` material **)** Sets a new material to the :ref:`CanvasItem`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_modulate: .. rst-class:: classref-method void **canvas_item_set_modulate** **(** :ref:`RID` item, :ref:`Color` color **)** Sets the color that modulates the :ref:`CanvasItem` and its children. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_parent: .. rst-class:: classref-method void **canvas_item_set_parent** **(** :ref:`RID` item, :ref:`RID` parent **)** Sets the parent for the :ref:`CanvasItem`. The parent can be another canvas item, or it can be the root canvas that is attached to the viewport. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_self_modulate: .. rst-class:: classref-method void **canvas_item_set_self_modulate** **(** :ref:`RID` item, :ref:`Color` color **)** Sets the color that modulates the :ref:`CanvasItem` without children. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_sort_children_by_y: .. rst-class:: classref-method void **canvas_item_set_sort_children_by_y** **(** :ref:`RID` item, :ref:`bool` enabled **)** Sets if :ref:`CanvasItem`'s children should be sorted by y-position. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_transform: .. rst-class:: classref-method void **canvas_item_set_transform** **(** :ref:`RID` item, :ref:`Transform2D` transform **)** Sets the :ref:`CanvasItem`'s :ref:`Transform2D`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_use_parent_material: .. rst-class:: classref-method void **canvas_item_set_use_parent_material** **(** :ref:`RID` item, :ref:`bool` enabled **)** Sets if the :ref:`CanvasItem` uses its parent's material. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_visible: .. rst-class:: classref-method void **canvas_item_set_visible** **(** :ref:`RID` item, :ref:`bool` visible **)** Sets if the canvas item (including its children) is visible. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_z_as_relative_to_parent: .. rst-class:: classref-method void **canvas_item_set_z_as_relative_to_parent** **(** :ref:`RID` item, :ref:`bool` enabled **)** If this is enabled, the Z index of the parent will be added to the children's Z index. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_item_set_z_index: .. rst-class:: classref-method void **canvas_item_set_z_index** **(** :ref:`RID` item, :ref:`int` z_index **)** Sets the :ref:`CanvasItem`'s Z index, i.e. its draw order (lower indexes are drawn first). .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_attach_to_canvas: .. rst-class:: classref-method void **canvas_light_attach_to_canvas** **(** :ref:`RID` light, :ref:`RID` canvas **)** Attaches the canvas light to the canvas. Removes it from its previous canvas. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_create: .. rst-class:: classref-method :ref:`RID` **canvas_light_create** **(** **)** Creates a canvas light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``canvas_light_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_occluder_attach_to_canvas: .. rst-class:: classref-method void **canvas_light_occluder_attach_to_canvas** **(** :ref:`RID` occluder, :ref:`RID` canvas **)** Attaches a light occluder to the canvas. Removes it from its previous canvas. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_occluder_create: .. rst-class:: classref-method :ref:`RID` **canvas_light_occluder_create** **(** **)** Creates a light occluder and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``canvas_light_ocluder_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_occluder_set_enabled: .. rst-class:: classref-method void **canvas_light_occluder_set_enabled** **(** :ref:`RID` occluder, :ref:`bool` enabled **)** Enables or disables light occluder. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_occluder_set_light_mask: .. rst-class:: classref-method void **canvas_light_occluder_set_light_mask** **(** :ref:`RID` occluder, :ref:`int` mask **)** The light mask. See :ref:`LightOccluder2D` for more information on light masks. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_occluder_set_polygon: .. rst-class:: classref-method void **canvas_light_occluder_set_polygon** **(** :ref:`RID` occluder, :ref:`RID` polygon **)** Sets a light occluder's polygon. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_occluder_set_transform: .. rst-class:: classref-method void **canvas_light_occluder_set_transform** **(** :ref:`RID` occluder, :ref:`Transform2D` transform **)** Sets a light occluder's :ref:`Transform2D`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_color: .. rst-class:: classref-method void **canvas_light_set_color** **(** :ref:`RID` light, :ref:`Color` color **)** Sets the color for a light. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_enabled: .. rst-class:: classref-method void **canvas_light_set_enabled** **(** :ref:`RID` light, :ref:`bool` enabled **)** Enables or disables a canvas light. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_energy: .. rst-class:: classref-method void **canvas_light_set_energy** **(** :ref:`RID` light, :ref:`float` energy **)** Sets a canvas light's energy. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_height: .. rst-class:: classref-method void **canvas_light_set_height** **(** :ref:`RID` light, :ref:`float` height **)** Sets a canvas light's height. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_item_cull_mask: .. rst-class:: classref-method void **canvas_light_set_item_cull_mask** **(** :ref:`RID` light, :ref:`int` mask **)** The light mask. See :ref:`LightOccluder2D` for more information on light masks. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_item_shadow_cull_mask: .. rst-class:: classref-method void **canvas_light_set_item_shadow_cull_mask** **(** :ref:`RID` light, :ref:`int` mask **)** The binary mask used to determine which layers this canvas light's shadows affects. See :ref:`LightOccluder2D` for more information on light masks. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_layer_range: .. rst-class:: classref-method void **canvas_light_set_layer_range** **(** :ref:`RID` light, :ref:`int` min_layer, :ref:`int` max_layer **)** The layer range that gets rendered with this light. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_mode: .. rst-class:: classref-method void **canvas_light_set_mode** **(** :ref:`RID` light, :ref:`CanvasLightMode` mode **)** The mode of the light, see :ref:`CanvasLightMode` constants. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_scale: .. rst-class:: classref-method void **canvas_light_set_scale** **(** :ref:`RID` light, :ref:`float` scale **)** Sets the texture's scale factor of the light. Equivalent to :ref:`Light2D.texture_scale`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_shadow_buffer_size: .. rst-class:: classref-method void **canvas_light_set_shadow_buffer_size** **(** :ref:`RID` light, :ref:`int` size **)** Sets the width of the shadow buffer, size gets scaled to the next power of two for this. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_shadow_color: .. rst-class:: classref-method void **canvas_light_set_shadow_color** **(** :ref:`RID` light, :ref:`Color` color **)** Sets the color of the canvas light's shadow. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_shadow_enabled: .. rst-class:: classref-method void **canvas_light_set_shadow_enabled** **(** :ref:`RID` light, :ref:`bool` enabled **)** Enables or disables the canvas light's shadow. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_shadow_filter: .. rst-class:: classref-method void **canvas_light_set_shadow_filter** **(** :ref:`RID` light, :ref:`CanvasLightShadowFilter` filter **)** Sets the canvas light's shadow's filter, see :ref:`CanvasLightShadowFilter` constants. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_shadow_gradient_length: .. rst-class:: classref-method void **canvas_light_set_shadow_gradient_length** **(** :ref:`RID` light, :ref:`float` length **)** Sets the length of the shadow's gradient. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_shadow_smooth: .. rst-class:: classref-method void **canvas_light_set_shadow_smooth** **(** :ref:`RID` light, :ref:`float` smooth **)** Smoothens the shadow. The lower, the smoother. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_texture: .. rst-class:: classref-method void **canvas_light_set_texture** **(** :ref:`RID` light, :ref:`RID` texture **)** Sets texture to be used by light. Equivalent to :ref:`Light2D.texture`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_texture_offset: .. rst-class:: classref-method void **canvas_light_set_texture_offset** **(** :ref:`RID` light, :ref:`Vector2` offset **)** Sets the offset of the light's texture. Equivalent to :ref:`Light2D.offset`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_transform: .. rst-class:: classref-method void **canvas_light_set_transform** **(** :ref:`RID` light, :ref:`Transform2D` transform **)** Sets the canvas light's :ref:`Transform2D`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_light_set_z_range: .. rst-class:: classref-method void **canvas_light_set_z_range** **(** :ref:`RID` light, :ref:`int` min_z, :ref:`int` max_z **)** Sets the Z range of objects that will be affected by this light. Equivalent to :ref:`Light2D.range_z_min` and :ref:`Light2D.range_z_max`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_occluder_polygon_create: .. rst-class:: classref-method :ref:`RID` **canvas_occluder_polygon_create** **(** **)** Creates a new light occluder polygon and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``canvas_occluder_polygon_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_occluder_polygon_set_cull_mode: .. rst-class:: classref-method void **canvas_occluder_polygon_set_cull_mode** **(** :ref:`RID` occluder_polygon, :ref:`CanvasOccluderPolygonCullMode` mode **)** Sets an occluder polygons cull mode. See :ref:`CanvasOccluderPolygonCullMode` constants. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_occluder_polygon_set_shape: .. rst-class:: classref-method void **canvas_occluder_polygon_set_shape** **(** :ref:`RID` occluder_polygon, :ref:`PoolVector2Array` shape, :ref:`bool` closed **)** Sets the shape of the occluder polygon. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_occluder_polygon_set_shape_as_lines: .. rst-class:: classref-method void **canvas_occluder_polygon_set_shape_as_lines** **(** :ref:`RID` occluder_polygon, :ref:`PoolVector2Array` shape **)** Sets the shape of the occluder polygon as lines. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_set_item_mirroring: .. rst-class:: classref-method void **canvas_set_item_mirroring** **(** :ref:`RID` canvas, :ref:`RID` item, :ref:`Vector2` mirroring **)** A copy of the canvas item will be drawn with a local offset of the mirroring :ref:`Vector2`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_canvas_set_modulate: .. rst-class:: classref-method void **canvas_set_modulate** **(** :ref:`RID` canvas, :ref:`Color` color **)** Modulates all colors in the given canvas. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_directional_light_create: .. rst-class:: classref-method :ref:`RID` **directional_light_create** **(** **)** Creates a directional light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most ``light_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. To place in a scene, attach this directional light to an instance using :ref:`instance_set_base` using the returned RID. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_draw: .. rst-class:: classref-method void **draw** **(** :ref:`bool` swap_buffers=true, :ref:`float` frame_step=0.0 **)** Draws a frame. *This method is deprecated*, please use :ref:`force_draw` instead. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_create: .. rst-class:: classref-method :ref:`RID` **environment_create** **(** **)** Creates an environment and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``environment_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_adjustment: .. rst-class:: classref-method void **environment_set_adjustment** **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` brightness, :ref:`float` contrast, :ref:`float` saturation, :ref:`RID` ramp **)** Sets the values to be used with the "Adjustment" post-process effect. See :ref:`Environment` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_ambient_light: .. rst-class:: classref-method void **environment_set_ambient_light** **(** :ref:`RID` env, :ref:`Color` color, :ref:`float` energy=1.0, :ref:`float` sky_contibution=0.0 **)** Sets the ambient light parameters. See :ref:`Environment` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_background: .. rst-class:: classref-method void **environment_set_background** **(** :ref:`RID` env, :ref:`EnvironmentBG` bg **)** Sets the *BGMode* of the environment. Equivalent to :ref:`Environment.background_mode`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_bg_color: .. rst-class:: classref-method void **environment_set_bg_color** **(** :ref:`RID` env, :ref:`Color` color **)** Color displayed for clear areas of the scene (if using Custom color or Color+Sky background modes). .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_bg_energy: .. rst-class:: classref-method void **environment_set_bg_energy** **(** :ref:`RID` env, :ref:`float` energy **)** Sets the intensity of the background color. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_canvas_max_layer: .. rst-class:: classref-method void **environment_set_canvas_max_layer** **(** :ref:`RID` env, :ref:`int` max_layer **)** Sets the maximum layer to use if using Canvas background mode. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_dof_blur_far: .. rst-class:: classref-method void **environment_set_dof_blur_far** **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` distance, :ref:`float` transition, :ref:`float` far_amount, :ref:`EnvironmentDOFBlurQuality` quality **)** Sets the values to be used with the "DoF Far Blur" post-process effect. See :ref:`Environment` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_dof_blur_near: .. rst-class:: classref-method void **environment_set_dof_blur_near** **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` distance, :ref:`float` transition, :ref:`float` far_amount, :ref:`EnvironmentDOFBlurQuality` quality **)** Sets the values to be used with the "DoF Near Blur" post-process effect. See :ref:`Environment` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_fog: .. rst-class:: classref-method void **environment_set_fog** **(** :ref:`RID` env, :ref:`bool` enable, :ref:`Color` color, :ref:`Color` sun_color, :ref:`float` sun_amount **)** Sets the variables to be used with the scene fog. See :ref:`Environment` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_fog_depth: .. rst-class:: classref-method void **environment_set_fog_depth** **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` depth_begin, :ref:`float` depth_end, :ref:`float` depth_curve, :ref:`bool` transmit, :ref:`float` transmit_curve **)** Sets the variables to be used with the fog depth effect. See :ref:`Environment` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_fog_height: .. rst-class:: classref-method void **environment_set_fog_height** **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` min_height, :ref:`float` max_height, :ref:`float` height_curve **)** Sets the variables to be used with the fog height effect. See :ref:`Environment` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_glow: .. rst-class:: classref-method void **environment_set_glow** **(** :ref:`RID` env, :ref:`bool` enable, :ref:`int` level_flags, :ref:`float` intensity, :ref:`float` strength, :ref:`float` bloom_threshold, :ref:`EnvironmentGlowBlendMode` blend_mode, :ref:`float` hdr_bleed_threshold, :ref:`float` hdr_bleed_scale, :ref:`float` hdr_luminance_cap, :ref:`bool` bicubic_upscale, :ref:`bool` high_quality **)** Sets the variables to be used with the "glow" post-process effect. See :ref:`Environment` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_sky: .. rst-class:: classref-method void **environment_set_sky** **(** :ref:`RID` env, :ref:`RID` sky **)** Sets the :ref:`Sky` to be used as the environment's background when using *BGMode* sky. Equivalent to :ref:`Environment.background_sky`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_sky_custom_fov: .. rst-class:: classref-method void **environment_set_sky_custom_fov** **(** :ref:`RID` env, :ref:`float` scale **)** Sets a custom field of view for the background :ref:`Sky`. Equivalent to :ref:`Environment.background_sky_custom_fov`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_sky_orientation: .. rst-class:: classref-method void **environment_set_sky_orientation** **(** :ref:`RID` env, :ref:`Basis` orientation **)** Sets the rotation of the background :ref:`Sky` expressed as a :ref:`Basis`. Equivalent to :ref:`Environment.background_sky_orientation`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_ssao: .. rst-class:: classref-method void **environment_set_ssao** **(** :ref:`RID` env, :ref:`bool` enable, :ref:`float` radius, :ref:`float` intensity, :ref:`float` radius2, :ref:`float` intensity2, :ref:`float` bias, :ref:`float` light_affect, :ref:`float` ao_channel_affect, :ref:`Color` color, :ref:`EnvironmentSSAOQuality` quality, :ref:`EnvironmentSSAOBlur` blur, :ref:`float` bilateral_sharpness **)** Sets the variables to be used with the "Screen Space Ambient Occlusion (SSAO)" post-process effect. See :ref:`Environment` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_ssr: .. rst-class:: classref-method void **environment_set_ssr** **(** :ref:`RID` env, :ref:`bool` enable, :ref:`int` max_steps, :ref:`float` fade_in, :ref:`float` fade_out, :ref:`float` depth_tolerance, :ref:`bool` roughness **)** Sets the variables to be used with the "screen space reflections" post-process effect. See :ref:`Environment` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_environment_set_tonemap: .. rst-class:: classref-method void **environment_set_tonemap** **(** :ref:`RID` env, :ref:`EnvironmentToneMapper` tone_mapper, :ref:`float` exposure, :ref:`float` white, :ref:`bool` auto_exposure, :ref:`float` min_luminance, :ref:`float` max_luminance, :ref:`float` auto_exp_speed, :ref:`float` auto_exp_grey **)** Sets the variables to be used with the "tonemap" post-process effect. See :ref:`Environment` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_finish: .. rst-class:: classref-method void **finish** **(** **)** Removes buffers and clears testcubes. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_force_draw: .. rst-class:: classref-method void **force_draw** **(** :ref:`bool` swap_buffers=true, :ref:`float` frame_step=0.0 **)** Forces a frame to be drawn when the function is called. Drawing a frame updates all :ref:`Viewport`\ s that are set to update. Use with extreme caution. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_force_sync: .. rst-class:: classref-method void **force_sync** **(** **)** Synchronizes threads. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_free_rid: .. rst-class:: classref-method void **free_rid** **(** :ref:`RID` rid **)** Tries to free an object in the VisualServer. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_get_render_info: .. rst-class:: classref-method :ref:`int` **get_render_info** **(** :ref:`RenderInfo` info **)** Returns a certain information, see :ref:`RenderInfo` for options. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_get_test_cube: .. rst-class:: classref-method :ref:`RID` **get_test_cube** **(** **)** Returns the id of the test cube. Creates one if none exists. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_get_test_texture: .. rst-class:: classref-method :ref:`RID` **get_test_texture** **(** **)** Returns the id of the test texture. Creates one if none exists. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_get_video_adapter_name: .. rst-class:: classref-method :ref:`String` **get_video_adapter_name** **(** **)** |const| Returns the name of the video adapter (e.g. "GeForce GTX 1080/PCIe/SSE2"). \ **Note:** When running a headless or server binary, this function returns an empty string. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_get_video_adapter_vendor: .. rst-class:: classref-method :ref:`String` **get_video_adapter_vendor** **(** **)** |const| Returns the vendor of the video adapter (e.g. "NVIDIA Corporation"). \ **Note:** When running a headless or server binary, this function returns an empty string. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_get_white_texture: .. rst-class:: classref-method :ref:`RID` **get_white_texture** **(** **)** Returns the id of a white texture. Creates one if none exists. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_create: .. rst-class:: classref-method :ref:`RID` **gi_probe_create** **(** **)** Creates a GI probe and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``gi_probe_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. To place in a scene, attach this GI probe to an instance using :ref:`instance_set_base` using the returned RID. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_get_bias: .. rst-class:: classref-method :ref:`float` **gi_probe_get_bias** **(** :ref:`RID` probe **)** |const| Returns the bias value for the GI probe. Bias is used to avoid self occlusion. Equivalent to :ref:`GIProbeData.bias`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_get_bounds: .. rst-class:: classref-method :ref:`AABB` **gi_probe_get_bounds** **(** :ref:`RID` probe **)** |const| Returns the axis-aligned bounding box that covers the full extent of the GI probe. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_get_cell_size: .. rst-class:: classref-method :ref:`float` **gi_probe_get_cell_size** **(** :ref:`RID` probe **)** |const| Returns the cell size set by :ref:`gi_probe_set_cell_size`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_get_dynamic_data: .. rst-class:: classref-method :ref:`PoolIntArray` **gi_probe_get_dynamic_data** **(** :ref:`RID` probe **)** |const| Returns the data used by the GI probe. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_get_dynamic_range: .. rst-class:: classref-method :ref:`int` **gi_probe_get_dynamic_range** **(** :ref:`RID` probe **)** |const| Returns the dynamic range set for this GI probe. Equivalent to :ref:`GIProbe.dynamic_range`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_get_energy: .. rst-class:: classref-method :ref:`float` **gi_probe_get_energy** **(** :ref:`RID` probe **)** |const| Returns the energy multiplier for this GI probe. Equivalent to :ref:`GIProbe.energy`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_get_normal_bias: .. rst-class:: classref-method :ref:`float` **gi_probe_get_normal_bias** **(** :ref:`RID` probe **)** |const| Returns the normal bias for this GI probe. Equivalent to :ref:`GIProbe.normal_bias`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_get_propagation: .. rst-class:: classref-method :ref:`float` **gi_probe_get_propagation** **(** :ref:`RID` probe **)** |const| Returns the propagation value for this GI probe. Equivalent to :ref:`GIProbe.propagation`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_get_to_cell_xform: .. rst-class:: classref-method :ref:`Transform` **gi_probe_get_to_cell_xform** **(** :ref:`RID` probe **)** |const| Returns the Transform set by :ref:`gi_probe_set_to_cell_xform`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_is_compressed: .. rst-class:: classref-method :ref:`bool` **gi_probe_is_compressed** **(** :ref:`RID` probe **)** |const| Returns ``true`` if the GI probe data associated with this GI probe is compressed. Equivalent to :ref:`GIProbe.compress`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_is_interior: .. rst-class:: classref-method :ref:`bool` **gi_probe_is_interior** **(** :ref:`RID` probe **)** |const| Returns ``true`` if the GI probe is set to interior, meaning it does not account for sky light. Equivalent to :ref:`GIProbe.interior`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_set_bias: .. rst-class:: classref-method void **gi_probe_set_bias** **(** :ref:`RID` probe, :ref:`float` bias **)** Sets the bias value to avoid self-occlusion. Equivalent to :ref:`GIProbe.bias`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_set_bounds: .. rst-class:: classref-method void **gi_probe_set_bounds** **(** :ref:`RID` probe, :ref:`AABB` bounds **)** Sets the axis-aligned bounding box that covers the extent of the GI probe. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_set_cell_size: .. rst-class:: classref-method void **gi_probe_set_cell_size** **(** :ref:`RID` probe, :ref:`float` range **)** Sets the size of individual cells within the GI probe. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_set_compress: .. rst-class:: classref-method void **gi_probe_set_compress** **(** :ref:`RID` probe, :ref:`bool` enable **)** Sets the compression setting for the GI probe data. Compressed data will take up less space but may look worse. Equivalent to :ref:`GIProbe.compress`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_set_dynamic_data: .. rst-class:: classref-method void **gi_probe_set_dynamic_data** **(** :ref:`RID` probe, :ref:`PoolIntArray` data **)** Sets the data to be used in the GI probe for lighting calculations. Normally this is created and called internally within the :ref:`GIProbe` node. You should not try to set this yourself. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_set_dynamic_range: .. rst-class:: classref-method void **gi_probe_set_dynamic_range** **(** :ref:`RID` probe, :ref:`int` range **)** Sets the dynamic range of the GI probe. Dynamic range sets the limit for how bright lights can be. A smaller range captures greater detail but limits how bright lights can be. Equivalent to :ref:`GIProbe.dynamic_range`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_set_energy: .. rst-class:: classref-method void **gi_probe_set_energy** **(** :ref:`RID` probe, :ref:`float` energy **)** Sets the energy multiplier for this GI probe. A higher energy makes the indirect light from the GI probe brighter. Equivalent to :ref:`GIProbe.energy`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_set_interior: .. rst-class:: classref-method void **gi_probe_set_interior** **(** :ref:`RID` probe, :ref:`bool` enable **)** Sets the interior value of this GI probe. A GI probe set to interior does not include the sky when calculating lighting. Equivalent to :ref:`GIProbe.interior`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_set_normal_bias: .. rst-class:: classref-method void **gi_probe_set_normal_bias** **(** :ref:`RID` probe, :ref:`float` bias **)** Sets the normal bias for this GI probe. Normal bias behaves similar to the other form of bias and may help reduce self-occlusion. Equivalent to :ref:`GIProbe.normal_bias`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_set_propagation: .. rst-class:: classref-method void **gi_probe_set_propagation** **(** :ref:`RID` probe, :ref:`float` propagation **)** Sets the propagation of light within this GI probe. Equivalent to :ref:`GIProbe.propagation`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_gi_probe_set_to_cell_xform: .. rst-class:: classref-method void **gi_probe_set_to_cell_xform** **(** :ref:`RID` probe, :ref:`Transform` xform **)** Sets the to cell :ref:`Transform` for this GI probe. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_has_changed: .. rst-class:: classref-method :ref:`bool` **has_changed** **(** :ref:`ChangedPriority` queried_priority=0 **)** |const| Returns ``true`` if changes have been made to the VisualServer's data. :ref:`draw` is usually called if this happens. As changes are registered as either high or low priority (e.g. dynamic shaders), this function takes an optional argument to query either low or high priority changes, or any changes. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_has_feature: .. rst-class:: classref-method :ref:`bool` **has_feature** **(** :ref:`Features` feature **)** |const| Not yet implemented. Always returns ``false``. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_has_os_feature: .. rst-class:: classref-method :ref:`bool` **has_os_feature** **(** :ref:`String` feature **)** |const| Returns ``true`` if the OS supports a certain feature. Features might be ``s3tc``, ``etc``, ``etc2``, ``pvrtc`` and ``skinning_fallback``. When rendering with GLES2, returns ``true`` with ``skinning_fallback`` in case the hardware doesn't support the default GPU skinning process. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_begin: .. rst-class:: classref-method void **immediate_begin** **(** :ref:`RID` immediate, :ref:`PrimitiveType` primitive, :ref:`RID` texture **)** Sets up :ref:`ImmediateGeometry` internals to prepare for drawing. Equivalent to :ref:`ImmediateGeometry.begin`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_clear: .. rst-class:: classref-method void **immediate_clear** **(** :ref:`RID` immediate **)** Clears everything that was set up between :ref:`immediate_begin` and :ref:`immediate_end`. Equivalent to :ref:`ImmediateGeometry.clear`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_color: .. rst-class:: classref-method void **immediate_color** **(** :ref:`RID` immediate, :ref:`Color` color **)** Sets the color to be used with next vertex. Equivalent to :ref:`ImmediateGeometry.set_color`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_create: .. rst-class:: classref-method :ref:`RID` **immediate_create** **(** **)** Creates an immediate geometry and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``immediate_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. To place in a scene, attach this immediate geometry to an instance using :ref:`instance_set_base` using the returned RID. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_end: .. rst-class:: classref-method void **immediate_end** **(** :ref:`RID` immediate **)** Ends drawing the :ref:`ImmediateGeometry` and displays it. Equivalent to :ref:`ImmediateGeometry.end`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_get_material: .. rst-class:: classref-method :ref:`RID` **immediate_get_material** **(** :ref:`RID` immediate **)** |const| Returns the material assigned to the :ref:`ImmediateGeometry`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_normal: .. rst-class:: classref-method void **immediate_normal** **(** :ref:`RID` immediate, :ref:`Vector3` normal **)** Sets the normal to be used with next vertex. Equivalent to :ref:`ImmediateGeometry.set_normal`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_set_material: .. rst-class:: classref-method void **immediate_set_material** **(** :ref:`RID` immediate, :ref:`RID` material **)** Sets the material to be used to draw the :ref:`ImmediateGeometry`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_tangent: .. rst-class:: classref-method void **immediate_tangent** **(** :ref:`RID` immediate, :ref:`Plane` tangent **)** Sets the tangent to be used with next vertex. Equivalent to :ref:`ImmediateGeometry.set_tangent`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_uv: .. rst-class:: classref-method void **immediate_uv** **(** :ref:`RID` immediate, :ref:`Vector2` tex_uv **)** Sets the UV to be used with next vertex. Equivalent to :ref:`ImmediateGeometry.set_uv`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_uv2: .. rst-class:: classref-method void **immediate_uv2** **(** :ref:`RID` immediate, :ref:`Vector2` tex_uv **)** Sets the UV2 to be used with next vertex. Equivalent to :ref:`ImmediateGeometry.set_uv2`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_vertex: .. rst-class:: classref-method void **immediate_vertex** **(** :ref:`RID` immediate, :ref:`Vector3` vertex **)** Adds the next vertex using the information provided in advance. Equivalent to :ref:`ImmediateGeometry.add_vertex`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_immediate_vertex_2d: .. rst-class:: classref-method void **immediate_vertex_2d** **(** :ref:`RID` immediate, :ref:`Vector2` vertex **)** Adds the next vertex using the information provided in advance. This is a helper class that calls :ref:`immediate_vertex` under the hood. Equivalent to :ref:`ImmediateGeometry.add_vertex`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_init: .. rst-class:: classref-method void **init** **(** **)** Initializes the visual server. This function is called internally by platform-dependent code during engine initialization. If called from a running game, it will not do anything. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_attach_object_instance_id: .. rst-class:: classref-method void **instance_attach_object_instance_id** **(** :ref:`RID` instance, :ref:`int` id **)** Attaches a unique Object ID to instance. Object ID must be attached to instance for proper culling with :ref:`instances_cull_aabb`, :ref:`instances_cull_convex`, and :ref:`instances_cull_ray`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_attach_skeleton: .. rst-class:: classref-method void **instance_attach_skeleton** **(** :ref:`RID` instance, :ref:`RID` skeleton **)** Attaches a skeleton to an instance. Removes the previous skeleton from the instance. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_create: .. rst-class:: classref-method :ref:`RID` **instance_create** **(** **)** Creates a visual instance and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``instance_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. An instance is a way of placing a 3D object in the scenario. Objects like particles, meshes, and reflection probes need to be associated with an instance to be visible in the scenario using :ref:`instance_set_base`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_create2: .. rst-class:: classref-method :ref:`RID` **instance_create2** **(** :ref:`RID` base, :ref:`RID` scenario **)** Creates a visual instance, adds it to the VisualServer, and sets both base and scenario. It can be accessed with the RID that is returned. This RID will be used in all ``instance_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_geometry_set_as_instance_lod: .. rst-class:: classref-method void **instance_geometry_set_as_instance_lod** **(** :ref:`RID` instance, :ref:`RID` as_lod_of_instance **)** Not implemented in Godot 3.x. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_geometry_set_cast_shadows_setting: .. rst-class:: classref-method void **instance_geometry_set_cast_shadows_setting** **(** :ref:`RID` instance, :ref:`ShadowCastingSetting` shadow_casting_setting **)** Sets the shadow casting setting to one of :ref:`ShadowCastingSetting`. Equivalent to :ref:`GeometryInstance.cast_shadow`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_geometry_set_draw_range: .. rst-class:: classref-method void **instance_geometry_set_draw_range** **(** :ref:`RID` instance, :ref:`float` min, :ref:`float` max, :ref:`float` min_margin, :ref:`float` max_margin **)** Not implemented in Godot 3.x. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_geometry_set_flag: .. rst-class:: classref-method void **instance_geometry_set_flag** **(** :ref:`RID` instance, :ref:`InstanceFlags` flag, :ref:`bool` enabled **)** Sets the flag for a given :ref:`InstanceFlags`. See :ref:`InstanceFlags` for more details. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_geometry_set_material_overlay: .. rst-class:: classref-method void **instance_geometry_set_material_overlay** **(** :ref:`RID` instance, :ref:`RID` material **)** Sets a material that will be rendered for all surfaces on top of active materials for the mesh associated with this instance. Equivalent to :ref:`GeometryInstance.material_overlay`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_geometry_set_material_override: .. rst-class:: classref-method void **instance_geometry_set_material_override** **(** :ref:`RID` instance, :ref:`RID` material **)** Sets a material that will override the material for all surfaces on the mesh associated with this instance. Equivalent to :ref:`GeometryInstance.material_override`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_set_base: .. rst-class:: classref-method void **instance_set_base** **(** :ref:`RID` instance, :ref:`RID` base **)** Sets the base of the instance. A base can be any of the 3D objects that are created in the VisualServer that can be displayed. For example, any of the light types, mesh, multimesh, immediate geometry, particle system, reflection probe, lightmap capture, and the GI probe are all types that can be set as the base of an instance in order to be displayed in the scenario. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_set_blend_shape_weight: .. rst-class:: classref-method void **instance_set_blend_shape_weight** **(** :ref:`RID` instance, :ref:`int` shape, :ref:`float` weight **)** Sets the weight for a given blend shape associated with this instance. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_set_custom_aabb: .. rst-class:: classref-method void **instance_set_custom_aabb** **(** :ref:`RID` instance, :ref:`AABB` aabb **)** Sets a custom AABB to use when culling objects from the view frustum. Equivalent to :ref:`GeometryInstance.set_custom_aabb`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_set_exterior: .. rst-class:: classref-method void **instance_set_exterior** **(** :ref:`RID` instance, :ref:`bool` enabled **)** Function not implemented in Godot 3.x. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_set_extra_visibility_margin: .. rst-class:: classref-method void **instance_set_extra_visibility_margin** **(** :ref:`RID` instance, :ref:`float` margin **)** Sets a margin to increase the size of the AABB when culling objects from the view frustum. This allows you to avoid culling objects that fall outside the view frustum. Equivalent to :ref:`GeometryInstance.extra_cull_margin`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_set_layer_mask: .. rst-class:: classref-method void **instance_set_layer_mask** **(** :ref:`RID` instance, :ref:`int` mask **)** Sets the render layers that this instance will be drawn to. Equivalent to :ref:`VisualInstance.layers`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_set_scenario: .. rst-class:: classref-method void **instance_set_scenario** **(** :ref:`RID` instance, :ref:`RID` scenario **)** Sets the scenario that the instance is in. The scenario is the 3D world that the objects will be displayed in. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_set_surface_material: .. rst-class:: classref-method void **instance_set_surface_material** **(** :ref:`RID` instance, :ref:`int` surface, :ref:`RID` material **)** Sets the material of a specific surface. Equivalent to :ref:`MeshInstance.set_surface_material`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_set_transform: .. rst-class:: classref-method void **instance_set_transform** **(** :ref:`RID` instance, :ref:`Transform` transform **)** Sets the world space transform of the instance. Equivalent to :ref:`Spatial.transform`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_set_use_lightmap: .. rst-class:: classref-method void **instance_set_use_lightmap** **(** :ref:`RID` instance, :ref:`RID` lightmap_instance, :ref:`RID` lightmap, :ref:`int` lightmap_slice=-1, :ref:`Rect2` lightmap_uv_rect=Rect2( 0, 0, 1, 1 ) **)** Sets the lightmap to use with this instance. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instance_set_visible: .. rst-class:: classref-method void **instance_set_visible** **(** :ref:`RID` instance, :ref:`bool` visible **)** Sets whether an instance is drawn or not. Equivalent to :ref:`Spatial.visible`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instances_cull_aabb: .. rst-class:: classref-method :ref:`Array` **instances_cull_aabb** **(** :ref:`AABB` aabb, :ref:`RID` scenario **)** |const| Returns an array of object IDs intersecting with the provided AABB. Only visual 3D nodes are considered, such as :ref:`MeshInstance` or :ref:`DirectionalLight`. Use :ref:`@GDScript.instance_from_id` to obtain the actual nodes. A scenario RID must be provided, which is available in the :ref:`World` you want to query. This forces an update for all resources queued to update. \ **Warning:** This function is primarily intended for editor usage. For in-game use cases, prefer physics collision. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instances_cull_convex: .. rst-class:: classref-method :ref:`Array` **instances_cull_convex** **(** :ref:`Array` convex, :ref:`RID` scenario **)** |const| Returns an array of object IDs intersecting with the provided convex shape. Only visual 3D nodes are considered, such as :ref:`MeshInstance` or :ref:`DirectionalLight`. Use :ref:`@GDScript.instance_from_id` to obtain the actual nodes. A scenario RID must be provided, which is available in the :ref:`World` you want to query. This forces an update for all resources queued to update. \ **Warning:** This function is primarily intended for editor usage. For in-game use cases, prefer physics collision. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_instances_cull_ray: .. rst-class:: classref-method :ref:`Array` **instances_cull_ray** **(** :ref:`Vector3` from, :ref:`Vector3` to, :ref:`RID` scenario **)** |const| Returns an array of object IDs intersecting with the provided 3D ray. Only visual 3D nodes are considered, such as :ref:`MeshInstance` or :ref:`DirectionalLight`. Use :ref:`@GDScript.instance_from_id` to obtain the actual nodes. A scenario RID must be provided, which is available in the :ref:`World` you want to query. This forces an update for all resources queued to update. \ **Warning:** This function is primarily intended for editor usage. For in-game use cases, prefer physics collision. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_directional_set_blend_splits: .. rst-class:: classref-method void **light_directional_set_blend_splits** **(** :ref:`RID` light, :ref:`bool` enable **)** If ``true``, this directional light will blend between shadow map splits resulting in a smoother transition between them. Equivalent to :ref:`DirectionalLight.directional_shadow_blend_splits`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_directional_set_shadow_depth_range_mode: .. rst-class:: classref-method void **light_directional_set_shadow_depth_range_mode** **(** :ref:`RID` light, :ref:`LightDirectionalShadowDepthRangeMode` range_mode **)** Sets the shadow depth range mode for this directional light. Equivalent to :ref:`DirectionalLight.directional_shadow_depth_range`. See :ref:`LightDirectionalShadowDepthRangeMode` for options. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_directional_set_shadow_mode: .. rst-class:: classref-method void **light_directional_set_shadow_mode** **(** :ref:`RID` light, :ref:`LightDirectionalShadowMode` mode **)** Sets the shadow mode for this directional light. Equivalent to :ref:`DirectionalLight.directional_shadow_mode`. See :ref:`LightDirectionalShadowMode` for options. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_omni_set_shadow_detail: .. rst-class:: classref-method void **light_omni_set_shadow_detail** **(** :ref:`RID` light, :ref:`LightOmniShadowDetail` detail **)** Sets whether to use vertical or horizontal detail for this omni light. This can be used to alleviate artifacts in the shadow map. Equivalent to :ref:`OmniLight.omni_shadow_detail`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_omni_set_shadow_mode: .. rst-class:: classref-method void **light_omni_set_shadow_mode** **(** :ref:`RID` light, :ref:`LightOmniShadowMode` mode **)** Sets whether to use a dual paraboloid or a cubemap for the shadow map. Dual paraboloid is faster but may suffer from artifacts. Equivalent to :ref:`OmniLight.omni_shadow_mode`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_set_bake_mode: .. rst-class:: classref-method void **light_set_bake_mode** **(** :ref:`RID` light, :ref:`LightBakeMode` bake_mode **)** Sets the bake mode for this light, see :ref:`LightBakeMode` for options. The bake mode affects how the light will be baked in :ref:`BakedLightmap`\ s and :ref:`GIProbe`\ s. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_set_color: .. rst-class:: classref-method void **light_set_color** **(** :ref:`RID` light, :ref:`Color` color **)** Sets the color of the light. Equivalent to :ref:`Light.light_color`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_set_cull_mask: .. rst-class:: classref-method void **light_set_cull_mask** **(** :ref:`RID` light, :ref:`int` mask **)** Sets the cull mask for this Light. Lights only affect objects in the selected layers. Equivalent to :ref:`Light.light_cull_mask`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_set_negative: .. rst-class:: classref-method void **light_set_negative** **(** :ref:`RID` light, :ref:`bool` enable **)** If ``true``, light will subtract light instead of adding light. Equivalent to :ref:`Light.light_negative`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_set_param: .. rst-class:: classref-method void **light_set_param** **(** :ref:`RID` light, :ref:`LightParam` param, :ref:`float` value **)** Sets the specified light parameter. See :ref:`LightParam` for options. Equivalent to :ref:`Light.set_param`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_set_projector: .. rst-class:: classref-method void **light_set_projector** **(** :ref:`RID` light, :ref:`RID` texture **)** Not implemented in Godot 3.x. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_set_reverse_cull_face_mode: .. rst-class:: classref-method void **light_set_reverse_cull_face_mode** **(** :ref:`RID` light, :ref:`bool` enabled **)** If ``true``, reverses the backface culling of the mesh. This can be useful when you have a flat mesh that has a light behind it. If you need to cast a shadow on both sides of the mesh, set the mesh to use double sided shadows with :ref:`instance_geometry_set_cast_shadows_setting`. Equivalent to :ref:`Light.shadow_reverse_cull_face`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_set_shadow: .. rst-class:: classref-method void **light_set_shadow** **(** :ref:`RID` light, :ref:`bool` enabled **)** If ``true``, light will cast shadows. Equivalent to :ref:`Light.shadow_enabled`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_set_shadow_color: .. rst-class:: classref-method void **light_set_shadow_color** **(** :ref:`RID` light, :ref:`Color` color **)** Sets the color of the shadow cast by the light. Equivalent to :ref:`Light.shadow_color`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_light_set_use_gi: .. rst-class:: classref-method void **light_set_use_gi** **(** :ref:`RID` light, :ref:`bool` enabled **)** Sets whether GI probes capture light information from this light. *Deprecated method.* Use :ref:`light_set_bake_mode` instead. This method is only kept for compatibility reasons and calls :ref:`light_set_bake_mode` internally, setting the bake mode to :ref:`LIGHT_BAKE_DISABLED` or :ref:`LIGHT_BAKE_INDIRECT` depending on the given parameter. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_create: .. rst-class:: classref-method :ref:`RID` **lightmap_capture_create** **(** **)** Creates a lightmap capture and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``lightmap_capture_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. To place in a scene, attach this lightmap capture to an instance using :ref:`instance_set_base` using the returned RID. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_get_bounds: .. rst-class:: classref-method :ref:`AABB` **lightmap_capture_get_bounds** **(** :ref:`RID` capture **)** |const| Returns the size of the lightmap capture area. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_get_energy: .. rst-class:: classref-method :ref:`float` **lightmap_capture_get_energy** **(** :ref:`RID` capture **)** |const| Returns the energy multiplier used by the lightmap capture. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_get_octree: .. rst-class:: classref-method :ref:`PoolByteArray` **lightmap_capture_get_octree** **(** :ref:`RID` capture **)** |const| Returns the octree used by the lightmap capture. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_get_octree_cell_subdiv: .. rst-class:: classref-method :ref:`int` **lightmap_capture_get_octree_cell_subdiv** **(** :ref:`RID` capture **)** |const| Returns the cell subdivision amount used by this lightmap capture's octree. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_get_octree_cell_transform: .. rst-class:: classref-method :ref:`Transform` **lightmap_capture_get_octree_cell_transform** **(** :ref:`RID` capture **)** |const| Returns the cell transform for this lightmap capture's octree. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_is_interior: .. rst-class:: classref-method :ref:`bool` **lightmap_capture_is_interior** **(** :ref:`RID` capture **)** |const| Returns ``true`` if capture is in "interior" mode. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_set_bounds: .. rst-class:: classref-method void **lightmap_capture_set_bounds** **(** :ref:`RID` capture, :ref:`AABB` bounds **)** Sets the size of the area covered by the lightmap capture. Equivalent to :ref:`BakedLightmapData.bounds`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_set_energy: .. rst-class:: classref-method void **lightmap_capture_set_energy** **(** :ref:`RID` capture, :ref:`float` energy **)** Sets the energy multiplier for this lightmap capture. Equivalent to :ref:`BakedLightmapData.energy`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_set_interior: .. rst-class:: classref-method void **lightmap_capture_set_interior** **(** :ref:`RID` capture, :ref:`bool` interior **)** Sets the "interior" mode for this lightmap capture. Equivalent to :ref:`BakedLightmapData.interior`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_set_octree: .. rst-class:: classref-method void **lightmap_capture_set_octree** **(** :ref:`RID` capture, :ref:`PoolByteArray` octree **)** Sets the octree to be used by this lightmap capture. This function is normally used by the :ref:`BakedLightmap` node. Equivalent to :ref:`BakedLightmapData.octree`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_set_octree_cell_subdiv: .. rst-class:: classref-method void **lightmap_capture_set_octree_cell_subdiv** **(** :ref:`RID` capture, :ref:`int` subdiv **)** Sets the subdivision level of this lightmap capture's octree. Equivalent to :ref:`BakedLightmapData.cell_subdiv`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_lightmap_capture_set_octree_cell_transform: .. rst-class:: classref-method void **lightmap_capture_set_octree_cell_transform** **(** :ref:`RID` capture, :ref:`Transform` xform **)** Sets the octree cell transform for this lightmap capture's octree. Equivalent to :ref:`BakedLightmapData.cell_space_transform`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_make_sphere_mesh: .. rst-class:: classref-method :ref:`RID` **make_sphere_mesh** **(** :ref:`int` latitudes, :ref:`int` longitudes, :ref:`float` radius **)** Returns a mesh of a sphere with the given amount of horizontal and vertical subdivisions. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_material_create: .. rst-class:: classref-method :ref:`RID` **material_create** **(** **)** Creates an empty material and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``material_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_material_get_param: .. rst-class:: classref-method :ref:`Variant` **material_get_param** **(** :ref:`RID` material, :ref:`String` parameter **)** |const| Returns the value of a certain material's parameter. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_material_get_param_default: .. rst-class:: classref-method :ref:`Variant` **material_get_param_default** **(** :ref:`RID` material, :ref:`String` parameter **)** |const| Returns the default value for the param if available. Returns ``null`` otherwise. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_material_get_shader: .. rst-class:: classref-method :ref:`RID` **material_get_shader** **(** :ref:`RID` shader_material **)** |const| Returns the shader of a certain material's shader. Returns an empty RID if the material doesn't have a shader. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_material_set_line_width: .. rst-class:: classref-method void **material_set_line_width** **(** :ref:`RID` material, :ref:`float` width **)** Sets a material's line width. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_material_set_next_pass: .. rst-class:: classref-method void **material_set_next_pass** **(** :ref:`RID` material, :ref:`RID` next_material **)** Sets an object's next material. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_material_set_param: .. rst-class:: classref-method void **material_set_param** **(** :ref:`RID` material, :ref:`String` parameter, :ref:`Variant` value **)** Sets a material's parameter. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_material_set_render_priority: .. rst-class:: classref-method void **material_set_render_priority** **(** :ref:`RID` material, :ref:`int` priority **)** Sets a material's render priority. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_material_set_shader: .. rst-class:: classref-method void **material_set_shader** **(** :ref:`RID` shader_material, :ref:`RID` shader **)** Sets a shader material's shader. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_add_surface_from_arrays: .. rst-class:: classref-method void **mesh_add_surface_from_arrays** **(** :ref:`RID` mesh, :ref:`PrimitiveType` primitive, :ref:`Array` arrays, :ref:`Array` blend_shapes=[ ], :ref:`int` compress_format=2194432 **)** Adds a surface generated from the Arrays to a mesh. See :ref:`PrimitiveType` constants for types. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_clear: .. rst-class:: classref-method void **mesh_clear** **(** :ref:`RID` mesh **)** Removes all surfaces from a mesh. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_create: .. rst-class:: classref-method :ref:`RID` **mesh_create** **(** **)** Creates a new mesh and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``mesh_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. To place in a scene, attach this mesh to an instance using :ref:`instance_set_base` using the returned RID. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_get_blend_shape_count: .. rst-class:: classref-method :ref:`int` **mesh_get_blend_shape_count** **(** :ref:`RID` mesh **)** |const| Returns a mesh's blend shape count. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_get_blend_shape_mode: .. rst-class:: classref-method :ref:`BlendShapeMode` **mesh_get_blend_shape_mode** **(** :ref:`RID` mesh **)** |const| Returns a mesh's blend shape mode. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_get_custom_aabb: .. rst-class:: classref-method :ref:`AABB` **mesh_get_custom_aabb** **(** :ref:`RID` mesh **)** |const| Returns a mesh's custom aabb. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_get_surface_count: .. rst-class:: classref-method :ref:`int` **mesh_get_surface_count** **(** :ref:`RID` mesh **)** |const| Returns a mesh's number of surfaces. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_remove_surface: .. rst-class:: classref-method void **mesh_remove_surface** **(** :ref:`RID` mesh, :ref:`int` index **)** Removes a mesh's surface. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_set_blend_shape_count: .. rst-class:: classref-method void **mesh_set_blend_shape_count** **(** :ref:`RID` mesh, :ref:`int` amount **)** Sets a mesh's blend shape count. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_set_blend_shape_mode: .. rst-class:: classref-method void **mesh_set_blend_shape_mode** **(** :ref:`RID` mesh, :ref:`BlendShapeMode` mode **)** Sets a mesh's blend shape mode. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_set_custom_aabb: .. rst-class:: classref-method void **mesh_set_custom_aabb** **(** :ref:`RID` mesh, :ref:`AABB` aabb **)** Sets a mesh's custom aabb. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_aabb: .. rst-class:: classref-method :ref:`AABB` **mesh_surface_get_aabb** **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| Returns a mesh's surface's aabb. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_array: .. rst-class:: classref-method :ref:`PoolByteArray` **mesh_surface_get_array** **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| Returns a mesh's surface's vertex buffer. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_array_index_len: .. rst-class:: classref-method :ref:`int` **mesh_surface_get_array_index_len** **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| Returns a mesh's surface's amount of indices. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_array_len: .. rst-class:: classref-method :ref:`int` **mesh_surface_get_array_len** **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| Returns a mesh's surface's amount of vertices. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_arrays: .. rst-class:: classref-method :ref:`Array` **mesh_surface_get_arrays** **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| Returns a mesh's surface's buffer arrays. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_blend_shape_arrays: .. rst-class:: classref-method :ref:`Array` **mesh_surface_get_blend_shape_arrays** **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| Returns a mesh's surface's arrays for blend shapes. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_format: .. rst-class:: classref-method :ref:`int` **mesh_surface_get_format** **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| Returns the format of a mesh's surface. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_format_offset: .. rst-class:: classref-method :ref:`int` **mesh_surface_get_format_offset** **(** :ref:`int` format, :ref:`int` vertex_len, :ref:`int` index_len, :ref:`int` array_index **)** |const| Function is unused in Godot 3.x. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_format_stride: .. rst-class:: classref-method :ref:`int` **mesh_surface_get_format_stride** **(** :ref:`int` format, :ref:`int` vertex_len, :ref:`int` index_len, :ref:`int` array_index **)** |const| .. container:: contribute There is currently no description for this method. Please help us by :ref:`contributing one `! .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_index_array: .. rst-class:: classref-method :ref:`PoolByteArray` **mesh_surface_get_index_array** **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| Returns a mesh's surface's index buffer. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_material: .. rst-class:: classref-method :ref:`RID` **mesh_surface_get_material** **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| Returns a mesh's surface's material. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_primitive_type: .. rst-class:: classref-method :ref:`PrimitiveType` **mesh_surface_get_primitive_type** **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| Returns the primitive type of a mesh's surface. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_get_skeleton_aabb: .. rst-class:: classref-method :ref:`Array` **mesh_surface_get_skeleton_aabb** **(** :ref:`RID` mesh, :ref:`int` surface **)** |const| Returns the aabb of a mesh's surface's skeleton. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_set_material: .. rst-class:: classref-method void **mesh_surface_set_material** **(** :ref:`RID` mesh, :ref:`int` surface, :ref:`RID` material **)** Sets a mesh's surface's material. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_mesh_surface_update_region: .. rst-class:: classref-method void **mesh_surface_update_region** **(** :ref:`RID` mesh, :ref:`int` surface, :ref:`int` offset, :ref:`PoolByteArray` data **)** Updates a specific region of a vertex buffer for the specified surface. Warning: this function alters the vertex buffer directly with no safety mechanisms, you can easily corrupt your mesh. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_allocate: .. rst-class:: classref-method void **multimesh_allocate** **(** :ref:`RID` multimesh, :ref:`int` instances, :ref:`MultimeshTransformFormat` transform_format, :ref:`MultimeshColorFormat` color_format, :ref:`MultimeshCustomDataFormat` custom_data_format=0 **)** Allocates space for the multimesh data. Format parameters determine how the data will be stored by OpenGL. See :ref:`MultimeshTransformFormat`, :ref:`MultimeshColorFormat`, and :ref:`MultimeshCustomDataFormat` for usage. Equivalent to :ref:`MultiMesh.instance_count`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_create: .. rst-class:: classref-method :ref:`RID` **multimesh_create** **(** **)** Creates a new multimesh on the VisualServer and returns an :ref:`RID` handle. This RID will be used in all ``multimesh_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. To place in a scene, attach this multimesh to an instance using :ref:`instance_set_base` using the returned RID. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_get_aabb: .. rst-class:: classref-method :ref:`AABB` **multimesh_get_aabb** **(** :ref:`RID` multimesh **)** |const| Calculates and returns the axis-aligned bounding box that encloses all instances within the multimesh. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_get_instance_count: .. rst-class:: classref-method :ref:`int` **multimesh_get_instance_count** **(** :ref:`RID` multimesh **)** |const| Returns the number of instances allocated for this multimesh. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_get_mesh: .. rst-class:: classref-method :ref:`RID` **multimesh_get_mesh** **(** :ref:`RID` multimesh **)** |const| Returns the RID of the mesh that will be used in drawing this multimesh. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_get_visible_instances: .. rst-class:: classref-method :ref:`int` **multimesh_get_visible_instances** **(** :ref:`RID` multimesh **)** |const| Returns the number of visible instances for this multimesh. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_instance_get_color: .. rst-class:: classref-method :ref:`Color` **multimesh_instance_get_color** **(** :ref:`RID` multimesh, :ref:`int` index **)** |const| Returns the color by which the specified instance will be modulated. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_instance_get_custom_data: .. rst-class:: classref-method :ref:`Color` **multimesh_instance_get_custom_data** **(** :ref:`RID` multimesh, :ref:`int` index **)** |const| Returns the custom data associated with the specified instance. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_instance_get_transform: .. rst-class:: classref-method :ref:`Transform` **multimesh_instance_get_transform** **(** :ref:`RID` multimesh, :ref:`int` index **)** |const| Returns the :ref:`Transform` of the specified instance. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_instance_get_transform_2d: .. rst-class:: classref-method :ref:`Transform2D` **multimesh_instance_get_transform_2d** **(** :ref:`RID` multimesh, :ref:`int` index **)** |const| Returns the :ref:`Transform2D` of the specified instance. For use when the multimesh is set to use 2D transforms. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_instance_set_color: .. rst-class:: classref-method void **multimesh_instance_set_color** **(** :ref:`RID` multimesh, :ref:`int` index, :ref:`Color` color **)** Sets the color by which this instance will be modulated. Equivalent to :ref:`MultiMesh.set_instance_color`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_instance_set_custom_data: .. rst-class:: classref-method void **multimesh_instance_set_custom_data** **(** :ref:`RID` multimesh, :ref:`int` index, :ref:`Color` custom_data **)** Sets the custom data for this instance. Custom data is passed as a :ref:`Color`, but is interpreted as a ``vec4`` in the shader. Equivalent to :ref:`MultiMesh.set_instance_custom_data`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_instance_set_transform: .. rst-class:: classref-method void **multimesh_instance_set_transform** **(** :ref:`RID` multimesh, :ref:`int` index, :ref:`Transform` transform **)** Sets the :ref:`Transform` for this instance. Equivalent to :ref:`MultiMesh.set_instance_transform`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_instance_set_transform_2d: .. rst-class:: classref-method void **multimesh_instance_set_transform_2d** **(** :ref:`RID` multimesh, :ref:`int` index, :ref:`Transform2D` transform **)** Sets the :ref:`Transform2D` for this instance. For use when multimesh is used in 2D. Equivalent to :ref:`MultiMesh.set_instance_transform_2d`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_set_as_bulk_array: .. rst-class:: classref-method void **multimesh_set_as_bulk_array** **(** :ref:`RID` multimesh, :ref:`PoolRealArray` array **)** Sets all data related to the instances in one go. This is especially useful when loading the data from disk or preparing the data from GDNative. All data is packed in one large float array. An array may look like this: Transform for instance 1, color data for instance 1, custom data for instance 1, transform for instance 2, color data for instance 2, etc. \ :ref:`Transform` is stored as 12 floats, :ref:`Transform2D` is stored as 8 floats, ``COLOR_8BIT`` / ``CUSTOM_DATA_8BIT`` is stored as 1 float (4 bytes as is) and ``COLOR_FLOAT`` / ``CUSTOM_DATA_FLOAT`` is stored as 4 floats. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_set_mesh: .. rst-class:: classref-method void **multimesh_set_mesh** **(** :ref:`RID` multimesh, :ref:`RID` mesh **)** Sets the mesh to be drawn by the multimesh. Equivalent to :ref:`MultiMesh.mesh`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_multimesh_set_visible_instances: .. rst-class:: classref-method void **multimesh_set_visible_instances** **(** :ref:`RID` multimesh, :ref:`int` visible **)** Sets the number of instances visible at a given time. If -1, all instances that have been allocated are drawn. Equivalent to :ref:`MultiMesh.visible_instance_count`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_omni_light_create: .. rst-class:: classref-method :ref:`RID` **omni_light_create** **(** **)** Creates a new omni light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most ``light_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. To place in a scene, attach this omni light to an instance using :ref:`instance_set_base` using the returned RID. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_create: .. rst-class:: classref-method :ref:`RID` **particles_create** **(** **)** Creates a particle system and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``particles_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. To place in a scene, attach these particles to an instance using :ref:`instance_set_base` using the returned RID. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_get_current_aabb: .. rst-class:: classref-method :ref:`AABB` **particles_get_current_aabb** **(** :ref:`RID` particles **)** Calculates and returns the axis-aligned bounding box that contains all the particles. Equivalent to :ref:`Particles.capture_aabb`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_get_emitting: .. rst-class:: classref-method :ref:`bool` **particles_get_emitting** **(** :ref:`RID` particles **)** Returns ``true`` if particles are currently set to emitting. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_is_inactive: .. rst-class:: classref-method :ref:`bool` **particles_is_inactive** **(** :ref:`RID` particles **)** Returns ``true`` if particles are not emitting and particles are set to inactive. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_request_process: .. rst-class:: classref-method void **particles_request_process** **(** :ref:`RID` particles **)** Add particle system to list of particle systems that need to be updated. Update will take place on the next frame, or on the next call to :ref:`instances_cull_aabb`, :ref:`instances_cull_convex`, or :ref:`instances_cull_ray`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_restart: .. rst-class:: classref-method void **particles_restart** **(** :ref:`RID` particles **)** Reset the particles on the next update. Equivalent to :ref:`Particles.restart`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_amount: .. rst-class:: classref-method void **particles_set_amount** **(** :ref:`RID` particles, :ref:`int` amount **)** Sets the number of particles to be drawn and allocates the memory for them. Equivalent to :ref:`Particles.amount`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_custom_aabb: .. rst-class:: classref-method void **particles_set_custom_aabb** **(** :ref:`RID` particles, :ref:`AABB` aabb **)** Sets a custom axis-aligned bounding box for the particle system. Equivalent to :ref:`Particles.visibility_aabb`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_draw_order: .. rst-class:: classref-method void **particles_set_draw_order** **(** :ref:`RID` particles, :ref:`ParticlesDrawOrder` order **)** Sets the draw order of the particles to one of the named enums from :ref:`ParticlesDrawOrder`. See :ref:`ParticlesDrawOrder` for options. Equivalent to :ref:`Particles.draw_order`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_draw_pass_mesh: .. rst-class:: classref-method void **particles_set_draw_pass_mesh** **(** :ref:`RID` particles, :ref:`int` pass, :ref:`RID` mesh **)** Sets the mesh to be used for the specified draw pass. Equivalent to :ref:`Particles.draw_pass_1`, :ref:`Particles.draw_pass_2`, :ref:`Particles.draw_pass_3`, and :ref:`Particles.draw_pass_4`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_draw_passes: .. rst-class:: classref-method void **particles_set_draw_passes** **(** :ref:`RID` particles, :ref:`int` count **)** Sets the number of draw passes to use. Equivalent to :ref:`Particles.draw_passes`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_emission_transform: .. rst-class:: classref-method void **particles_set_emission_transform** **(** :ref:`RID` particles, :ref:`Transform` transform **)** Sets the :ref:`Transform` that will be used by the particles when they first emit. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_emitting: .. rst-class:: classref-method void **particles_set_emitting** **(** :ref:`RID` particles, :ref:`bool` emitting **)** If ``true``, particles will emit over time. Setting to false does not reset the particles, but only stops their emission. Equivalent to :ref:`Particles.emitting`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_explosiveness_ratio: .. rst-class:: classref-method void **particles_set_explosiveness_ratio** **(** :ref:`RID` particles, :ref:`float` ratio **)** Sets the explosiveness ratio. Equivalent to :ref:`Particles.explosiveness`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_fixed_fps: .. rst-class:: classref-method void **particles_set_fixed_fps** **(** :ref:`RID` particles, :ref:`int` fps **)** Sets the frame rate that the particle system rendering will be fixed to. Equivalent to :ref:`Particles.fixed_fps`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_fractional_delta: .. rst-class:: classref-method void **particles_set_fractional_delta** **(** :ref:`RID` particles, :ref:`bool` enable **)** If ``true``, uses fractional delta which smooths the movement of the particles. Equivalent to :ref:`Particles.fract_delta`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_lifetime: .. rst-class:: classref-method void **particles_set_lifetime** **(** :ref:`RID` particles, :ref:`float` lifetime **)** Sets the lifetime of each particle in the system. Equivalent to :ref:`Particles.lifetime`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_one_shot: .. rst-class:: classref-method void **particles_set_one_shot** **(** :ref:`RID` particles, :ref:`bool` one_shot **)** If ``true``, particles will emit once and then stop. Equivalent to :ref:`Particles.one_shot`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_pre_process_time: .. rst-class:: classref-method void **particles_set_pre_process_time** **(** :ref:`RID` particles, :ref:`float` time **)** Sets the preprocess time for the particles' animation. This lets you delay starting an animation until after the particles have begun emitting. Equivalent to :ref:`Particles.preprocess`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_process_material: .. rst-class:: classref-method void **particles_set_process_material** **(** :ref:`RID` particles, :ref:`RID` material **)** Sets the material for processing the particles. \ **Note:** This is not the material used to draw the materials. Equivalent to :ref:`Particles.process_material`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_randomness_ratio: .. rst-class:: classref-method void **particles_set_randomness_ratio** **(** :ref:`RID` particles, :ref:`float` ratio **)** Sets the emission randomness ratio. This randomizes the emission of particles within their phase. Equivalent to :ref:`Particles.randomness`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_speed_scale: .. rst-class:: classref-method void **particles_set_speed_scale** **(** :ref:`RID` particles, :ref:`float` scale **)** Sets the speed scale of the particle system. Equivalent to :ref:`Particles.speed_scale`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_particles_set_use_local_coordinates: .. rst-class:: classref-method void **particles_set_use_local_coordinates** **(** :ref:`RID` particles, :ref:`bool` enable **)** If ``true``, particles use local coordinates. If ``false`` they use global coordinates. Equivalent to :ref:`Particles.local_coords`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_create: .. rst-class:: classref-method :ref:`RID` **reflection_probe_create** **(** **)** Creates a reflection probe and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``reflection_probe_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. To place in a scene, attach this reflection probe to an instance using :ref:`instance_set_base` using the returned RID. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_as_interior: .. rst-class:: classref-method void **reflection_probe_set_as_interior** **(** :ref:`RID` probe, :ref:`bool` enable **)** If ``true``, reflections will ignore sky contribution. Equivalent to :ref:`ReflectionProbe.interior_enable`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_cull_mask: .. rst-class:: classref-method void **reflection_probe_set_cull_mask** **(** :ref:`RID` probe, :ref:`int` layers **)** Sets the render cull mask for this reflection probe. Only instances with a matching cull mask will be rendered by this probe. Equivalent to :ref:`ReflectionProbe.cull_mask`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_enable_box_projection: .. rst-class:: classref-method void **reflection_probe_set_enable_box_projection** **(** :ref:`RID` probe, :ref:`bool` enable **)** If ``true``, uses box projection. This can make reflections look more correct in certain situations. Equivalent to :ref:`ReflectionProbe.box_projection`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_enable_shadows: .. rst-class:: classref-method void **reflection_probe_set_enable_shadows** **(** :ref:`RID` probe, :ref:`bool` enable **)** If ``true``, computes shadows in the reflection probe. This makes the reflection much slower to compute. Equivalent to :ref:`ReflectionProbe.enable_shadows`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_extents: .. rst-class:: classref-method void **reflection_probe_set_extents** **(** :ref:`RID` probe, :ref:`Vector3` extents **)** Sets the size of the area that the reflection probe will capture. Equivalent to :ref:`ReflectionProbe.extents`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_intensity: .. rst-class:: classref-method void **reflection_probe_set_intensity** **(** :ref:`RID` probe, :ref:`float` intensity **)** Sets the intensity of the reflection probe. Intensity modulates the strength of the reflection. Equivalent to :ref:`ReflectionProbe.intensity`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_interior_ambient: .. rst-class:: classref-method void **reflection_probe_set_interior_ambient** **(** :ref:`RID` probe, :ref:`Color` color **)** Sets the ambient light color for this reflection probe when set to interior mode. Equivalent to :ref:`ReflectionProbe.interior_ambient_color`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_interior_ambient_energy: .. rst-class:: classref-method void **reflection_probe_set_interior_ambient_energy** **(** :ref:`RID` probe, :ref:`float` energy **)** Sets the energy multiplier for this reflection probes ambient light contribution when set to interior mode. Equivalent to :ref:`ReflectionProbe.interior_ambient_energy`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_interior_ambient_probe_contribution: .. rst-class:: classref-method void **reflection_probe_set_interior_ambient_probe_contribution** **(** :ref:`RID` probe, :ref:`float` contrib **)** Sets the contribution value for how much the reflection affects the ambient light for this reflection probe when set to interior mode. Useful so that ambient light matches the color of the room. Equivalent to :ref:`ReflectionProbe.interior_ambient_contrib`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_max_distance: .. rst-class:: classref-method void **reflection_probe_set_max_distance** **(** :ref:`RID` probe, :ref:`float` distance **)** Sets the max distance away from the probe an object can be before it is culled. Equivalent to :ref:`ReflectionProbe.max_distance`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_origin_offset: .. rst-class:: classref-method void **reflection_probe_set_origin_offset** **(** :ref:`RID` probe, :ref:`Vector3` offset **)** Sets the origin offset to be used when this reflection probe is in box project mode. Equivalent to :ref:`ReflectionProbe.origin_offset`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_reflection_probe_set_update_mode: .. rst-class:: classref-method void **reflection_probe_set_update_mode** **(** :ref:`RID` probe, :ref:`ReflectionProbeUpdateMode` mode **)** Sets how often the reflection probe updates. Can either be once or every frame. See :ref:`ReflectionProbeUpdateMode` for options. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_request_frame_drawn_callback: .. rst-class:: classref-method void **request_frame_drawn_callback** **(** :ref:`Object` where, :ref:`String` method, :ref:`Variant` userdata **)** Schedules a callback to the corresponding named ``method`` on ``where`` after a frame has been drawn. The callback method must use only 1 argument which will be called with ``userdata``. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_scenario_create: .. rst-class:: classref-method :ref:`RID` **scenario_create** **(** **)** Creates a scenario and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``scenario_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. The scenario is the 3D world that all the visual instances exist in. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_scenario_set_debug: .. rst-class:: classref-method void **scenario_set_debug** **(** :ref:`RID` scenario, :ref:`ScenarioDebugMode` debug_mode **)** Sets the :ref:`ScenarioDebugMode` for this scenario. See :ref:`ScenarioDebugMode` for options. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_scenario_set_environment: .. rst-class:: classref-method void **scenario_set_environment** **(** :ref:`RID` scenario, :ref:`RID` environment **)** Sets the environment that will be used with this scenario. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_scenario_set_fallback_environment: .. rst-class:: classref-method void **scenario_set_fallback_environment** **(** :ref:`RID` scenario, :ref:`RID` environment **)** Sets the fallback environment to be used by this scenario. The fallback environment is used if no environment is set. Internally, this is used by the editor to provide a default environment. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_scenario_set_reflection_atlas_size: .. rst-class:: classref-method void **scenario_set_reflection_atlas_size** **(** :ref:`RID` scenario, :ref:`int` size, :ref:`int` subdiv **)** Sets the size of the reflection atlas shared by all reflection probes in this scenario. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_set_boot_image: .. rst-class:: classref-method void **set_boot_image** **(** :ref:`Image` image, :ref:`Color` color, :ref:`bool` scale, :ref:`bool` use_filter=true **)** Sets a boot image. The color defines the background color. If ``scale`` is ``true``, the image will be scaled to fit the screen size. If ``use_filter`` is ``true``, the image will be scaled with linear interpolation. If ``use_filter`` is ``false``, the image will be scaled with nearest-neighbor interpolation. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_set_debug_generate_wireframes: .. rst-class:: classref-method void **set_debug_generate_wireframes** **(** :ref:`bool` generate **)** If ``true``, the engine will generate wireframes for use with the wireframe debug mode. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_set_default_clear_color: .. rst-class:: classref-method void **set_default_clear_color** **(** :ref:`Color` color **)** Sets the default clear color which is used when a specific clear color has not been selected. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_set_shader_async_hidden_forbidden: .. rst-class:: classref-method void **set_shader_async_hidden_forbidden** **(** :ref:`bool` forbidden **)** If asynchronous shader compilation is enabled, this controls whether :ref:`SpatialMaterial.ASYNC_MODE_HIDDEN` is obeyed. For instance, you may want to enable this temporarily before taking a screenshot. This ensures everything is visible even if shaders with async mode *hidden* are not ready yet. Reflection probes use this internally to ensure they capture everything regardless the shaders are ready or not. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_set_shader_time_scale: .. rst-class:: classref-method void **set_shader_time_scale** **(** :ref:`float` scale **)** Sets the scale to apply to the passage of time for the shaders' ``TIME`` builtin. The default value is ``1.0``, which means ``TIME`` will count the real time as it goes by, without narrowing or stretching it. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_set_use_occlusion_culling: .. rst-class:: classref-method void **set_use_occlusion_culling** **(** :ref:`bool` enable **)** Enables or disables occlusion culling. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_shader_create: .. rst-class:: classref-method :ref:`RID` **shader_create** **(** **)** Creates an empty shader and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``shader_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_shader_get_code: .. rst-class:: classref-method :ref:`String` **shader_get_code** **(** :ref:`RID` shader **)** |const| Returns a shader's code. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_shader_get_default_texture_param: .. rst-class:: classref-method :ref:`RID` **shader_get_default_texture_param** **(** :ref:`RID` shader, :ref:`String` name **)** |const| Returns a default texture from a shader searched by name. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_shader_get_param_list: .. rst-class:: classref-method :ref:`Array` **shader_get_param_list** **(** :ref:`RID` shader **)** |const| Returns the parameters of a shader. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_shader_set_code: .. rst-class:: classref-method void **shader_set_code** **(** :ref:`RID` shader, :ref:`String` code **)** Sets a shader's code. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_shader_set_default_texture_param: .. rst-class:: classref-method void **shader_set_default_texture_param** **(** :ref:`RID` shader, :ref:`String` name, :ref:`RID` texture **)** Sets a shader's default texture. Overwrites the texture given by name. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_skeleton_allocate: .. rst-class:: classref-method void **skeleton_allocate** **(** :ref:`RID` skeleton, :ref:`int` bones, :ref:`bool` is_2d_skeleton=false **)** Allocates the GPU buffers for this skeleton. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_skeleton_bone_get_transform: .. rst-class:: classref-method :ref:`Transform` **skeleton_bone_get_transform** **(** :ref:`RID` skeleton, :ref:`int` bone **)** |const| Returns the :ref:`Transform` set for a specific bone of this skeleton. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_skeleton_bone_get_transform_2d: .. rst-class:: classref-method :ref:`Transform2D` **skeleton_bone_get_transform_2d** **(** :ref:`RID` skeleton, :ref:`int` bone **)** |const| Returns the :ref:`Transform2D` set for a specific bone of this skeleton. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_skeleton_bone_set_transform: .. rst-class:: classref-method void **skeleton_bone_set_transform** **(** :ref:`RID` skeleton, :ref:`int` bone, :ref:`Transform` transform **)** Sets the :ref:`Transform` for a specific bone of this skeleton. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_skeleton_bone_set_transform_2d: .. rst-class:: classref-method void **skeleton_bone_set_transform_2d** **(** :ref:`RID` skeleton, :ref:`int` bone, :ref:`Transform2D` transform **)** Sets the :ref:`Transform2D` for a specific bone of this skeleton. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_skeleton_create: .. rst-class:: classref-method :ref:`RID` **skeleton_create** **(** **)** Creates a skeleton and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``skeleton_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_skeleton_get_bone_count: .. rst-class:: classref-method :ref:`int` **skeleton_get_bone_count** **(** :ref:`RID` skeleton **)** |const| Returns the number of bones allocated for this skeleton. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_sky_create: .. rst-class:: classref-method :ref:`RID` **sky_create** **(** **)** Creates an empty sky and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``sky_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_sky_set_texture: .. rst-class:: classref-method void **sky_set_texture** **(** :ref:`RID` sky, :ref:`RID` cube_map, :ref:`int` radiance_size **)** Sets a sky's texture. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_spot_light_create: .. rst-class:: classref-method :ref:`RID` **spot_light_create** **(** **)** Creates a spot light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most ``light_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. To place in a scene, attach this spot light to an instance using :ref:`instance_set_base` using the returned RID. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_sync: .. rst-class:: classref-method void **sync** **(** **)** Not implemented in Godot 3.x. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_allocate: .. rst-class:: classref-method void **texture_allocate** **(** :ref:`RID` texture, :ref:`int` width, :ref:`int` height, :ref:`int` depth_3d, :ref:`Format` format, :ref:`TextureType` type, :ref:`int` flags=7 **)** Allocates the GPU memory for the texture. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_bind: .. rst-class:: classref-method void **texture_bind** **(** :ref:`RID` texture, :ref:`int` number **)** Binds the texture to a texture slot. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_create: .. rst-class:: classref-method :ref:`RID` **texture_create** **(** **)** Creates an empty texture and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``texture_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_create_from_image: .. rst-class:: classref-method :ref:`RID` **texture_create_from_image** **(** :ref:`Image` image, :ref:`int` flags=7 **)** Creates a texture, allocates the space for an image, and fills in the image. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_debug_usage: .. rst-class:: classref-method :ref:`Array` **texture_debug_usage** **(** **)** Returns a list of all the textures and their information. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_get_data: .. rst-class:: classref-method :ref:`Image` **texture_get_data** **(** :ref:`RID` texture, :ref:`int` cube_side=0 **)** |const| Returns a copy of a texture's image unless it's a CubeMap, in which case it returns the :ref:`RID` of the image at one of the cubes sides. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_get_depth: .. rst-class:: classref-method :ref:`int` **texture_get_depth** **(** :ref:`RID` texture **)** |const| Returns the depth of the texture. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_get_flags: .. rst-class:: classref-method :ref:`int` **texture_get_flags** **(** :ref:`RID` texture **)** |const| Returns the flags of a texture. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_get_format: .. rst-class:: classref-method :ref:`Format` **texture_get_format** **(** :ref:`RID` texture **)** |const| Returns the format of the texture's image. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_get_height: .. rst-class:: classref-method :ref:`int` **texture_get_height** **(** :ref:`RID` texture **)** |const| Returns the texture's height. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_get_path: .. rst-class:: classref-method :ref:`String` **texture_get_path** **(** :ref:`RID` texture **)** |const| Returns the texture's path. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_get_texid: .. rst-class:: classref-method :ref:`int` **texture_get_texid** **(** :ref:`RID` texture **)** |const| Returns the opengl id of the texture's image. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_get_type: .. rst-class:: classref-method :ref:`TextureType` **texture_get_type** **(** :ref:`RID` texture **)** |const| Returns the type of the texture, can be any of the :ref:`TextureType`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_get_width: .. rst-class:: classref-method :ref:`int` **texture_get_width** **(** :ref:`RID` texture **)** |const| Returns the texture's width. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_set_data: .. rst-class:: classref-method void **texture_set_data** **(** :ref:`RID` texture, :ref:`Image` image, :ref:`int` layer=0 **)** Sets the texture's image data. If it's a CubeMap, it sets the image data at a cube side. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_set_data_partial: .. rst-class:: classref-method void **texture_set_data_partial** **(** :ref:`RID` texture, :ref:`Image` image, :ref:`int` src_x, :ref:`int` src_y, :ref:`int` src_w, :ref:`int` src_h, :ref:`int` dst_x, :ref:`int` dst_y, :ref:`int` dst_mip, :ref:`int` layer=0 **)** Sets a part of the data for a texture. Warning: this function calls the underlying graphics API directly and may corrupt your texture if used improperly. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_set_flags: .. rst-class:: classref-method void **texture_set_flags** **(** :ref:`RID` texture, :ref:`int` flags **)** Sets the texture's flags. See :ref:`TextureFlags` for options. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_set_path: .. rst-class:: classref-method void **texture_set_path** **(** :ref:`RID` texture, :ref:`String` path **)** Sets the texture's path. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_set_proxy: .. rst-class:: classref-method void **texture_set_proxy** **(** :ref:`RID` proxy, :ref:`RID` base **)** Creates an update link between two textures, similar to how :ref:`ViewportTexture`\ s operate. When the base texture is the texture of a :ref:`Viewport`, every time the viewport renders a new frame, the proxy texture automatically receives an update. For example, this code links a generic :ref:`ImageTexture` to the texture output of the :ref:`Viewport` using the VisualServer API: :: func _ready(): var viewport_rid = get_viewport().get_viewport_rid() var viewport_texture_rid = VisualServer.viewport_get_texture(viewport_rid) var proxy_texture = ImageTexture.new() var viewport_texture_image_data = VisualServer.texture_get_data(viewport_texture_rid) proxy_texture.create_from_image(viewport_texture_image_data) var proxy_texture_rid = proxy_texture.get_rid() VisualServer.texture_set_proxy(proxy_texture_rid, viewport_texture_rid) $TextureRect.texture = proxy_texture .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_set_shrink_all_x2_on_set_data: .. rst-class:: classref-method void **texture_set_shrink_all_x2_on_set_data** **(** :ref:`bool` shrink **)** If ``true``, sets internal processes to shrink all image data to half the size. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_texture_set_size_override: .. rst-class:: classref-method void **texture_set_size_override** **(** :ref:`RID` texture, :ref:`int` width, :ref:`int` height, :ref:`int` depth **)** Resizes the texture to the specified dimensions. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_textures_keep_original: .. rst-class:: classref-method void **textures_keep_original** **(** :ref:`bool` enable **)** If ``true``, the image will be stored in the texture's images array if overwritten. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_attach_camera: .. rst-class:: classref-method void **viewport_attach_camera** **(** :ref:`RID` viewport, :ref:`RID` camera **)** Sets a viewport's camera. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_attach_canvas: .. rst-class:: classref-method void **viewport_attach_canvas** **(** :ref:`RID` viewport, :ref:`RID` canvas **)** Sets a viewport's canvas. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_attach_to_screen: .. rst-class:: classref-method void **viewport_attach_to_screen** **(** :ref:`RID` viewport, :ref:`Rect2` rect=Rect2( 0, 0, 0, 0 ), :ref:`int` screen=0 **)** Copies viewport to a region of the screen specified by ``rect``. If :ref:`Viewport.render_direct_to_screen` is ``true``, then viewport does not use a framebuffer and the contents of the viewport are rendered directly to screen. However, note that the root viewport is drawn last, therefore it will draw over the screen. Accordingly, you must set the root viewport to an area that does not cover the area that you have attached this viewport to. For example, you can set the root viewport to not render at all with the following code: :: func _ready(): get_viewport().set_attach_to_screen_rect(Rect2()) $Viewport.set_attach_to_screen_rect(Rect2(0, 0, 600, 600)) Using this can result in significant optimization, especially on lower-end devices. However, it comes at the cost of having to manage your viewports manually. For further optimization, see :ref:`viewport_set_render_direct_to_screen`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_create: .. rst-class:: classref-method :ref:`RID` **viewport_create** **(** **)** Creates an empty viewport and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``viewport_*`` VisualServer functions. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid` static method. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_detach: .. rst-class:: classref-method void **viewport_detach** **(** :ref:`RID` viewport **)** Detaches the viewport from the screen. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_get_render_info: .. rst-class:: classref-method :ref:`int` **viewport_get_render_info** **(** :ref:`RID` viewport, :ref:`ViewportRenderInfo` info **)** Returns a viewport's render information. For options, see the :ref:`ViewportRenderInfo` constants. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_get_texture: .. rst-class:: classref-method :ref:`RID` **viewport_get_texture** **(** :ref:`RID` viewport **)** |const| Returns the viewport's last rendered frame. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_remove_canvas: .. rst-class:: classref-method void **viewport_remove_canvas** **(** :ref:`RID` viewport, :ref:`RID` canvas **)** Detaches a viewport from a canvas and vice versa. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_active: .. rst-class:: classref-method void **viewport_set_active** **(** :ref:`RID` viewport, :ref:`bool` active **)** If ``true``, sets the viewport active, else sets it inactive. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_canvas_stacking: .. rst-class:: classref-method void **viewport_set_canvas_stacking** **(** :ref:`RID` viewport, :ref:`RID` canvas, :ref:`int` layer, :ref:`int` sublayer **)** Sets the stacking order for a viewport's canvas. \ ``layer`` is the actual canvas layer, while ``sublayer`` specifies the stacking order of the canvas among those in the same layer. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_canvas_transform: .. rst-class:: classref-method void **viewport_set_canvas_transform** **(** :ref:`RID` viewport, :ref:`RID` canvas, :ref:`Transform2D` offset **)** Sets the transformation of a viewport's canvas. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_clear_mode: .. rst-class:: classref-method void **viewport_set_clear_mode** **(** :ref:`RID` viewport, :ref:`ViewportClearMode` clear_mode **)** Sets the clear mode of a viewport. See :ref:`ViewportClearMode` for options. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_debug_draw: .. rst-class:: classref-method void **viewport_set_debug_draw** **(** :ref:`RID` viewport, :ref:`ViewportDebugDraw` draw **)** Sets the debug draw mode of a viewport. See :ref:`ViewportDebugDraw` for options. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_disable_3d: .. rst-class:: classref-method void **viewport_set_disable_3d** **(** :ref:`RID` viewport, :ref:`bool` disabled **)** If ``true``, a viewport's 3D rendering is disabled. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_disable_environment: .. rst-class:: classref-method void **viewport_set_disable_environment** **(** :ref:`RID` viewport, :ref:`bool` disabled **)** If ``true``, rendering of a viewport's environment is disabled. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_global_canvas_transform: .. rst-class:: classref-method void **viewport_set_global_canvas_transform** **(** :ref:`RID` viewport, :ref:`Transform2D` transform **)** Sets the viewport's global transformation matrix. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_hdr: .. rst-class:: classref-method void **viewport_set_hdr** **(** :ref:`RID` viewport, :ref:`bool` enabled **)** If ``true``, the viewport renders to high dynamic range (HDR) instead of standard dynamic range (SDR). See also :ref:`viewport_set_use_32_bpc_depth`. \ **Note:** Only available on the GLES3 backend. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_hide_canvas: .. rst-class:: classref-method void **viewport_set_hide_canvas** **(** :ref:`RID` viewport, :ref:`bool` hidden **)** If ``true``, the viewport's canvas is not rendered. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_hide_scenario: .. rst-class:: classref-method void **viewport_set_hide_scenario** **(** :ref:`RID` viewport, :ref:`bool` hidden **)** Currently unimplemented in Godot 3.x. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_msaa: .. rst-class:: classref-method void **viewport_set_msaa** **(** :ref:`RID` viewport, :ref:`ViewportMSAA` msaa **)** Sets the anti-aliasing mode. See :ref:`ViewportMSAA` for options. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_parent_viewport: .. rst-class:: classref-method void **viewport_set_parent_viewport** **(** :ref:`RID` viewport, :ref:`RID` parent_viewport **)** Sets the viewport's parent to another viewport. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_render_direct_to_screen: .. rst-class:: classref-method void **viewport_set_render_direct_to_screen** **(** :ref:`RID` viewport, :ref:`bool` enabled **)** If ``true``, render the contents of the viewport directly to screen. This allows a low-level optimization where you can skip drawing a viewport to the root viewport. While this optimization can result in a significant increase in speed (especially on older devices), it comes at a cost of usability. When this is enabled, you cannot read from the viewport or from the ``SCREEN_TEXTURE``. You also lose the benefit of certain window settings, such as the various stretch modes. Another consequence to be aware of is that in 2D the rendering happens in window coordinates, so if you have a viewport that is double the size of the window, and you set this, then only the portion that fits within the window will be drawn, no automatic scaling is possible, even if your game scene is significantly larger than the window size. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_scenario: .. rst-class:: classref-method void **viewport_set_scenario** **(** :ref:`RID` viewport, :ref:`RID` scenario **)** Sets a viewport's scenario. The scenario contains information about the :ref:`ScenarioDebugMode`, environment information, reflection atlas etc. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_shadow_atlas_quadrant_subdivision: .. rst-class:: classref-method void **viewport_set_shadow_atlas_quadrant_subdivision** **(** :ref:`RID` viewport, :ref:`int` quadrant, :ref:`int` subdivision **)** Sets the shadow atlas quadrant's subdivision. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_shadow_atlas_size: .. rst-class:: classref-method void **viewport_set_shadow_atlas_size** **(** :ref:`RID` viewport, :ref:`int` size **)** Sets the size of the shadow atlas's images (used for omni and spot lights). The value will be rounded up to the nearest power of 2. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_sharpen_intensity: .. rst-class:: classref-method void **viewport_set_sharpen_intensity** **(** :ref:`RID` viewport, :ref:`float` intensity **)** Sets the sharpening ``intensity`` for the ``viewport``. If set to a value greater than ``0.0``, contrast-adaptive sharpening will be applied to the 3D viewport. This has a low performance cost and can be used to recover some of the sharpness lost from using FXAA. Values around ``0.5`` generally give the best results. See also :ref:`viewport_set_use_fxaa`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_size: .. rst-class:: classref-method void **viewport_set_size** **(** :ref:`RID` viewport, :ref:`int` width, :ref:`int` height **)** Sets the viewport's width and height. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_transparent_background: .. rst-class:: classref-method void **viewport_set_transparent_background** **(** :ref:`RID` viewport, :ref:`bool` enabled **)** If ``true``, the viewport renders its background as transparent. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_update_mode: .. rst-class:: classref-method void **viewport_set_update_mode** **(** :ref:`RID` viewport, :ref:`ViewportUpdateMode` update_mode **)** Sets when the viewport should be updated. See :ref:`ViewportUpdateMode` constants for options. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_usage: .. rst-class:: classref-method void **viewport_set_usage** **(** :ref:`RID` viewport, :ref:`ViewportUsage` usage **)** Sets the viewport's 2D/3D mode. See :ref:`ViewportUsage` constants for options. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_use_32_bpc_depth: .. rst-class:: classref-method void **viewport_set_use_32_bpc_depth** **(** :ref:`RID` viewport, :ref:`bool` enabled **)** If ``true``, allocates the viewport's framebuffer with full floating-point precision (32-bit) instead of half floating-point precision (16-bit). Only effective if :ref:`viewport_set_use_32_bpc_depth` is used on the same :ref:`Viewport` to set HDR to ``true``. \ **Note:** Only available on the GLES3 backend. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_use_arvr: .. rst-class:: classref-method void **viewport_set_use_arvr** **(** :ref:`RID` viewport, :ref:`bool` use_arvr **)** If ``true``, the viewport uses augmented or virtual reality technologies. See :ref:`ARVRInterface`. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_use_debanding: .. rst-class:: classref-method void **viewport_set_use_debanding** **(** :ref:`RID` viewport, :ref:`bool` debanding **)** If ``true``, uses a fast post-processing filter to make banding significantly less visible. In some cases, debanding may introduce a slightly noticeable dithering pattern. It's recommended to enable debanding only when actually needed since the dithering pattern will make lossless-compressed screenshots larger. \ **Note:** Only available on the GLES3 backend. :ref:`Viewport.hdr` must also be ``true`` for debanding to be effective. .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_use_fxaa: .. rst-class:: classref-method void **viewport_set_use_fxaa** **(** :ref:`RID` viewport, :ref:`bool` fxaa **)** Enables fast approximate antialiasing for this viewport. FXAA is a popular screen-space antialiasing method, which is fast but will make the image look blurry, especially at lower resolutions. It can still work relatively well at large resolutions such as 1440p and 4K. Some of the lost sharpness can be recovered by enabling contrast-adaptive sharpening (see :ref:`viewport_set_sharpen_intensity`). .. rst-class:: classref-item-separator ---- .. _class_VisualServer_method_viewport_set_vflip: .. rst-class:: classref-method void **viewport_set_vflip** **(** :ref:`RID` viewport, :ref:`bool` enabled **)** If ``true``, the viewport's rendering is flipped vertically. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`