Files
UnrealEngineUWP/Engine/Source/Editor/VREditor/VREditorPlacement.h
T
Matt Peters 7ad238a806 AssetRegistry includes (Engine/Source): change #include "AssetData.h" -> #include "AssetRegistry/AssetData.h", and similar for the other moved AssetRegistry headers.
#rb Zousar.Shaker
#rnx
#preflight 6270509a220f89f0ad573030

[CL 20016982 by Matt Peters in ue5-main branch]
2022-05-02 18:06:48 -04:00

67 lines
1.4 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "UObject/ObjectMacros.h"
#include "UObject/Object.h"
#include "AssetRegistry/AssetData.h"
#include "VREditorPlacement.generated.h"
class UActorComponent;
class UViewportInteractor;
class UViewportWorldInteraction;
class UVREditorMode;
struct FViewportActionKeyInput;
/**
* VR Editor interaction with the 3D world
*/
UCLASS()
class UVREditorPlacement : public UObject
{
GENERATED_BODY()
public:
/** Default constructor */
UVREditorPlacement();
/** Registers to events and sets initial values */
void Init(UVREditorMode* InVRMode);
/** Removes registered event */
void Shutdown();
protected:
/** When an interactor stops dragging */
void StopDragging( UViewportInteractor* Interactor );
/** When the world scale changes, update the near clip plane */
void UpdateNearClipPlaneOnScaleChange(const float NewWorldToMetersScale);
protected:
/** Owning object */
UPROPERTY()
TObjectPtr<UVREditorMode> VRMode;
/** The actual ViewportWorldInteraction */
UPROPERTY()
TObjectPtr<UViewportWorldInteraction> ViewportWorldInteraction;
//
// Dragging object from UI
//
/** The UI used to drag an asset into the level */
UPROPERTY()
TObjectPtr<class UWidgetComponent> FloatingUIAssetDraggedFrom;
/** The material or texture asset we're dragging to place on an object */
UPROPERTY()
TObjectPtr<UObject> PlacingMaterialOrTextureAsset;
};