unreal.LandscapeTexturePatch
¶
- class unreal.LandscapeTexturePatch(outer: Object | None = None, name: Name | str = 'None')¶
Bases:
LandscapePatchComponent
Landscape Texture Patch
C++ Source:
Plugin: LandscapePatch
Module: LandscapePatch
File: LandscapeTexturePatch.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 parentabsolute_rotation
(bool): [Read-Write] If RelativeRotation should be considered relative to the world, rather than the parentabsolute_scale
(bool): [Read-Write] If RelativeScale3D should be considered relative to the world, rather than the parentapply_component_z_scale
(bool): [Read-Write] Whether to apply the patch Z scale to the height stored in the patch.asset_user_data
(Array[AssetUserData]): [Read-Write] Array of user data stored with the componentasset_user_data_editor_only
(Array[AssetUserData]): [Read-Write] Array of user data stored with the componentauto_activate
(bool): [Read-Write] Whether the component is activated at creation or must be explicitly activated.base_resolution_off_landscape
(bool): [Read-Write] When initializing from landscape, set resolution based off of the landscape (and a multiplier).blend_mode
(LandscapeTexturePatchBlendMode): [Read-Write]can_ever_affect_navigation
(bool): [Read-Write] Whether this component can potentially influence navigationcomponent_tags
(Array[Name]): [Read-Write] Array of tags that can be used for grouping and categorizing. Can also be accessed from scripting.detail_mode
(DetailMode): [Read-Write] If detail mode is >= system detail mode, primitive won’t be rendered.detail_panel_height_source_mode
(LandscapeTexturePatchSourceMode): [Read-Write] How the heightmap of the patch is stored. Not settable in the detail panel of the blueprint editor- use SetHeightSourceMode in blueprint actors instead.editable_when_inherited
(bool): [Read-Write] True if this component can be modified when it was inherited from a parent actor classfalloff
(float): [Read-Write] Distance (in unscaled world coordinates) across which to smoothly fall off the patch effects.falloff_mode
(LandscapeTexturePatchFalloffMode): [Read-Write]height_encoding
(LandscapeTextureHeightPatchEncoding): [Read-Write] How the values stored in the patch represent the height. Not customizable for Internal Texture source mode, which always uses native packed height.height_encoding_settings
(LandscapeTexturePatchEncodingSettings): [Read-Write] Encoding settings. Not relevant when using native packed height as the encoding.height_internal_data
(LandscapeHeightTextureBackedRenderTarget): [Read-Only] Not directly settable via detail panel- for display/debugging purposes only.height_source_mode
(LandscapeTexturePatchSourceMode): [Read-Write] How the heightmap of the patch is stored. This is the property that is actually used, and it will agree with DetailPanelHeightSourceMode at all times except when user is changing the latter via the detail panel.height_texture_asset
(Texture): [Read-Write] Texture used when source mode is set to a texture asset.hidden_in_game
(bool): [Read-Write] Whether to hide the primitive in game, if the primitive is Visible.init_texture_size_x
(int32): [Read-Write] Texture width to use when reinitializing, if not basing resolution off landscape.init_texture_size_y
(int32): [Read-Write] Texture height to use when reinitializingis_editor_only
(bool): [Read-Write] If true, the component will be excluded from non-editor buildsis_enabled
(bool): [Read-Write] When false, patch does not affect the landscape. Useful for temporarily disabling the patch.landscape
(Landscape): [Read-Write]mobility
(ComponentMobility): [Read-Write] How often this component is allowed to move, used to make various optimizations. Only safe to set in constructor.on_component_activated
(ActorComponentActivatedSignature): [Read-Write] Called when the component has been activated, with parameter indicating if it was from a reseton_component_deactivated
(ActorComponentDeactivateSignature): [Read-Write] Called when the component has been deactivatedpatch_manager
(LandscapePatchManager): [Read-Write]physics_volume_changed_delegate
(PhysicsVolumeChanged): [Read-Write] Delegate that will be called when PhysicsVolume has been changed *primary_component_tick
(ActorComponentTickFunction): [Read-Write] Main tick function for the Componentrelative_location
(Vector): [Read-Write] Location of the component relative to its parentrelative_rotation
(Rotator): [Read-Write] Rotation of the component relative to its parentrelative_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)replicate_using_registered_sub_object_list
(bool): [Read-Write] When true the replication system will only replicate the registered subobjects list When false the replication system will instead call the virtual ReplicateSubObjects() function where the subobjects need to be manually replicated.replicates
(bool): [Read-Write] Is this component currently replicating? Should the network code consider it for replication? Owning Actor must be replicating first!resolution_multiplier
(float): [Read-Write] Multiplier to apply to landscape resolution when initializing patch resolution. A value greater than 1.0 will use higher resolution than the landscape (perhaps useful for slightly more accurate results while not aligned to landscape), and a value less that 1.0 will use lower.should_update_physics_volume
(bool): [Read-Write] Whether or not the cached PhysicsVolume this component overlaps should be updated when the component is moved. see: GetPhysicsVolume()unscaled_patch_coverage
(Vector2D): [Read-Write] At scale 1.0, the X and Y of the region affected by the height patch. This corresponds to the distance from the centerof the first pixel to the center of the last pixel in the patch texture in the X and Y directions.
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_texture_alpha_for_height
(bool): [Read-Write] When true, texture alpha channel will be used when applying the patch. Note that the source data needs to have an alpha channel for this to have an effect.visible
(bool): [Read-Write] Whether to completely draw the primitive; if false, the primitive is not drawn, does not cast a shadow.weight_patches
(Array[LandscapeWeightPatchTextureInfo]): [Read-Write]zero_height_meaning
(LandscapeTextureHeightPatchZeroHeightMeaning): [Read-Write] How 0 height is interpreted.
- add_weight_patch(weightmap_layer_name, source_mode, use_alpha_channel) None ¶
By default, the layer is added with source mode set to be a texture-backed render target.
- Parameters:
weightmap_layer_name (Name) –
source_mode (LandscapeTexturePatchSourceMode) –
use_alpha_channel (bool) –
- clear_weight_patch_blend_mode_override(weightmap_layer_name) None ¶
Clear Weight Patch Blend Mode Override
- Parameters:
weightmap_layer_name (Name) –
- get_full_unscaled_world_size() Vector2D ¶
Gives size in unscaled world coordinates of the patch in the world, based off of UnscaledCoverage and texture resolution (i.e., adds a half-pixel around UnscaledCoverage).
- Return type:
- get_height_render_target(mark_dirty=True) TextureRenderTarget2D ¶
Gets the internal height render target, if source mode is set to Texture Backed Render Target.
Things that should be set up if using the internal render target: - SetHeightSourceMode should have been called with TextureBackedRenderTarget. - An appropriate texture size should have been set with SetResolution. If the patch extent has already
been set, you can base your resolution on the extent and the resolution of the landscape by using GetInitResolutionFromLandscape().
SetHeightRenderTargetFormat should have been called with a desired format. In particular, if using
an alpha channel, the format should have an alpha channel (and SetUseAlphaChannelForHeight should have been called with “true”).
In addition, you may need to call SetHeightEncodingMode, SetHeightEncodingSettings, and SetZeroHeightMeaning based on how you want the data you write to be interpreted. This part is not specific to using an internal render target, since you are likely to need to do that with a TextureAsset source mode as well.
- Parameters:
mark_dirty (bool) – If true, marks the containing package as dirty, since the render target is presumably being written to. Can be set to false if the render target is not being written to.
- Return type:
- get_height_source_mode() LandscapeTexturePatchSourceMode ¶
Height related functions:
- Return type:
- get_init_resolution_from_landscape(resolution_multiplier=1.000000) Vector2D or None ¶
Given the landscape resolution, current patch coverage, and a landscape resolution multiplier, gives the needed resolution of the landscape patch. I.e., figures out the number of pixels in the landcape that would be in a region of such size, and then uses the resolution multiplier to give a result.
- get_patch_to_world_transform() Transform ¶
Gets the transform from patch to world. The transform is based off of the component transform, but with rotation changed to align to the landscape, only using the yaw to rotate it relative to the landscape.
- Return type:
- get_resolution() Vector2D ¶
Gets the size (in pixels) of the internal textures used by the patch. Does not reflect the resolution of any used texture assets (if the source mode is texture asset).
- Return type:
- get_unscaled_coverage() Vector2D ¶
Gives size in unscaled world coordinates (ie before applying patch transform) of the patch as measured between the centers of the outermost pixels. Measuring the coverage this way means that a patch can affect the same region of the landscape regardless of patch resolution. This is also the range across which bilinear interpolation always has correct values, so the area outside this center portion is usually set as a “dead” border that doesn’t affect the landscape.
- Return type:
- get_weight_patch_render_target(weightmap_layer_name) TextureRenderTarget2D ¶
Get Weight Patch Render Target
- Parameters:
weightmap_layer_name (Name) –
- Return type:
- get_weight_patch_source_mode(weightmap_layer_name) LandscapeTexturePatchSourceMode ¶
Get Weight Patch Source Mode
- Parameters:
weightmap_layer_name (Name) –
- Return type:
- remove_weight_patch(weightmap_layer_name) None ¶
Remove Weight Patch
- Parameters:
weightmap_layer_name (Name) –
- reset_height_encoding_mode(encoding_mode) None ¶
Just like SetSourceEncodingMode, but resets ZeroInEncoding, WorldSpaceEncodingScale, and height render target format to mode-specific defaults.
- Parameters:
encoding_mode (LandscapeTextureHeightPatchEncoding) –
- set_blend_mode(blend_mode_in) None ¶
Determines how the height patch is blended into the existing terrain.
- Parameters:
blend_mode_in (LandscapeTexturePatchBlendMode) –
- set_edit_visibility_layer(weightmap_layer_name, edit_visibility_layer) None ¶
Set Edit Visibility Layer
- set_height_encoding_mode(encoding_mode) None ¶
Set the height encoding mode for the patch, which determines how stored values in the patch are translated into heights when applying to landscape.
- Parameters:
encoding_mode (LandscapeTextureHeightPatchEncoding) –
- set_height_encoding_settings(settings) None ¶
Set settings that determine how values in the patch are translated into heights. This is only used if the encoding mode is not NativePackedHeight, where values are expected to be already in the same space as the landscape heightmap.
- Parameters:
settings (LandscapeTexturePatchEncodingSettings) –
- set_height_render_target_format(format) None ¶
Set Height Render Target Format
- Parameters:
format (TextureRenderTargetFormat) –
- set_height_source_mode(new_mode) None ¶
Changes source mode. When changing between sources, existing data is copied from one to the other when possible.
- Parameters:
new_mode (LandscapeTexturePatchSourceMode) –
- set_height_texture_asset(texture_in) None ¶
Sets the texture used for height when the height source mode is set to texture asset. Note that virtual textures are not supported.
- Parameters:
texture_in (Texture) –
- set_resolution(resolution_in) None ¶
Sets the resolution of the currently used internal texture or render target. Has no effect if the source mode is set to an external texture asset.
- Parameters:
resolution_in (Vector2D) –
- set_unscaled_coverage(coverage) None ¶
Set the patch coverage (see GetUnscaledCoverage for description).
- Parameters:
coverage (Vector2D) –
- set_use_alpha_channel_for_height(use) None ¶
Determines whether the height patch alpha channel is used for blending into the existing values. Note that the source data needs to have an alpha channel in this case. How the alpha channel is used depends on the patch blend mode (see SetBlendMode).
- Parameters:
use (bool) –
- set_use_alpha_channel_for_weight_patch(weightmap_layer_name, use_alpha_channel) None ¶
Set Use Alpha Channel for Weight Patch
- set_weight_patch_blend_mode_override(weightmap_layer_name, blend_mode) None ¶
Set Weight Patch Blend Mode Override
- Parameters:
weightmap_layer_name (Name) –
blend_mode (LandscapeTexturePatchBlendMode) –
- set_weight_patch_source_mode(weightmap_layer_name, new_mode) None ¶
Set Weight Patch Source Mode
- Parameters:
weightmap_layer_name (Name) –
new_mode (LandscapeTexturePatchSourceMode) –
- set_weight_patch_texture_asset(weightmap_layer_name, texture_in) None ¶
Set Weight Patch Texture Asset
- set_zero_height_meaning(zero_height_meaning_in) None ¶
Set how zero height is interpreted, see comments in ELandscapeTextureHeightPatchZeroHeightMeaning.
- Parameters:
zero_height_meaning_in (LandscapeTextureHeightPatchZeroHeightMeaning) –
- snap_to_landscape() None ¶
Adjusts patch rotation to be aligned to a 90 degree increment relative to the landscape, adjusts UnscaledPatchCoverage such that it becomes a multiple of landscape quad size, and adjusts patch location so that the boundaries of the covered area lie on the nearest landscape vertices. Note that this doesn’t adjust the resolution of the texture that the patch uses, so landscape vertices within the inside of the patch may still not always align with texture patch pixel centers (if the resolutions aren’t multiples of each other).