unreal.WidgetComponent

class unreal.WidgetComponent(outer=None, name='None')

Bases: unreal.MeshComponent

The widget component provides a surface in the 3D environment on which to render widgets normally rendered to the screen. Widgets are first rendered to a render target, then that render target is displayed in the world.

Material Properties set by this component on whatever material overrides the default. SlateUI [Texture] BackColor [Vector] TintColorAndOpacity [Vector] OpacityFromTexture [Scalar]

C++ Source:

  • Module: UMG

  • File: WidgetComponent.h

Editor Properties: (see get_editor_property/set_editor_property)

  • absolute_location (bool): [Read-Write] If RelativeLocation should be considered relative to the world, rather than the parent

  • absolute_rotation (bool): [Read-Write] If RelativeRotation should be considered relative to the world, rather than the parent

  • absolute_scale (bool): [Read-Write] If RelativeScale3D should be considered relative to the world, rather than the parent

  • affect_distance_field_lighting (bool): [Read-Write] Controls whether the primitive should affect dynamic distance field lighting methods. This flag is only used if CastShadow is true. *

  • affect_dynamic_indirect_lighting (bool): [Read-Write] Controls whether the primitive should inject light into the Light Propagation Volume. This flag is only used if CastShadow is true. *

  • allow_cull_distance_volume (bool): [Read-Write] Whether to accept cull distance volumes to modify cached cull distance.

  • always_create_physics_state (bool): [Read-Write] Indicates if we’d like to create physics state all the time (for collision and simulation). If you set this to false, it still will create physics state if collision or simulation activated. This can help performance if you’d like to avoid overhead of creating physics state when triggers

  • apply_gamma_correction (bool): [Read-Write] Widget components that appear in the world will be gamma corrected by the 3D renderer. In some cases, widget components are blitted directly into the backbuffer, in which case gamma correction should be enabled.

  • apply_impulse_on_damage (bool): [Read-Write] True for damage to this component to apply physics impulse, false to opt out of these impulses.

  • asset_user_data (Array(AssetUserData)): [Read-Write] Array of user data stored with the component

  • auto_activate (bool): [Read-Write] Whether the component is activated at creation or must be explicitly activated.

  • background_color (LinearColor): [Read-Write] The background color of the component

  • batch_imposters_as_instances (bool): [Read-Write] If true, the proxy generation process will use instancing to render this imposter

  • blend_mode (WidgetBlendMode): [Read-Write] The blend mode for the widget.

  • body_instance (BodyInstance): [Read-Write] Physics scene information for this component, holds a single rigid body with multiple shapes.

  • bounds_scale (float): [Read-Write] Scales the bounds of the object. This is useful when using World Position Offset to animate the vertices of the object outside of its bounds. Warning: Increasing the bounds of an object will reduce performance and shadow quality! Currently only used by StaticMeshComponent and SkeletalMeshComponent.

  • cached_max_draw_distance (float): [Read-Only] The distance to cull this primitive at. A CachedMaxDrawDistance of 0 indicates that the primitive should not be culled by distance.

  • can_character_step_up_on (CanBeCharacterBase): [Read-Write] Determine whether a Character can step up onto this component. This controls whether they can try to step up on it when they bump in to it, not whether they can walk on it after landing on it. FWalkableSlopeOverride:

  • can_ever_affect_navigation (bool): [Read-Write] Whether this component can potentially influence navigation

  • cast_cinematic_shadow (bool): [Read-Write] Whether this component should cast shadows from lights that have bCastShadowsFromCinematicObjectsOnly enabled. This is useful for characters in a cinematic with special cinematic lights, where the cost of shadowmap rendering of the environment is undesired.

  • cast_contact_shadow (bool): [Read-Write] Whether the object should cast contact shadows. This flag is only used if CastShadow is true.

  • cast_dynamic_shadow (bool): [Read-Write] Controls whether the primitive should cast shadows in the case of non precomputed shadowing. This flag is only used if CastShadow is true. *

  • cast_far_shadow (bool): [Read-Write] When enabled, the component will be rendering into the far shadow cascades (only for directional lights).

  • cast_hidden_shadow (bool): [Read-Write] If true, the primitive will cast shadows even if bHidden is true. Controls whether the primitive should cast shadows when hidden. This flag is only used if CastShadow is true.

  • cast_inset_shadow (bool): [Read-Write] Whether this component should create a per-object shadow that gives higher effective shadow resolution. Useful for cinematic character shadowing. Assumed to be enabled if bSelfShadowOnly is enabled.

  • cast_shadow (bool): [Read-Write] Controls whether the primitive component should cast a shadow or not.

  • cast_shadow_as_two_sided (bool): [Read-Write] Whether this primitive should cast dynamic shadows as if it were a two sided material.

  • cast_static_shadow (bool): [Read-Write] Whether the object should cast a static shadow from shadow casting lights. This flag is only used if CastShadow is true.

  • cast_volumetric_translucent_shadow (bool): [Read-Write] Whether the object should cast a volumetric translucent shadow. Volumetric translucent shadows are useful for primitives with smoothly changing opacity like particles representing a volume, But have artifacts when used on highly opaque surfaces.

  • component_tags (Array(Name)): [Read-Write] Array of tags that can be used for grouping and categorizing. Can also be accessed from scripting.

  • custom_depth_stencil_value (int32): [Read-Write] Optionally write this 0-255 value to the stencil buffer in CustomDepth pass (Requires project setting or r.CustomDepth == 3)

  • custom_depth_stencil_write_mask (RendererStencilMask): [Read-Write] Mask used for stencil buffer writes.

  • custom_primitive_data (CustomPrimitiveData): [Read-Write] Optional user defined default values for the custom primitive data of this primitive

  • cylinder_arc_angle (float): [Read-Write] Curvature of a cylindrical widget in degrees.

  • detail_mode (DetailMode): [Read-Write] If detail mode is >= system detail mode, primitive won’t be rendered.

  • draw_at_desired_size (bool): [Read-Write] Causes the render target to automatically match the desired size.

    WARNING: If you change this every frame, it will be very expensive. If you need

    that effect, you should keep the outer widget’s sized locked and dynamically scale or resize some inner widget.

  • draw_size (IntPoint): [Read-Write] The size of the displayed quad.

  • editable_when_inherited (bool): [Read-Write] True if this component can be modified when it was inherited from a parent actor class

  • enable_auto_lod_generation (bool): [Read-Write] If true, and if World setting has bEnableHierarchicalLOD equal to true, then this component will be included when generating a Proxy mesh for the parent Actor

  • enable_material_parameter_caching (bool): [Read-Write] Enable Material Parameter Caching

  • exclude_for_specific_hlod_levels (Array(int32)): [Read-Write] Which specific HLOD levels this component should be excluded from

  • exclude_from_light_attachment_group (bool): [Read-Write] If set, then it overrides any bLightAttachmentsAsGroup set in a parent.

  • fill_collision_underneath_for_navmesh (bool): [Read-Write] If set, navmesh will not be generated under the surface of the geometry

  • force_mip_streaming (bool): [Read-Write] If true, forces mips for textures used by this component to be resident when this component’s level is loaded.

  • generate_overlap_events (bool): [Read-Write] Generate Overlap Events

  • geometry_mode (WidgetGeometryMode): [Read-Write] Controls the geometry of the widget component. See EWidgetGeometryMode.

  • hidden_in_game (bool): [Read-Write] Whether to hide the primitive in game, if the primitive is Visible.

  • ignore_radial_force (bool): [Read-Write] Will ignore radial forces applied to this component.

  • ignore_radial_impulse (bool): [Read-Write] Will ignore radial impulses applied to this component.

  • indirect_lighting_cache_quality (IndirectLightingCacheQuality): [Read-Write] Quality of indirect lighting for Movable primitives. This has a large effect on Indirect Lighting Cache update time.

  • is_editor_only (bool): [Read-Write] If true, the component will be excluded from non-editor builds

  • is_two_sided (bool): [Read-Write] Is the component visible from behind?

  • layer_z_order (int32): [Read-Write] ZOrder the layer will be created on, note this only matters on the first time a new layer is created, subsequent additions to the same layer will use the initially defined ZOrder

  • ld_max_draw_distance (float): [Read-Write] Max draw distance exposed to LDs. The real max draw distance is the min (disregarding 0) of this and volumes affecting this object.

  • light_attachments_as_group (bool): [Read-Write] Whether to light this component and any attachments as a group. This only has effect on the root component of an attachment tree. When enabled, attached component shadowing settings like bCastInsetShadow, bCastVolumetricTranslucentShadow, etc, will be ignored. This is useful for improving performance when multiple movable components are attached together.

  • lighting_channels (LightingChannels): [Read-Write] Channels that this component should be in. Lights with matching channels will affect the component. These channels only apply to opaque materials, direct lighting, and dynamic lighting and shadowing.

  • lightmap_type (LightmapType): [Read-Write] Controls the type of lightmap used for this component.

  • lpv_bias_multiplier (float): [Read-Write] Multiplier used to scale the Light Propagation Volume light injection bias, to reduce light bleeding. Set to 0 for no bias, 1 for default or higher for increased biasing (e.g. for thin geometry such as walls)

  • manually_redraw (bool): [Read-Write] Should we wait to be told to redraw to actually draw?

  • min_draw_distance (float): [Read-Write] The minimum distance at which the primitive should be rendered, measured in world space units from the center of the primitive’s bounding sphere to the camera position.

  • mobility (ComponentMobility): [Read-Write] How often this component is allowed to move, used to make various optimizations. Only safe to set in constructor.

  • multi_body_overlap (bool): [Read-Write] If true, this component will generate individual overlaps for each overlapping physics body if it is a multi-body component. When false, this component will generate only one overlap, regardless of how many physics bodies it has and how many of them are overlapping another component/body. This flag has no influence on single body components.

  • never_distance_cull (bool): [Read-Write] When enabled this object will not be culled by distance. This is ignored if a child of a HLOD.

  • on_begin_cursor_over (ComponentBeginCursorOverSignature): [Read-Write] Event called when the mouse cursor is moved over this component and mouse over events are enabled in the player controller

  • on_clicked (ComponentOnClickedSignature): [Read-Write] Event called when the left mouse button is clicked while the mouse is over this component and click events are enabled in the player controller

  • on_component_activated (ActorComponentActivatedSignature): [Read-Write] Called when the component has been activated, with parameter indicating if it was from a reset

  • on_component_begin_overlap (ComponentBeginOverlapSignature): [Read-Write] Event called when something starts to overlaps this component, for example a player walking into a trigger. For events when objects have a blocking collision, for example a player hitting a wall, see ‘Hit’ events. Both this component and the other one must have GetGenerateOverlapEvents() set to true to generate overlap events.: When receiving an overlap from another object’s movement, the directions of ‘Hit.Normal’ and ‘Hit.ImpactNormal’ will be adjusted to indicate force from the other object against this object.:

  • on_component_deactivated (ActorComponentDeactivateSignature): [Read-Write] Called when the component has been deactivated

  • on_component_end_overlap (ComponentEndOverlapSignature): [Read-Write] Event called when something stops overlapping this component Both this component and the other one must have GetGenerateOverlapEvents() set to true to generate overlap events.:

  • on_component_hit (ComponentHitSignature): [Read-Write] Event called when a component hits (or is hit by) something solid. This could happen due to things like Character movement, using Set Location with ‘sweep’ enabled, or physics simulation. For events when objects overlap (e.g. walking into a trigger) see the ‘Overlap’ event. For collisions during physics simulation to generate hit events, ‘Simulation Generates Hit Events’ must be enabled for this component.: When receiving a hit from another object’s movement, the directions of ‘Hit.Normal’ and ‘Hit.ImpactNormal’ will be adjusted to indicate force from the other object against this object.: NormalImpulse will be filled in for physics-simulating bodies, but will be zero for swept-component blocking collisions.:

  • on_component_sleep (ComponentSleepSignature): [Read-Write] Event called when the underlying physics objects is put to sleep

  • on_component_wake (ComponentWakeSignature): [Read-Write] Event called when the underlying physics objects is woken up

  • on_end_cursor_over (ComponentEndCursorOverSignature): [Read-Write] Event called when the mouse cursor is moved off this component and mouse over events are enabled in the player controller

  • on_input_touch_begin (ComponentOnInputTouchBeginSignature): [Read-Write] Event called when a touch input is received over this component when touch events are enabled in the player controller

  • on_input_touch_end (ComponentOnInputTouchEndSignature): [Read-Write] Event called when a touch input is released over this component when touch events are enabled in the player controller

  • on_input_touch_enter (ComponentBeginTouchOverSignature): [Read-Write] Event called when a finger is moved over this component when touch over events are enabled in the player controller

  • on_input_touch_leave (ComponentEndTouchOverSignature): [Read-Write] Event called when a finger is moved off this component when touch over events are enabled in the player controller

  • on_released (ComponentOnReleasedSignature): [Read-Write] Event called when the left mouse button is released while the mouse is over this component click events are enabled in the player controller

  • only_owner_see (bool): [Read-Write] If this is True, this component will only be visible when the view actor is the component’s owner, directly or indirectly.

  • opacity_from_texture (float): [Read-Write] Sets the amount of opacity from the widget’s UI texture to use when rendering the translucent or masked UI to the viewport (0.0-1.0)

  • override_materials (Array(MaterialInterface)): [Read-Write] Material overrides.

  • owner_no_see (bool): [Read-Write] If this is True, this component won’t be visible when the view actor is the component’s owner, directly or indirectly.

  • physics_volume_changed_delegate (PhysicsVolumeChanged): [Read-Write] Delegate that will be called when PhysicsVolume has been changed *

  • pivot (Vector2D): [Read-Write] The Alignment/Pivot point that the widget is placed at relative to the position.

  • primary_component_tick (ActorComponentTickFunction): [Read-Write] Main tick function for the Component

  • receive_hardware_input (bool): [Read-Write] Register with the viewport for hardware input from the true mouse and keyboard. These widgets will more or less react like regular 2D widgets in the viewport, e.g. they can and will steal focus from the viewport.

    WARNING: If you are making a VR game, definitely do not change this to true. This option should ONLY be used if you’re making what would otherwise be a normal menu for a game, just in 3D. If you also need the game to remain responsive and for the player to be able to interact with UI and move around the world (such as a keypad on a door), use the WidgetInteractionComponent instead.

  • receive_mobile_csm_shadows (bool): [Read-Write] Mobile only: If disabled this component will not receive CSM shadows. (Components that do not receive CSM may have reduced shading cost)

  • receives_decals (bool): [Read-Write] Whether the primitive receives decals.

  • redraw_time (float): [Read-Write] The time in between draws, if 0 - we would redraw every frame. If 1, we would redraw every second. This will work with bManuallyRedraw as well. So you can say, manually redraw, but only redraw at this maximum rate.

  • relative_location (Vector): [Read-Write] Location of the component relative to its parent

  • relative_rotation (Rotator): [Read-Write] Rotation of the component relative to its parent

  • relative_scale3d (Vector): [Read-Write] Non-uniform scaling of the component relative to its parent. Note that scaling is always applied in local space (no shearing etc)

  • render_custom_depth (bool): [Read-Write] If true, this component will be rendered in the CustomDepth pass (usually used for outlines)

  • render_in_depth_pass (bool): [Read-Write] If true, this component will be rendered in the depth pass even if it’s not rendered in the main pass

  • render_in_main_pass (bool): [Read-Write] If true, this component will be rendered in the main pass (z prepass, basepass, transparency)

  • replicate_physics_to_autonomous_proxy (bool): [Read-Write] True if physics should be replicated to autonomous proxies. This should be true for

    server-authoritative simulations, and false for client authoritative simulations.

  • replicates (bool): [Read-Write] Is this component currently replicating? Should the network code consider it for replication? Owning Actor must be replicating first!

  • return_material_on_move (bool): [Read-Write] If true, component sweeps will return the material in their hit result. MoveComponent(), FHitResult:

  • runtime_virtual_textures (Array(RuntimeVirtualTexture)): [Read-Write] Array of runtime virtual textures into which we draw the mesh for this actor. The material also needs to be set up to output to a virtual texture.

  • self_shadow_only (bool): [Read-Write] When enabled, the component will only cast a shadow on itself and not other components in the world. This is especially useful for first person weapons, and forces bCastInsetShadow to be enabled.

  • shared_layer_name (Name): [Read-Write] Layer Name the widget will live on

  • should_update_physics_volume (bool): [Read-Write] Whether or not the cached PhysicsVolume this component overlaps should be updated when the component is moved. GetPhysicsVolume():

  • single_sample_shadow_from_stationary_lights (bool): [Read-Write] Whether the whole component should be shadowed as one from stationary lights, which makes shadow receiving much cheaper. When enabled shadowing data comes from the volume lighting samples precomputed by Lightmass, which are very sparse. This is currently only used on stationary directional lights.

  • space (WidgetSpace): [Read-Write] The coordinate space in which to render the widget

  • tick_mode (TickMode): [Read-Write] Tick Mode

  • tick_when_offscreen (bool): [Read-Write] Should the component tick the widget when it’s off screen?

  • timing_policy (WidgetTimingPolicy): [Read-Write] How this widget should deal with timing, pausing, etc.

  • tint_color_and_opacity (LinearColor): [Read-Write] Tint color and opacity for this component

  • trace_complex_on_move (bool): [Read-Write] If true, component sweeps with this component should trace against complex collision during movement (for example, each triangle of a mesh). If false, collision will be resolved against simple collision bounds instead. MoveComponent():

  • translucency_sort_priority (int32): [Read-Write] Translucent objects with a lower sort priority draw behind objects with a higher priority. Translucent objects with the same priority are rendered from back-to-front based on their bounds origin. This setting is also used to sort objects being drawn into a runtime virtual texture.

    Ignored if the object is not translucent. The default priority is zero. Warning: This should never be set to a non-default value unless you know what you are doing, as it will prevent the renderer from sorting correctly. It is especially problematic on dynamic gameplay effects.

  • treat_as_background_for_occlusion (bool): [Read-Write] Treat this primitive as part of the background for occlusion purposes. This can be used as an optimization to reduce the cost of rendering skyboxes, large ground planes that are part of the vista, etc.

  • use_as_occluder (bool): [Read-Write] Whether to render the primitive in the depth only pass. This should generally be true for all objects, and let the renderer make decisions about whether to render objects in the depth only pass. if any rendering features rely on a complete depth only pass, this variable needs to go away.:

  • use_attach_parent_bound (bool): [Read-Write] If true, this component uses its parents bounds when attached. This can be a significant optimization with many components attached together.

  • use_max_lod_as_imposter (bool): [Read-Write] Use the Maximum LOD Mesh (imposter) instead of including Mesh data from this component in the Proxy Generation process

  • virtual_texture_cull_mips (int8): [Read-Write] Number of lower mips in the runtime virtual texture to skip for rendering this primitive. Larger values reduce the effective draw distance in the runtime virtual texture. This culling method doesn’t take into account primitive size or virtual texture size.

  • virtual_texture_lod_bias (int8): [Read-Write] Bias to the LOD selected for rendering to runtime virtual textures.

  • virtual_texture_min_coverage (int8): [Read-Write] Set the minimum pixel coverage before culling from the runtime virtual texture. Larger values reduce the effective draw distance in the runtime virtual texture.

  • virtual_texture_render_pass_type (RuntimeVirtualTextureMainPassType): [Read-Write] Controls if this component draws in the main pass as well as in the virtual texture.

  • visible (bool): [Read-Write] Whether to completely draw the primitive; if false, the primitive is not drawn, does not cast a shadow.

  • visible_in_ray_tracing (bool): [Read-Write] If true, this component will be visible in ray tracing effects. Turning this off will remove it from ray traced reflections, shadows, etc.

  • visible_in_real_time_sky_captures (bool): [Read-Write] If true, this component will be visible in real-time sky light reflection captures.

  • visible_in_reflection_captures (bool): [Read-Write] If true, this component will be visible in reflection captures.

  • widget_class (type(Class)): [Read-Write] The class of User Widget to create and display an instance of

  • window_focusable (bool): [Read-Write] Is the virtual window created to host the widget focusable?

  • window_visibility (WindowVisibility): [Read-Write] The visibility of the virtual window created to host the widget

get_current_draw_size()Vector2D

Returns the “actual” draw size of the quad in the world

Returns

Return type

Vector2D

get_cylinder_arc_angle()float

Defines the curvature of the widget component when using EWidgetGeometryMode::Cylinder; ignored otherwise.

Returns

Return type

float

get_draw_at_desired_size()bool

Get Draw at Desired Size

Returns

Return type

bool

get_draw_size()Vector2D

Returns the “specified” draw size of the quad in the world

Returns

Return type

Vector2D

get_geometry_mode()WidgetGeometryMode

EWidgetGeometryMode,: GetCylinderArcAngle():

Returns

Return type

WidgetGeometryMode

get_manually_redraw()bool

bManuallyRedraw:

Returns

Return type

bool

get_material_instance()MaterialInstanceDynamic

Returns the dynamic material instance used to render the user widget

Returns

Return type

MaterialInstanceDynamic

get_owner_player()LocalPlayer

Gets the local player that owns this widget component.

Returns

Return type

LocalPlayer

get_pivot()Vector2D

Returns the pivot point where the UI is rendered about the origin.

Returns

Return type

Vector2D

get_redraw_time()float

Get Redraw Time

Returns

Return type

float

get_render_target()TextureRenderTarget2D

Returns the render target to which the user widget is rendered

Returns

Return type

TextureRenderTarget2D

get_tick_when_offscreen()bool

Gets whether the widget ticks when offscreen or not

Returns

Return type

bool

get_two_sided()bool

Gets whether the widget is two-sided or not

Returns

Return type

bool

get_user_widget_object()UserWidget

Returns the user widget object displayed by this component

Returns

Return type

UserWidget

get_widget()UserWidget
Sets the widget to use directly. This function will keep track of the widget till the next time it’s called

with either a newer widget or a nullptr

Returns

Return type

UserWidget

get_widget_space()WidgetSpace

Get Widget Space

Returns

Return type

WidgetSpace

get_window_focusable()bool

bWindowFocusable:

Returns

Return type

bool

get_window_visiblility()WindowVisibility

Gets the visibility of the virtual window created to host the widget focusable.

Returns

Return type

WindowVisibility

is_widget_visible()bool

Returns true if the the Slate window is visible and that the widget is also visible, false otherwise.

Returns

Return type

bool

request_redraw()None

Requests that the widget be redrawn.

set_background_color(new_background_color)None

Sets the background color and opacityscale for this widget

Parameters

new_background_color (LinearColor) –

set_cylinder_arc_angle(cylinder_arc_angle)None

Defines the curvature of the widget component when using EWidgetGeometryMode::Cylinder; ignored otherwise.

Parameters

cylinder_arc_angle (float) –

set_draw_at_desired_size(draw_at_desired_size)None

Set Draw at Desired Size

Parameters

draw_at_desired_size (bool) –

set_draw_size(size)None

Sets the draw size of the quad in the world

Parameters

size (Vector2D) –

set_geometry_mode(geometry_mode)None

Set Geometry Mode

Parameters

geometry_mode (WidgetGeometryMode) –

set_manually_redraw(use_manual_redraw)None

bManuallyRedraw:

Parameters

use_manual_redraw (bool) –

set_owner_player(local_player)None

Sets the local player that owns this widget component. Setting the owning player controls which player’s viewport the widget appears on in a split screen scenario. Additionally it forwards the owning player to the actual UserWidget that is spawned.

Parameters

local_player (LocalPlayer) –

set_pivot(pivot)None

Set Pivot

Parameters

pivot (Vector2D) –

set_redraw_time(redraw_time)None

Set Redraw Time

Parameters

redraw_time (float) –

set_tick_mode(tick_mode)None

Sets the Tick mode of the Widget Component.

Parameters

tick_mode (TickMode) –

set_tick_when_offscreen(want_tick_when_offscreen)None

Sets whether the widget ticks when offscreen or not

Parameters

want_tick_when_offscreen (bool) –

set_tint_color_and_opacity(new_tint_color_and_opacity)None

Sets the tint color and opacity scale for this widget

Parameters

new_tint_color_and_opacity (LinearColor) –

set_two_sided(want_two_sided)None

Sets whether the widget is two-sided or not

Parameters

want_two_sided (bool) –

set_widget(widget)None
Sets the widget to use directly. This function will keep track of the widget till the next time it’s called

with either a newer widget or a nullptr

Parameters

widget (UserWidget) –

set_widget_space(new_space)None

Set Widget Space

Parameters

new_space (WidgetSpace) –

set_window_focusable(window_focusable)None

bWindowFocusable:

Parameters

window_focusable (bool) –

set_window_visibility(visibility)None

Sets the visibility of the virtual window created to host the widget focusable.

Parameters

visibility (WindowVisibility) –