VisualServer

    Category: Core

    Server for anything visible.

    Methods

    • frame_post_draw ( )

    • frame_pre_draw ( )

    Enumerations

    enum CubeMapSide:

    • CUBEMAP_LEFT = 0 — Marks the left side of a cubemap.
    • CUBEMAP_RIGHT = 1 — Marks the right side of a cubemap.
    • CUBEMAP_BOTTOM = 2 — Marks the bottom side of a cubemap.
    • CUBEMAP_TOP = 3 — Marks the top side of a cubemap.
    • CUBEMAP_FRONT = 4 — Marks the front side of a cubemap.
    • CUBEMAP_BACK = 5 — Marks the back side of a cubemap.

    enum TextureType:

    • TEXTURE_TYPE_2D = 0
    • TEXTURE_TYPE_CUBEMAP = 1
    • TEXTURE_TYPE_2D_ARRAY = 2
    • TEXTURE_TYPE_3D = 3

    enum TextureFlags:

    • TEXTURE_FLAG_MIPMAPS = 1 — Generate mipmaps, which are smaller versions of the same texture to use when zoomed out, keeping the aspect ratio.
    • TEXTURE_FLAG_REPEAT = 2 — Repeat (instead of clamp to edge).
    • TEXTURE_FLAG_FILTER = 4 — Turn on magnifying filter, to enable smooth zooming in of the texture.
    • TEXTURE_FLAG_ANISOTROPIC_FILTER = 8 — Anisotropic mipmap filtering. Generates smaller versions of the same texture with different aspect ratios.

    More effective on planes often shown going to the horrizon as those textures (Walls or Ground for example) get squashed in the viewport to different aspect ratios and regular mipmaps keep the aspect ratio so they don’t optimize storage that well in those cases.

    • TEXTURE_FLAG_CONVERT_TO_LINEAR = 16 — Converts texture to SRGB color space.
    • TEXTURE_FLAG_MIRRORED_REPEAT = 32 — Repeat texture with alternate sections mirrored.
    • TEXTURE_FLAG_USED_FOR_STREAMING = 2048 — Texture is a video surface.
    • TEXTURE_FLAGS_DEFAULT = 7 — Default flags. Generate mipmaps, repeat, and filter are enabled.

    enum ShaderMode:

    • SHADER_SPATIAL = 0 — Shader is a 3D shader.
    • SHADER_CANVAS_ITEM = 1 — Shader is a 2D shader.
    • SHADER_PARTICLES = 2 — Shader is a particle shader.
    • SHADER_MAX = 3 — Represents the size of the enum.

    enum ArrayType:

    • ARRAY_VERTEX = 0 — Array is a vertex array.
    • ARRAY_NORMAL = 1 — Array is a normal array.
    • ARRAY_TANGENT = 2 — Array is a tangent array.
    • ARRAY_COLOR = 3 — Array is a color array.
    • ARRAY_TEX_UV = 4 — Array is a uv coordinates array.
    • ARRAY_TEX_UV2 = 5 — Array is a uv coordinates array for the second uv coordinates.
    • ARRAY_BONES = 6 — Array contains bone information.
    • ARRAY_WEIGHTS = 7 — Array is weight information.
    • ARRAY_INDEX = 8 — Array is index array.
    • ARRAY_MAX = 9 — Represents the size of the ArrayType enum.

    enum ArrayFormat:

    • ARRAY_FORMAT_VERTEX = 1 — Flag used to mark a vertex array.
    • ARRAY_FORMAT_NORMAL = 2 — Flag used to mark a normal array.
    • ARRAY_FORMAT_TANGENT = 4 — Flag used to mark a tangent array.
    • ARRAY_FORMAT_COLOR = 8 — Flag used to mark a color array.
    • ARRAY_FORMAT_TEX_UV = 16 — Flag used to mark a uv coordinates array.
    • ARRAY_FORMAT_TEX_UV2 = 32 — Flag used to mark a uv coordinates array for the second uv coordinates.
    • ARRAY_FORMAT_BONES = 64 — Flag used to mark a bone information array.
    • ARRAY_FORMAT_WEIGHTS = 128 — Flag used to mark a weights array.
    • ARRAY_FORMAT_INDEX = 256 — Flag used to mark a index array.
    • ARRAY_COMPRESS_VERTEX = 512 — Flag used to mark a compressed (half float) vertex array.
    • ARRAY_COMPRESS_NORMAL = 1024 — Flag used to mark a compressed (half float) normal array.
    • ARRAY_COMPRESS_TANGENT = 2048 — Flag used to mark a compressed (half float) tangent array.
    • ARRAY_COMPRESS_COLOR = 4096 — Flag used to mark a compressed (half float) color array.
    • ARRAY_COMPRESS_TEX_UV = 8192 — Flag used to mark a compressed (half float) uv coordinates array.
    • ARRAY_COMPRESS_TEX_UV2 = 16384 — Flag used to mark a compressed (half float) uv coordinates array for the second uv coordinates.
    • ARRAY_COMPRESS_BONES = 32768
    • ARRAY_COMPRESS_WEIGHTS = 65536 — Flag used to mark a compressed (half float) weight array.
    • ARRAY_COMPRESS_INDEX = 131072
    • ARRAY_FLAG_USE_2D_VERTICES = 262144 — Flag used to mark that the array contains 2D vertices.
    • ARRAY_FLAG_USE_16_BIT_BONES = 524288 — Flag used to mark that the array uses 16 bit bones instead of 8 bit.
    • ARRAY_COMPRESS_DEFAULT = 97280 — Used to set flags ARRAY_COMPRESS_VERTEX, ARRAY_COMPRESS_NORMAL, ARRAY_COMPRESS_TANGENT, ARRAY_COMPRESS_COLOR, ARRAY_COMPRESS_TEX_UV, ARRAY_COMPRESS_TEX_UV2 and ARRAY_COMPRESS_WEIGHTS quickly.

    enum PrimitiveType:

    • PRIMITIVE_POINTS = 0 — Primitive to draw consists of points.
    • PRIMITIVE_LINES = 1 — Primitive to draw consists of lines.
    • PRIMITIVE_LINE_STRIP = 2 — Primitive to draw consists of a line strip from start to end.
    • 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).
    • PRIMITIVE_TRIANGLES = 4 — Primitive to draw consists of triangles.
    • PRIMITIVE_TRIANGLE_STRIP = 5 — Primitive to draw consists of a triangle strip (the last 3 vertices are always combined to make a triangle).
    • 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).
    • PRIMITIVE_MAX = 7 — Represents the size of the enum.

    enum BlendShapeMode:

    • BLEND_SHAPE_MODE_NORMALIZED = 0
    • BLEND_SHAPE_MODE_RELATIVE = 1

    enum LightType:

    • LIGHT_DIRECTIONAL = 0 — Is a directional (sun) light.
    • LIGHT_OMNI = 1 — is an omni light.
    • LIGHT_SPOT = 2 — is an spot light.

    enum LightParam:

    • LIGHT_PARAM_ENERGY = 0 — The light’s energy.
    • LIGHT_PARAM_SPECULAR = 2 — The light’s influence on specularity.
    • LIGHT_PARAM_RANGE = 3 — The light’s range.
    • LIGHT_PARAM_ATTENUATION = 4 — The light’s attenuation.
    • LIGHT_PARAM_SPOT_ANGLE = 5 — The spotlight’s angle.
    • LIGHT_PARAM_SPOT_ATTENUATION = 6 — The spotlight’s attenuation.
    • LIGHT_PARAM_CONTACT_SHADOW_SIZE = 7 — Scales the shadow color.
    • LIGHT_PARAM_SHADOW_MAX_DISTANCE = 8
    • LIGHT_PARAM_SHADOW_SPLIT_1_OFFSET = 9
    • LIGHT_PARAM_SHADOW_SPLIT_2_OFFSET = 10
    • LIGHT_PARAM_SHADOW_SPLIT_3_OFFSET = 11
    • LIGHT_PARAM_SHADOW_NORMAL_BIAS = 12
    • LIGHT_PARAM_SHADOW_BIAS = 13
    • LIGHT_PARAM_SHADOW_BIAS_SPLIT_SCALE = 14
    • LIGHT_PARAM_MAX = 15 — Represents the size of the LightParam enum.

    enum LightOmniShadowMode:

    • LIGHT_OMNI_SHADOW_DUAL_PARABOLOID = 0
    • LIGHT_OMNI_SHADOW_CUBE = 1

    enum LightOmniShadowDetail:

    • LIGHT_OMNI_SHADOW_DETAIL_VERTICAL = 0
    • LIGHT_OMNI_SHADOW_DETAIL_HORIZONTAL = 1

    enum LightDirectionalShadowMode:

    • LIGHT_DIRECTIONAL_SHADOW_ORTHOGONAL = 0
    • LIGHT_DIRECTIONAL_SHADOW_PARALLEL_2_SPLITS = 1
    • LIGHT_DIRECTIONAL_SHADOW_PARALLEL_4_SPLITS = 2

    enum LightDirectionalShadowDepthRangeMode:

    • LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_STABLE = 0
    • LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_OPTIMIZED = 1

    enum ViewportUpdateMode:

    • VIEWPORT_UPDATE_DISABLED = 0
    • VIEWPORT_UPDATE_ONCE = 1
    • VIEWPORT_UPDATE_WHEN_VISIBLE = 2
    • VIEWPORT_UPDATE_ALWAYS = 3

    enum ViewportClearMode:

    • VIEWPORT_CLEAR_ALWAYS = 0 — The viewport is always cleared before drawing.
    • VIEWPORT_CLEAR_NEVER = 1 — The viewport is never cleared before drawing.
    • VIEWPORT_CLEAR_ONLY_NEXT_FRAME = 2 — The viewport is cleared once, then the clear mode is set to .

    enum ViewportMSAA:

    • VIEWPORT_MSAA_DISABLED = 0 — Multisample antialiasing is disabled.
    • VIEWPORT_MSAA_2X = 1 — Multisample antialiasing is set to 2X.
    • VIEWPORT_MSAA_4X = 2 — Multisample antialiasing is set to 4X.
    • VIEWPORT_MSAA_8X = 3 — Multisample antialiasing is set to 8X.
    • VIEWPORT_MSAA_16X = 4 — Multisample antialiasing is set to 16X.

    enum ViewportUsage:

    • VIEWPORT_USAGE_2D = 0 — The Viewport does not render 3D but samples.
    • VIEWPORT_USAGE_2D_NO_SAMPLING = 1 — The Viewport does not render 3D and does not sample.
    • VIEWPORT_USAGE_3D = 2 — The Viewport renders 3D with effects.
    • VIEWPORT_USAGE_3D_NO_EFFECTS = 3 — The Viewport renders 3D but without effects.

    enum ViewportRenderInfo:

    • VIEWPORT_RENDER_INFO_OBJECTS_IN_FRAME = 0
    • VIEWPORT_RENDER_INFO_VERTICES_IN_FRAME = 1
    • VIEWPORT_RENDER_INFO_MATERIAL_CHANGES_IN_FRAME = 2
    • VIEWPORT_RENDER_INFO_SHADER_CHANGES_IN_FRAME = 3
    • VIEWPORT_RENDER_INFO_SURFACE_CHANGES_IN_FRAME = 4
    • VIEWPORT_RENDER_INFO_DRAW_CALLS_IN_FRAME = 5
    • VIEWPORT_RENDER_INFO_MAX = 6 — Represents the size of the ViewportRenderInfo enum.

    enum ViewportDebugDraw:

    • VIEWPORT_DEBUG_DRAW_DISABLED = 0 — Debug draw is disabled. Default setting.
    • VIEWPORT_DEBUG_DRAW_UNSHADED = 1 — Debug draw sets objects to unshaded.
    • VIEWPORT_DEBUG_DRAW_OVERDRAW = 2 — Overwrites clear color to .
    • VIEWPORT_DEBUG_DRAW_WIREFRAME = 3 — Debug draw draws objects in wireframe.

    enum ScenarioDebugMode:

    • SCENARIO_DEBUG_DISABLED = 0
    • SCENARIO_DEBUG_WIREFRAME = 1
    • SCENARIO_DEBUG_OVERDRAW = 2
    • SCENARIO_DEBUG_SHADELESS = 3

    enum InstanceType:

    • INSTANCE_NONE = 0 — The instance does not have a type.
    • INSTANCE_MESH = 1 — The instance is a mesh.
    • INSTANCE_MULTIMESH = 2 — The instance is a multimesh.
    • INSTANCE_IMMEDIATE = 3 — The instance is an immediate geometry.
    • INSTANCE_PARTICLES = 4 — The instance is a particle emitter.
    • INSTANCE_LIGHT = 5 — The instance is a light.
    • INSTANCE_REFLECTION_PROBE = 6
    • INSTANCE_GI_PROBE = 7
    • INSTANCE_LIGHTMAP_CAPTURE = 8
    • INSTANCE_MAX = 9 — Represents the size of the enum.
    • INSTANCE_GEOMETRY_MASK = 30 — A combination of the flags of geometry instances (mesh, multimesh, immediate and particles).

    enum InstanceFlags:

    • INSTANCE_FLAG_USE_BAKED_LIGHT = 0
    • INSTANCE_FLAG_DRAW_NEXT_FRAME_IF_VISIBLE = 1
    • INSTANCE_FLAG_MAX = 2 — Represents the size of the InstanceFlags enum.

    enum ShadowCastingSetting:

    • SHADOW_CASTING_SETTING_OFF = 0
    • SHADOW_CASTING_SETTING_ON = 1
    • SHADOW_CASTING_SETTING_DOUBLE_SIDED = 2
    • SHADOW_CASTING_SETTING_SHADOWS_ONLY = 3

    enum NinePatchAxisMode:

    • NINE_PATCH_STRETCH = 0 — The nine patch gets stretched where needed.
    • NINE_PATCH_TILE = 1 — The nine patch gets filled with tiles where needed.
    • NINE_PATCH_TILE_FIT = 2 — The nine patch gets filled with tiles where needed and stretches them a bit if needed.

    enum CanvasLightMode:

    • CANVAS_LIGHT_MODE_ADD = 0 — Adds light color additive to the canvas.
    • CANVAS_LIGHT_MODE_SUB = 1 — Adds light color subtractive to the canvas.
    • CANVAS_LIGHT_MODE_MIX = 2 — The light adds color depending on transparency.
    • CANVAS_LIGHT_MODE_MASK = 3 — The light adds color depending on mask.

    enum CanvasLightShadowFilter:

    • CANVAS_LIGHT_FILTER_NONE = 0
    • CANVAS_LIGHT_FILTER_PCF3 = 1
    • CANVAS_LIGHT_FILTER_PCF5 = 2
    • CANVAS_LIGHT_FILTER_PCF7 = 3
    • CANVAS_LIGHT_FILTER_PCF9 = 4
    • CANVAS_LIGHT_FILTER_PCF13 = 5

    enum CanvasOccluderPolygonCullMode:

    • CANVAS_OCCLUDER_POLYGON_CULL_DISABLED = 0 — Culling of the canvas occluder is disabled.
    • CANVAS_OCCLUDER_POLYGON_CULL_CLOCKWISE = 1 — Culling of the canvas occluder is clockwise.
    • CANVAS_OCCLUDER_POLYGON_CULL_COUNTER_CLOCKWISE = 2 — Culling of the canvas occluder is counterclockwise.

    enum RenderInfo:

    • INFO_OBJECTS_IN_FRAME = 0 — The amount of objects in the frame.
    • INFO_VERTICES_IN_FRAME = 1 — The amount of vertices in the frame.
    • INFO_MATERIAL_CHANGES_IN_FRAME = 2 — The amount of modified materials in the frame.
    • INFO_SHADER_CHANGES_IN_FRAME = 3 — The amount of shader rebinds in the frame.
    • INFO_SURFACE_CHANGES_IN_FRAME = 4 — The amount of surface changes in the frame.
    • INFO_DRAW_CALLS_IN_FRAME = 5 — The amount of draw calls in frame.
    • INFO_USAGE_VIDEO_MEM_TOTAL = 6 — Unimplemented in the GLES2 and GLES3 rendering backends, always returns 0.
    • INFO_VIDEO_MEM_USED = 7 — The amount of video memory used, i.e. texture and vertex memory combined.
    • INFO_TEXTURE_MEM_USED = 8 — The amount of texture memory used.
    • INFO_VERTEX_MEM_USED = 9 — The amount of vertex memory used.

    enum Features:

    • FEATURE_SHADERS = 0
    • FEATURE_MULTITHREADED = 1

    enum MultimeshTransformFormat:

    • MULTIMESH_TRANSFORM_2D = 0
    • MULTIMESH_TRANSFORM_3D = 1

    enum MultimeshColorFormat:

    • MULTIMESH_COLOR_NONE = 0
    • MULTIMESH_COLOR_8BIT = 1
    • MULTIMESH_COLOR_FLOAT = 2

    enum MultimeshCustomDataFormat:

    • MULTIMESH_CUSTOM_DATA_NONE = 0
    • MULTIMESH_CUSTOM_DATA_8BIT = 1
    • MULTIMESH_CUSTOM_DATA_FLOAT = 2

    enum ReflectionProbeUpdateMode:

    • REFLECTION_PROBE_UPDATE_ONCE = 0
    • REFLECTION_PROBE_UPDATE_ALWAYS = 1

    enum ParticlesDrawOrder:

    • PARTICLES_DRAW_ORDER_INDEX = 0
    • PARTICLES_DRAW_ORDER_LIFETIME = 1
    • PARTICLES_DRAW_ORDER_VIEW_DEPTH = 2

    enum EnvironmentBG:

    • ENV_BG_CLEAR_COLOR = 0
    • ENV_BG_COLOR = 1
    • ENV_BG_SKY = 2
    • ENV_BG_CANVAS = 4
    • ENV_BG_KEEP = 5
    • ENV_BG_MAX = 6 — Represents the size of the enum.

    enum EnvironmentDOFBlurQuality:

    • ENV_DOF_BLUR_QUALITY_LOW = 0
    • ENV_DOF_BLUR_QUALITY_MEDIUM = 1
    • ENV_DOF_BLUR_QUALITY_HIGH = 2

    enum EnvironmentGlowBlendMode:

    • GLOW_BLEND_MODE_ADDITIVE = 0
    • GLOW_BLEND_MODE_SCREEN = 1
    • GLOW_BLEND_MODE_SOFTLIGHT = 2
    • GLOW_BLEND_MODE_REPLACE = 3

    enum EnvironmentToneMapper:

    • ENV_TONE_MAPPER_LINEAR = 0
    • ENV_TONE_MAPPER_REINHARD = 1
    • ENV_TONE_MAPPER_FILMIC = 2
    • ENV_TONE_MAPPER_ACES = 3

    enum EnvironmentSSAOQuality:

    • ENV_SSAO_QUALITY_LOW = 0
    • ENV_SSAO_QUALITY_MEDIUM = 1
    • ENV_SSAO_QUALITY_HIGH = 2

    enum EnvironmentSSAOBlur:

    • ENV_SSAO_BLUR_DISABLED = 0
    • ENV_SSAO_BLUR_1x1 = 1
    • ENV_SSAO_BLUR_2x2 = 2
    • ENV_SSAO_BLUR_3x3 = 3
    • NO_INDEX_ARRAY = -1 — Marks an error that shows that the index array is empty.
    • ARRAY_WEIGHTS_SIZE = 4
    • CANVAS_ITEM_Z_MIN = -4096 — The minimum Z-layer for canvas items.
    • CANVAS_ITEM_Z_MAX = 4096 — The maximum Z-layer for canvas items.
    • MAX_GLOW_LEVELS = 7
    • MAX_CURSORS = 8
    • MATERIAL_RENDER_PRIORITY_MIN = -128 — The minimum renderpriority of all materials.
    • MATERIAL_RENDER_PRIORITY_MAX = 127 — The maximum renderpriority of all materials.

    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.

    • void black_bars_set_images ( RID left, top, RID right, bottom )

    Sets images to be rendered in the window margin.


    • void black_bars_set_margins ( int left, top, int right, bottom )

    Sets margin size, where black bars (or images, if black_bars_set_images was used) are rendered.


    • camera_create ( )

    • void camera_set_cull_mask ( RID camera, layers )

    • void camera_set_environment ( RID camera, env )

    • void camera_set_orthogonal ( RID camera, size, float z_near, z_far )

    • void camera_set_perspective ( RID camera, fovy_degrees, float z_near, z_far )

    • void camera_set_transform ( RID camera, transform )

    • void camera_set_use_vertical_aspect ( RID camera, enable )

    • RID canvas_create ( )

    Creates a canvas and returns the assigned .


    • void canvas_item_add_circle ( RID item, pos, float radius, color )

    Adds a circle command to the CanvasItem’s draw commands.


    • void canvas_item_add_clip_ignore ( item, bool ignore )

    If ignore is true, the VisualServer does not perform clipping.


    • void canvas_item_add_line ( item, Vector2 from, to, Color color, width=1.0, bool antialiased=false )

    Adds a line command to the ’s draw commands.


    • void canvas_item_add_mesh ( RID item, mesh, RID texture, normal_map )

    Adds a Mesh to the ’s draw commands. Only affects its aabb at the moment.


    • void canvas_item_add_multimesh ( RID item, mesh, RID texture, normal_map )

    Adds a MultiMesh to the ’s draw commands. Only affects its aabb at the moment.


    • void canvas_item_add_nine_patch ( RID item, rect, Rect2 source, texture, Vector2 topleft, bottomright, NinePatchAxisMode x_axis_mode=0, y_axis_mode=0, bool draw_center=true, modulate=Color( 1, 1, 1, 1 ), RID normal_map )

    Adds a nine patch image to the ’s draw commands.

    See NinePatchRect for more explanation.


    • void canvas_item_add_particles ( item, RID particles, texture, RID normal_map )

    Adds a particles system to the ’s draw commands.


    • void canvas_item_add_polygon ( RID item, points, PoolColorArray colors, uvs=PoolVector2Array( ), RID texture, normal_map, bool antialiased=false )

    Adds a polygon to the ’s draw commands.


    • void canvas_item_add_polyline ( RID item, points, PoolColorArray colors, width=1.0, bool antialiased=false )

    Adds a polyline, which is a line from multiple points with a width, to the ’s draw commands.


    • void canvas_item_add_primitive ( RID item, points, PoolColorArray colors, uvs, RID texture, width=1.0, RID normal_map )

    Adds a primitive to the ’s draw commands.


    • void canvas_item_add_rect ( RID item, rect, Color color )

    Adds a rectangle to the ’s draw commands.


    • void canvas_item_add_set_transform ( RID item, transform )

    Adds a Transform2D command to the ’s draw commands.

    This sets the extra_matrix uniform when executed. This affects the later commands of the canvas item.


    • void canvas_item_add_texture_rect ( RID item, rect, RID texture, tile=false, Color modulate=Color( 1, 1, 1, 1 ), transpose=false, RID normal_map )

    Adds a textured rect to the ’s draw commands.


    • void canvas_item_add_texture_rect_region ( RID item, rect, RID texture, src_rect, Color modulate=Color( 1, 1, 1, 1 ), transpose=false, RID normal_map, clip_uv=true )

    Adds a texture rect with region setting to the CanvasItem’s draw commands.


    • void canvas_item_add_triangle_array ( item, PoolIntArray indices, points, PoolColorArray colors, uvs=PoolVector2Array( ), PoolIntArray bones=PoolIntArray( ), weights=PoolRealArray( ), RID texture, count=-1, RID normal_map )

    • void canvas_item_clear ( item )

    Clears the CanvasItem and removes all commands in it.


    • canvas_item_create ( )

    Creates a new CanvasItem and returns its .


    • void canvas_item_set_clip ( RID item, clip )

    Sets clipping for the CanvasItem.


    • void canvas_item_set_copy_to_backbuffer ( item, bool enabled, rect )

    Sets the CanvasItem to copy a rect to the backbuffer.


    • void canvas_item_set_custom_rect ( item, bool use_custom_rect, rect=Rect2( 0, 0, 0, 0 ) )

    Defines a custom drawing rectangle for the CanvasItem.


    • void canvas_item_set_distance_field_mode ( item, bool enabled )

    • void canvas_item_set_draw_behind_parent ( item, bool enabled )

    • void canvas_item_set_draw_index ( item, int index )

    Sets the index for the .


    • void canvas_item_set_light_mask ( RID item, mask )

    The light mask. See LightOccluder2D for more information on light masks.


    • void canvas_item_set_material ( item, RID material )

    Sets a new material to the .


    • void canvas_item_set_modulate ( RID item, color )

    Sets the color that modulates the CanvasItem and its children.


    • void canvas_item_set_parent ( item, RID parent )

    Sets the parent for the .


    • void canvas_item_set_self_modulate ( RID item, color )

    Sets the color that modulates the CanvasItem without children.


    • void canvas_item_set_sort_children_by_y ( item, bool enabled )

    Sets if ’s children should be sorted by y-position.


    • void canvas_item_set_transform ( RID item, transform )

    Sets the CanvasItem’s .


    • void canvas_item_set_use_parent_material ( RID item, enabled )

    Sets if the CanvasItem uses its parent’s material.


    • void canvas_item_set_visible ( item, bool visible )

    Sets if the canvas item (including its children) is visible.


    • void canvas_item_set_z_as_relative_to_parent ( item, bool enabled )

    If this is enabled, the z-index of the parent will be added to the children’s z-index.


    • void canvas_item_set_z_index ( item, int z_index )

    Sets the ’s z-index, i.e. its draw order (lower indexes are drawn first).


    • void canvas_light_attach_to_canvas ( RID light, canvas )

    Attaches the canvas light to the canvas. Removes it from its previous canvas.


    • RID canvas_light_create ( )

    Creates a canvas light.


    • void canvas_light_occluder_attach_to_canvas ( occluder, RID canvas )

    Attaches a light occluder to the canvas. Removes it from its previous canvas.


    • canvas_light_occluder_create ( )

    Creates a light occluder.


    • void canvas_light_occluder_set_enabled ( RID occluder, enabled )

    Enables or disables light occluder.


    • void canvas_light_occluder_set_light_mask ( RID occluder, mask )

    The light mask. See LightOccluder2D for more information on light masks


    • void canvas_light_occluder_set_polygon ( occluder, RID polygon )

    Sets a light occluder’s polygon.


    • void canvas_light_occluder_set_transform ( occluder, Transform2D transform )

    Sets a light occluder’s .


    • void canvas_light_set_color ( RID light, color )

    Sets the color for a light.


    • void canvas_light_set_enabled ( RID light, enabled )

    Enables or disables a canvas light.


    • void canvas_light_set_energy ( RID light, energy )

    Sets a canvas light’s energy.


    • void canvas_light_set_height ( RID light, height )

    Sets a canvas light’s height.


    • void canvas_light_set_item_cull_mask ( RID light, mask )

    The light mask. See LightOccluder2D for more information on light masks


    • void canvas_light_set_item_shadow_cull_mask ( light, int mask )

    The shadow mask. binary about which layers this canvas light affects which canvas item’s shadows. See for more information on light masks.


    • void canvas_light_set_layer_range ( RID light, min_layer, int max_layer )

    The layer range that gets rendered with this light.


    The mode of the light, see CANVAS_LIGHT_MODE_* constants.


    • void canvas_light_set_scale ( light, float scale )

    • void canvas_light_set_shadow_buffer_size ( light, int size )

    Sets the width of the shadow buffer, size gets scaled to the next power of two for this.


    • void canvas_light_set_shadow_color ( light, Color color )

    Sets the color of the canvas light’s shadow.


    • void canvas_light_set_shadow_enabled ( light, bool enabled )

    Enables or disables the canvas light’s shadow.


    Sets the canvas light’s shadow’s filter, see CANVAS_LIGHT_SHADOW_FILTER_* constants.


    • void canvas_light_set_shadow_gradient_length ( light, float length )

    Sets the length of the shadow’s gradient.


    • void canvas_light_set_shadow_smooth ( light, float smooth )

    Smoothens the shadow. The lower, the more smooth.


    • void canvas_light_set_texture ( light, RID texture )

    • void canvas_light_set_texture_offset ( light, Vector2 offset )

    • void canvas_light_set_transform ( light, Transform2D transform )

    Sets the canvas light’s .


    • void canvas_light_set_z_range ( RID light, min_z, int max_z )

    • canvas_occluder_polygon_create ( )

    Creates a new light occluder polygon.


    • void canvas_occluder_polygon_set_cull_mode ( RID occluder_polygon, mode )

    Sets an occluder polygons cull mode. See CANVAS_OCCLUDER_POLYGON_CULL_MODE_* constants.


    • void canvas_occluder_polygon_set_shape ( RID occluder_polygon, shape, bool closed )

    Sets the shape of the occluder polygon.


    • void canvas_occluder_polygon_set_shape_as_lines ( occluder_polygon, PoolVector2Array shape )

    Sets the shape of the occluder polygon as lines.


    • void canvas_set_item_mirroring ( canvas, RID item, mirroring )

    A copy of the canvas item will be drawn with a local offset of the mirroring Vector2.


    • void canvas_set_modulate ( canvas, Color color )

    Modulates all colors in the given canvas.


    • directional_light_create ( )

    • void draw ( bool swap_buffers=true, frame_step=0.0 )

    • RID environment_create ( )

    • void environment_set_adjustment ( env, bool enable, brightness, float contrast, saturation, RID ramp )

    • void environment_set_ambient_light ( env, Color color, energy=1.0, float sky_contibution=0.0 )


    • void environment_set_bg_color ( env, Color color )

    • void environment_set_bg_energy ( env, float energy )

    • void environment_set_canvas_max_layer ( env, int max_layer )



    • void environment_set_fog ( env, bool enable, color, Color sun_color, sun_amount )

    • void environment_set_fog_depth ( RID env, enable, float depth_begin, depth_end, float depth_curve, transmit, float transmit_curve )

    • void environment_set_fog_height ( env, bool enable, min_height, float max_height, height_curve )

    • void environment_set_glow ( RID env, enable, int level_flags, intensity, float strength, bloom_threshold, EnvironmentGlowBlendMode blend_mode, hdr_bleed_threshold, float hdr_bleed_scale, hdr_luminance_cap, bool bicubic_upscale )

    • void environment_set_sky ( env, RID sky )

    • void environment_set_sky_custom_fov ( env, float scale )

    • void environment_set_sky_orientation ( env, Basis orientation )


    • void environment_set_ssr ( RID env, enable, int max_steps, fade_in, float fade_out, depth_tolerance, bool roughness )

    • void environment_set_tonemap ( env, EnvironmentToneMapper tone_mapper, exposure, float white, auto_exposure, float min_luminance, max_luminance, float auto_exp_speed, auto_exp_grey )

    • void finish ( )

    Removes buffers and clears testcubes.


    • void force_draw ( bool swap_buffers=true, frame_step=0.0 )

    • void force_sync ( )

    Synchronizes threads.


    • void free_rid ( RID rid )

    Tries to free an object in the VisualServer.


    Returns a certain information, see RENDER_INFO_* for options.


    • get_test_cube ( )

    Returns the id of the test cube. Creates one if none exists.


    • RID get_test_texture ( )

    Returns the id of the test texture. Creates one if none exists.


    • get_white_texture ( )

    Returns the id of a white texture. Creates one if none exists.


    • RID gi_probe_create ( )

    • gi_probe_get_bias ( RID probe ) const

    • gi_probe_get_bounds ( RID probe ) const

    • gi_probe_get_cell_size ( RID probe ) const

    • gi_probe_get_dynamic_data ( RID probe ) const

    • gi_probe_get_dynamic_range ( RID probe ) const

    • gi_probe_get_energy ( RID probe ) const

    • gi_probe_get_normal_bias ( RID probe ) const

    • gi_probe_get_propagation ( RID probe ) const

    • gi_probe_get_to_cell_xform ( RID probe ) const

    • gi_probe_is_compressed ( RID probe ) const

    • gi_probe_is_interior ( RID probe ) const

    • void gi_probe_set_bias ( probe, float bias )

    • void gi_probe_set_bounds ( probe, AABB bounds )

    • void gi_probe_set_cell_size ( probe, float range )

    • void gi_probe_set_compress ( probe, bool enable )

    • void gi_probe_set_dynamic_data ( probe, PoolIntArray data )

    • void gi_probe_set_dynamic_range ( probe, int range )

    • void gi_probe_set_energy ( probe, float energy )

    • void gi_probe_set_interior ( probe, bool enable )

    • void gi_probe_set_normal_bias ( probe, float bias )

    • void gi_probe_set_propagation ( probe, float propagation )

    • void gi_probe_set_to_cell_xform ( probe, Transform xform )

    • has_changed ( ) const

    Returns true if changes have been made to the VisualServer’s data. draw is usually called if this happens.



    • has_os_feature ( String feature ) const

    Returns true if the OS supports a certain feature. Features might be s3tc, etc, etc2 and pvrtc,


    • void immediate_begin ( immediate, PrimitiveType primitive, texture )

    • void immediate_clear ( RID immediate )

    • void immediate_color ( immediate, Color color )

    • immediate_create ( )

    • void immediate_end ( RID immediate )

    • immediate_get_material ( RID immediate ) const

    • void immediate_normal ( immediate, Vector3 normal )

    • void immediate_set_material ( immediate, RID material )

    • void immediate_tangent ( immediate, Plane tangent )

    • void immediate_uv ( immediate, Vector2 tex_uv )

    • void immediate_uv2 ( immediate, Vector2 tex_uv )

    • void immediate_vertex ( immediate, Vector3 vertex )

    • void immediate_vertex_2d ( immediate, Vector2 vertex )

    • void init ( )

    Initializes the visual server.


    • void instance_attach_object_instance_id ( instance, int id )

    • void instance_attach_skeleton ( instance, RID skeleton )

    • instance_create ( )

    • RID instance_create2 ( base, RID scenario )

    • void instance_geometry_set_as_instance_lod ( instance, RID as_lod_of_instance )

    • void instance_geometry_set_cast_shadows_setting ( instance, ShadowCastingSetting shadow_casting_setting )

    • void instance_geometry_set_draw_range ( instance, float min, max, float min_margin, max_margin )

    • void instance_geometry_set_flag ( RID instance, flag, bool enabled )

    • void instance_geometry_set_material_override ( instance, RID material )

    • void instance_set_base ( instance, RID base )

    • void instance_set_blend_shape_weight ( instance, int shape, weight )

    • void instance_set_custom_aabb ( RID instance, aabb )

    • void instance_set_exterior ( RID instance, enabled )

    • void instance_set_extra_visibility_margin ( RID instance, margin )

    • void instance_set_layer_mask ( RID instance, mask )

    • void instance_set_scenario ( RID instance, scenario )

    • void instance_set_surface_material ( RID instance, surface, RID material )


    • void instance_set_use_lightmap ( instance, RID lightmap_instance, lightmap )

    • void instance_set_visible ( RID instance, visible )

    • Array instances_cull_aabb ( aabb, RID scenario ) const

    • instances_cull_convex ( Array convex, scenario ) const

    • Array instances_cull_ray ( from, Vector3 to, scenario ) const

    Returns an array of object IDs intersecting with the provided 3D ray. Only visual 3D nodes are considered, such as MeshInstance or . Use @GDScript.instance_from_id to obtain the actual nodes. A scenario RID must be provided, which is available in the you want to query.

    Warning: this function is primarily intended for editor usage. For in-game use cases, prefer physics collision.


    • void light_directional_set_blend_splits ( RID light, enable )

    • void light_directional_set_shadow_depth_range_mode ( RID light, range_mode )

    • void light_directional_set_shadow_mode ( RID light, mode )

    • void light_omni_set_shadow_detail ( RID light, detail )

    • void light_omni_set_shadow_mode ( RID light, mode )

    • void light_set_color ( RID light, color )

    • void light_set_cull_mask ( RID light, mask )

    • void light_set_negative ( RID light, enable )

    • void light_set_param ( RID light, param, float value )

    • void light_set_projector ( light, RID texture )

    • void light_set_reverse_cull_face_mode ( light, bool enabled )

    • void light_set_shadow ( light, bool enabled )

    • void light_set_shadow_color ( light, Color color )

    • lightmap_capture_create ( )

    • AABB lightmap_capture_get_bounds ( capture ) const

    • float lightmap_capture_get_energy ( capture ) const


    • int lightmap_capture_get_octree_cell_subdiv ( capture ) const

    • Transform lightmap_capture_get_octree_cell_transform ( capture ) const

    • void lightmap_capture_set_bounds ( RID capture, bounds )

    • void lightmap_capture_set_energy ( RID capture, energy )

    • void lightmap_capture_set_octree ( RID capture, octree )

    • void lightmap_capture_set_octree_cell_subdiv ( RID capture, subdiv )

    • void lightmap_capture_set_octree_cell_transform ( RID capture, xform )

    • RID make_sphere_mesh ( latitudes, int longitudes, radius )

    Returns a mesh of a sphere with the given amount of horizontal and vertical subdivisions.


    • RID material_create ( )

    Returns an empty material.


    • material_get_param ( RID material, parameter ) const

    Returns the value of a certain material’s parameter.


    • Variant material_get_param_default ( material, String parameter ) const

    • material_get_shader ( 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.


    • void material_set_line_width ( material, float width )

    Sets a materials line width.


    • void material_set_next_pass ( material, RID next_material )

    Sets an objects next material.


    • void material_set_param ( material, String parameter, value )

    Sets a materials parameter.


    • void material_set_render_priority ( RID material, priority )

    Sets a material’s render priority.


    • void material_set_shader ( RID shader_material, shader )

    Sets a shader material’s shader.


    • void mesh_add_surface_from_arrays ( RID mesh, primtive, Array arrays, blend_shapes=[ ], int compress_format=97280 )

    Adds a surface generated from the Arrays to a mesh. See PRIMITIVE_TYPE_* constants for types.


    • void mesh_clear ( mesh )

    Removes all surfaces from a mesh.


    • RID mesh_create ( )

    Creates a new mesh.


    • mesh_get_blend_shape_count ( RID mesh ) const

    Returns a mesh’s blend shape count.


    • mesh_get_blend_shape_mode ( RID mesh ) const

    Returns a mesh’s blend shape mode.


    • mesh_get_custom_aabb ( RID mesh ) const

    Returns a mesh’s custom aabb.


    • mesh_get_surface_count ( RID mesh ) const

    Returns a mesh’s number of surfaces.


    • void mesh_remove_surface ( mesh, int index )

    Removes a mesh’s surface.


    • void mesh_set_blend_shape_count ( mesh, int amount )

    Sets a mesh’s blend shape mode.


    • void mesh_set_custom_aabb ( mesh, AABB aabb )

    Sets a mesh’s custom aabb.


    • mesh_surface_get_aabb ( RID mesh, surface ) const

    Returns a mesh’s surface’s aabb.


    Returns a mesh’s surface’s vertex buffer.


    • mesh_surface_get_array_index_len ( RID mesh, surface ) const

    Returns a mesh’s surface’s amount of indices.


    • int mesh_surface_get_array_len ( mesh, int surface ) const

    Returns a mesh’s surface’s amount of vertices.


    • mesh_surface_get_arrays ( RID mesh, surface ) const

    Returns a mesh’s surface’s buffer arrays.


    • Array mesh_surface_get_blend_shape_arrays ( mesh, int surface ) const

    Returns a mesh’s surface’s arrays for blend shapes


    • mesh_surface_get_format ( RID mesh, surface ) const

    Returns the format of a mesh’s surface.


    • int mesh_surface_get_format_offset ( format, int vertex_len, index_len, int array_index ) const

    • mesh_surface_get_format_stride ( int format, vertex_len, int index_len ) const

    • mesh_surface_get_index_array ( RID mesh, surface ) const

    Returns a mesh’s surface’s index buffer.


    • RID mesh_surface_get_material ( mesh, int surface ) const

    Returns a mesh’s surface’s material.


    • mesh_surface_get_primitive_type ( RID mesh, surface ) const

    Returns the primitive type of a mesh’s surface.


    • Array mesh_surface_get_skeleton_aabb ( mesh, int surface ) const

    Returns the aabb of a mesh’s surface’s skeleton.


    • void mesh_surface_set_material ( mesh, int surface, material )

    Sets a mesh’s surface’s material.


    • void mesh_surface_update_region ( RID mesh, surface, int offset, data )


    • multimesh_get_aabb ( RID multimesh ) const

    • multimesh_get_instance_count ( RID multimesh ) const

    • multimesh_get_mesh ( RID multimesh ) const

    • multimesh_get_visible_instances ( RID multimesh ) const

    • multimesh_instance_get_color ( RID multimesh, index ) const

    • Color multimesh_instance_get_custom_data ( multimesh, int index ) const

    • multimesh_instance_get_transform ( RID multimesh, index ) const

    • Transform2D multimesh_instance_get_transform_2d ( multimesh, int index ) const

    • void multimesh_instance_set_color ( multimesh, int index, color )

    • void multimesh_instance_set_custom_data ( RID multimesh, index, Color custom_data )

    • void multimesh_instance_set_transform ( multimesh, int index, transform )

    • void multimesh_instance_set_transform_2d ( RID multimesh, index, Transform2D transform )

    • void multimesh_set_as_bulk_array ( multimesh, PoolRealArray array )

    • void multimesh_set_mesh ( multimesh, RID mesh )

    • void multimesh_set_visible_instances ( multimesh, int visible )

    • omni_light_create ( )

    • RID particles_create ( )

    • particles_get_current_aabb ( RID particles )

    • particles_get_emitting ( RID particles )

    • void particles_restart ( particles )

    • void particles_set_amount ( RID particles, amount )

    • void particles_set_custom_aabb ( RID particles, aabb )

    • void particles_set_draw_order ( RID particles, order )

    • void particles_set_draw_pass_mesh ( RID particles, pass, RID mesh )

    • void particles_set_draw_passes ( particles, int count )

    • void particles_set_emission_transform ( particles, Transform transform )

    • void particles_set_emitting ( particles, bool emitting )

    • void particles_set_explosiveness_ratio ( particles, float ratio )

    • void particles_set_fixed_fps ( particles, int fps )

    • void particles_set_fractional_delta ( particles, bool enable )

    • void particles_set_lifetime ( particles, float lifetime )

    • void particles_set_one_shot ( particles, bool one_shot )

    • void particles_set_pre_process_time ( particles, float time )

    • void particles_set_process_material ( particles, RID material )

    • void particles_set_randomness_ratio ( particles, float ratio )

    • void particles_set_speed_scale ( particles, float scale )

    • void particles_set_use_local_coordinates ( particles, bool enable )

    • reflection_probe_create ( )

    • void reflection_probe_set_as_interior ( RID probe, enable )

    • void reflection_probe_set_cull_mask ( RID probe, layers )

    • void reflection_probe_set_enable_box_projection ( RID probe, enable )

    • void reflection_probe_set_enable_shadows ( RID probe, enable )

    • void reflection_probe_set_extents ( RID probe, extents )

    • void reflection_probe_set_intensity ( RID probe, intensity )

    • void reflection_probe_set_interior_ambient ( RID probe, color )

    • void reflection_probe_set_interior_ambient_energy ( RID probe, energy )

    • void reflection_probe_set_interior_ambient_probe_contribution ( RID probe, contrib )

    • void reflection_probe_set_max_distance ( RID probe, distance )

    • void reflection_probe_set_origin_offset ( RID probe, offset )

    • void reflection_probe_set_update_mode ( RID probe, mode )

    • void request_frame_drawn_callback ( Object where, method, 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’.


    • scenario_create ( )

    • void scenario_set_debug ( RID scenario, debug_mode )

    • void scenario_set_environment ( RID scenario, environment )

    • void scenario_set_fallback_environment ( RID scenario, environment )

    • void scenario_set_reflection_atlas_size ( RID scenario, size, int subdiv )

    • void set_boot_image ( image, Color color, scale )

    Sets a boot image. The color defines the background color and if scale is true the image will be scaled to fit the screen size.


    • void set_debug_generate_wireframes ( bool generate )

    • void set_default_clear_color ( color )

    • RID shader_create ( )

    Creates an empty shader.


    • shader_get_code ( RID shader ) const

    Returns a shader’s code.


    • shader_get_default_texture_param ( RID shader, name ) const

    Returns a default texture from a shader searched by name.


    • Array shader_get_param_list ( shader ) const

    Returns the parameters of a shader.


    • void shader_set_code ( RID shader, code )

    Sets a shader’s code.


    • void shader_set_default_texture_param ( RID shader, name, RID texture )

    Sets a shader’s default texture. Overwrites the texture given by name.


    • void skeleton_allocate ( skeleton, int bones, is_2d_skeleton=false )

    • Transform skeleton_bone_get_transform ( skeleton, int bone ) const

    • skeleton_bone_get_transform_2d ( RID skeleton, bone ) const

    • void skeleton_bone_set_transform ( RID skeleton, bone, Transform transform )

    • void skeleton_bone_set_transform_2d ( skeleton, int bone, transform )

    • RID skeleton_create ( )

    • skeleton_get_bone_count ( RID skeleton ) const

    • sky_create ( )

    Creates an empty sky.


    • void sky_set_texture ( RID sky, cube_map, int radiance_size )

    Sets a sky’s texture.


    • spot_light_create ( )

    • void sync ( )

    • void texture_allocate ( RID texture, width, int height, depth_3d, Format format, type, int flags=7 )

    • texture_create ( )

    Creates an empty texture.


    • RID texture_create_from_image ( image, int flags=7 )

    Creates a texture, allocates the space for an image, and fills in the image.


    • texture_debug_usage ( )

    Returns a list of all the textures and their information.


    • Image texture_get_data ( texture, int cube_side=0 ) const

    Returns a copy of a texture’s image unless it’s a CubeMap, in which case it returns the of the image at one of the cubes sides.


    • int texture_get_depth ( texture ) const

    • int texture_get_flags ( texture ) const

    Returns the flags of a texture.


    • Format texture_get_format ( texture ) const

    Returns the format of the texture’s image.


    • int texture_get_height ( texture ) const

    Returns the texture’s height.


    • String texture_get_path ( texture ) const

    Returns the texture’s path.


    • int texture_get_texid ( texture ) const

    Returns the opengl id of the texture’s image.



    • int texture_get_width ( texture ) const

    Returns the texture’s width.


    • void texture_set_data ( RID texture, image, int layer=0 )

    Sets the texture’s image data. If it’s a CubeMap, it sets the image data at a cube side.


    • void texture_set_data_partial ( texture, Image image, src_x, int src_y, src_w, int src_h, dst_x, int dst_y, dst_mip, int layer=0 )

    • void texture_set_flags ( texture, int flags )

    Sets the texture’s flags. See for options


    • void texture_set_path ( RID texture, path )

    Sets the texture’s path.


    • void texture_set_shrink_all_x2_on_set_data ( bool shrink )

    If , sets internal processes to shrink all image data to half the size.


    • void texture_set_size_override ( texture, int width, height, int depth )

    • void textures_keep_original ( enable )

    If true, the image will be stored in the texture’s images array if overwritten.


    • void viewport_attach_camera ( RID viewport, camera )

    Sets a viewport’s camera.


    • void viewport_attach_canvas ( RID viewport, canvas )

    Sets a viewport’s canvas.


    • void viewport_attach_to_screen ( RID viewport, rect=Rect2( 0, 0, 0, 0 ), int screen=0 )

    Attaches a viewport to a screen.


    • viewport_create ( )

    Creates an empty viewport.


    • void viewport_detach ( RID viewport )

    Detaches the viewport from the screen.


    • viewport_get_render_info ( RID viewport, info )

    Returns a viewport’s render info. for options see VIEWPORT_RENDER_INFO* constants.


    • RID viewport_get_texture ( viewport ) const

    Returns the viewport’s last rendered frame.


    • void viewport_remove_canvas ( RID viewport, canvas )

    Detaches a viewport from a canvas and vice versa.


    • void viewport_set_active ( RID viewport, active )

    If true, sets the viewport active, else sets it inactive.


    • void viewport_set_canvas_stacking ( RID viewport, canvas, int layer, 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.


    • void viewport_set_canvas_transform ( RID viewport, canvas, Transform2D offset )

    Sets the transformation of a viewport’s canvas.


    Sets the clear mode of a viewport. See for options.


    • void viewport_set_debug_draw ( RID viewport, draw )

    Sets the debug draw mode of a viewport. See ViewportDebugDraw for options.


    • void viewport_set_disable_3d ( viewport, bool disabled )

    If , a viewport’s 3D rendering is disabled.


    • void viewport_set_disable_environment ( viewport, bool disabled )

    If true, rendering of a viewport’s environment is disabled.


    • void viewport_set_global_canvas_transform ( viewport, Transform2D transform )

    Sets the viewport’s global transformation matrix.


    • void viewport_set_hdr ( viewport, bool enabled )

    If true, the viewport renders to hdr.


    • void viewport_set_hide_canvas ( viewport, bool hidden )

    If true, the viewport’s canvas is not rendered.


    • void viewport_set_hide_scenario ( viewport, bool hidden )

    Sets the anti-aliasing mode. see for options.


    • void viewport_set_parent_viewport ( RID viewport, parent_viewport )

    Sets the viewport’s parent to another viewport.


    • void viewport_set_scenario ( RID viewport, scenario )

    Sets a viewport’s scenario.

    The scenario contains information about the ScenarioDebugMode, environment information, reflection atlas etc.


    • void viewport_set_shadow_atlas_quadrant_subdivision ( viewport, int quadrant, subdivision )

    Sets the shadow atlas quadrant’s subdivision.


    • void viewport_set_shadow_atlas_size ( RID viewport, size )

    Sets the size of the shadow atlas’s images.


    • void viewport_set_size ( RID viewport, width, int height )

    Sets the viewport’s width and height.


    • void viewport_set_transparent_background ( viewport, bool enabled )

    If true, the viewport renders its background as transparent.


    Sets when the viewport should be updated. See constants for options.


    • void viewport_set_usage ( RID viewport, usage )

    Sets the viewport’s 2D/3D mode. See ViewportUsage constants for options.


    • void viewport_set_use_arvr ( viewport, bool use_arvr )

    If , the viewport uses augmented or virtual reality technologies. See .


    • void viewport_set_vflip ( RID viewport, enabled )