添加 Source/FLESHEditor/Public/FLESHViewportClient.h
This commit is contained in:
55
Source/FLESHEditor/Public/FLESHViewportClient.h
Normal file
55
Source/FLESHEditor/Public/FLESHViewportClient.h
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "CoreMinimal.h"
|
||||||
|
#include "EditorViewportClient.h"
|
||||||
|
|
||||||
|
class FFLESHEditor;
|
||||||
|
class FSceneViewport;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* FLESH Editor Viewport Client
|
||||||
|
* Handles 3D view rendering and interactions
|
||||||
|
*/
|
||||||
|
class FFLESHViewportClient : public FEditorViewportClient
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
/** Constructor */
|
||||||
|
FFLESHViewportClient(FFLESHEditor* InEditor);
|
||||||
|
|
||||||
|
/** Destructor */
|
||||||
|
virtual ~FFLESHViewportClient();
|
||||||
|
|
||||||
|
/** Draw the viewport */
|
||||||
|
virtual void Draw(const FSceneView* View, FPrimitiveDrawInterface* PDI) override;
|
||||||
|
|
||||||
|
/** Handle mouse clicks - deprecated API kept for compatibility with existing code */
|
||||||
|
virtual bool InputKey(FViewport* InViewport, int32 ControllerId, FKey Key, EInputEvent Event, float AmountDepressed = 1.f, bool bGamepad = false) override;
|
||||||
|
|
||||||
|
/** Handle mouse clicks - new API */
|
||||||
|
virtual bool InputKey(const FInputKeyEventArgs& EventArgs) override;
|
||||||
|
|
||||||
|
/** Reset camera */
|
||||||
|
void ResetCamera();
|
||||||
|
|
||||||
|
/** Toggle wireframe mode */
|
||||||
|
void ToggleWireframe();
|
||||||
|
|
||||||
|
/** Toggle bone display */
|
||||||
|
void ToggleBones();
|
||||||
|
|
||||||
|
/** Viewport pointer */
|
||||||
|
FSceneViewport* Viewport;
|
||||||
|
|
||||||
|
private:
|
||||||
|
/** Editor reference */
|
||||||
|
FFLESHEditor* Editor;
|
||||||
|
|
||||||
|
/** Show wireframe */
|
||||||
|
bool bShowWireframe;
|
||||||
|
|
||||||
|
/** Show bones */
|
||||||
|
bool bShowBones;
|
||||||
|
|
||||||
|
/** Preview scene for the viewport */
|
||||||
|
TSharedPtr<FPreviewScene> PreviewScene;
|
||||||
|
};
|
Reference in New Issue
Block a user