Plasma Engine  2.0
Loading...
Searching...
No Matches
GizmoComponent.h
1#pragma once
2
3#include <EditorEngineProcessFramework/EditorEngineProcessFrameworkDLL.h>
4#include <RendererCore/Meshes/MeshComponent.h>
5
6class PL_EDITORENGINEPROCESSFRAMEWORK_DLL plGizmoRenderData : public plMeshRenderData
7{
8 PL_ADD_DYNAMIC_REFLECTION(plGizmoRenderData, plMeshRenderData);
9
10public:
11 plColor m_GizmoColor;
12 bool m_bIsPickable;
13};
14
16class plGizmoComponentManager : public plComponentManager<plGizmoComponent, plBlockStorageType::FreeList>
17{
18public:
20
21 plUInt32 m_uiHighlightID = 0;
22};
23
28class PL_EDITORENGINEPROCESSFRAMEWORK_DLL plGizmoComponent : public plMeshComponent
29{
30 PL_DECLARE_COMPONENT_TYPE(plGizmoComponent, plMeshComponent, plGizmoComponentManager);
31
33 // plMeshComponentBase
34
35protected:
36 virtual plMeshRenderData* CreateRenderData() const override;
37 virtual plResult GetLocalBounds(plBoundingBoxSphere& bounds, bool& bAlwaysVisible, plMsgUpdateLocalBounds& msg) override;
38
40 // plGizmoComponent
41
42public:
45
46 plColor m_GizmoColor = plColor::White;
47 bool m_bIsPickable = true;
48};
plColor represents an RGBA color in linear color space. Values are stored as float,...
Definition Color.h:44
static const plColor White
#FFFFFF
Definition Color.h:194
Definition ComponentManager.h:88
Used by the editor to render gizmo meshes.
Definition GizmoComponent.h:29
Definition GizmoComponent.h:17
Definition GizmoComponent.h:7
Renders a single instance of a static mesh.
Definition MeshComponent.h:12
Definition MeshComponentBase.h:13
A world encapsulates a scene graph of game objects and various component managers and their component...
Definition World.h:22
Definition UpdateLocalBoundsMessage.h:9
Default enum for returning failure or success, instead of using a bool.
Definition Types.h:54