84 lines
1.9 KiB
C
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)
|
|
{
|
|
}
|
|
};
|