// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "Engine/DataAsset.h" #include "VREditorAssetContainer.generated.h" // Forward declarations class USoundBase; class USoundCue; class UStaticMesh; class UMaterial; class UMaterialInterface; class UMaterialInstance; class UFont; /** * Asset container for VREditor. */ UCLASS() class VREDITOR_API UVREditorAssetContainer : public UDataAsset { GENERATED_BODY() public: // // Sounds // UPROPERTY(EditAnywhere, Category = Sound) TObjectPtr DockableWindowCloseSound; UPROPERTY(EditAnywhere, Category = Sound) TObjectPtr DockableWindowOpenSound; UPROPERTY(EditAnywhere, Category = Sound) TObjectPtr DockableWindowDropSound; UPROPERTY(EditAnywhere, Category = Sound) TObjectPtr DockableWindowDragSound; UPROPERTY(EditAnywhere, Category = Sound) TObjectPtr DropFromContentBrowserSound; UPROPERTY(EditAnywhere, Category = Sound) TObjectPtr RadialMenuOpenSound; UPROPERTY(EditAnywhere, Category = Sound) TObjectPtr RadialMenuCloseSound; UPROPERTY(EditAnywhere, Category = Sound) TObjectPtr TeleportSound; UPROPERTY(EditAnywhere, Category = Sound) TObjectPtr ButtonPressSound; UPROPERTY(EditAnywhere, Category = Sound) TObjectPtr AutoScaleSound; // // Meshes // UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr GenericHMDMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr PlaneMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr CylinderMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr LaserPointerStartMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr LaserPointerMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr LaserPointerEndMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr LaserPointerHoverMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr VivePreControllerMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr OculusControllerMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr GenericControllerMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr TeleportRootMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr WindowMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr WindowSelectionBarMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr WindowCloseButtonMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr RadialMenuMainMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr RadialMenuPointerMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr PointerCursorMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr LineSegmentCylinderMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr JointSphereMesh; UPROPERTY(EditAnywhere, Category = Mesh) TObjectPtr DockingButtonMesh; // // Materials // UPROPERTY(EditAnywhere, Category = Material) TObjectPtr GridMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr LaserPointerMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr LaserPointerTranslucentMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr WorldMovementPostProcessMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr TextMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr VivePreControllerMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr OculusControllerMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr TeleportMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr WindowMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr WindowTranslucentMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr LineMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr TranslucentTextMaterial; UPROPERTY(EditAnywhere, Category = Material) TObjectPtr WidgetMaterial; //Specific material for camera widgets that operates in linear color space UPROPERTY(EditAnywhere, Category = Material) TObjectPtr CameraWidgetMaterial; // // Fonts // UPROPERTY(EditAnywhere, Category = Font) TObjectPtr TextFont; };