Files
UnrealEngine/Engine/Source/Runtime/StaticMeshDescription/Public/UVMapSettings.h
2025-05-18 13:04:45 +08:00

84 lines
1.9 KiB
C

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Math/Quat.h"
#include "UObject/ObjectMacros.h"
#include "UVMapSettings.generated.h"
/** UV map generation settings that are exposed to the user for scripting and through the editor */
USTRUCT(BlueprintType)
struct FUVMapSettings
{
GENERATED_BODY()
/** Length, width, height of the UV mapping gizmo */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = UVMapSettings)
FVector Size;
/** Tiling of the UV mapping */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = UVMapSettings)
FVector2D UVTile;
/** Position of the UV mapping gizmo */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = GizmoTransform)
FVector Position;
/** Rotation of the UV mapping gizmo (angles in degrees) */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = GizmoTransform)
FRotator Rotation;
/** Scale of the UV mapping gizmo */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = GizmoTransform)
FVector Scale;
/** Default settings */
FUVMapSettings()
: Size(1.0f)
, UVTile(1.0f, 1.0f)
, Position(0.0f)
, Rotation(0)
, Scale(1.0f)
{
}
};
struct FUVMapParameters
{
/** Length, width, height of the UV mapping gizmo */
FVector Size;
/** Tiling of the UV mapping */
FVector2D UVTile;
/** Position of the UV mapping gizmo */
FVector Position;
/** Rotation of the UV mapping gizmo (angles in degrees) */
FQuat Rotation;
/** Scale of the UV mapping gizmo */
FVector Scale;
/** Default settings */
FUVMapParameters()
: Size(1.0f)
, UVTile(1.0f, 1.0f)
, Position(0.0f)
, Rotation(ForceInit)
, Scale(1.0f)
{
}
FUVMapParameters(const FVector& InPosition, const FQuat& InRotation, const FVector& InSize, const FVector& InScale, const FVector2D& InUVTile)
: Size(InSize)
, UVTile(InUVTile)
, Position(InPosition)
, Rotation(InRotation)
, Scale(InScale)
{
}
};