mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-08-06 08:09:19 +00:00
VideoCommon: update graphics mod action interface with details needed for editor
This commit is contained in:
parent
338854fa41
commit
2225549334
3 changed files with 22 additions and 0 deletions
|
@ -3,6 +3,8 @@
|
||||||
|
|
||||||
#include "VideoCommon/GraphicsModSystem/Runtime/Actions/MoveAction.h"
|
#include "VideoCommon/GraphicsModSystem/Runtime/Actions/MoveAction.h"
|
||||||
|
|
||||||
|
#include <imgui.h>
|
||||||
|
|
||||||
std::unique_ptr<MoveAction> MoveAction::Create(const picojson::value& json_data)
|
std::unique_ptr<MoveAction> MoveAction::Create(const picojson::value& json_data)
|
||||||
{
|
{
|
||||||
Common::Vec3 position_offset;
|
Common::Vec3 position_offset;
|
||||||
|
@ -26,10 +28,22 @@ std::unique_ptr<MoveAction> MoveAction::Create(const picojson::value& json_data)
|
||||||
return std::make_unique<MoveAction>(position_offset);
|
return std::make_unique<MoveAction>(position_offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::unique_ptr<MoveAction> MoveAction::Create()
|
||||||
|
{
|
||||||
|
return std::make_unique<MoveAction>(Common::Vec3{});
|
||||||
|
}
|
||||||
|
|
||||||
MoveAction::MoveAction(Common::Vec3 position_offset) : m_position_offset(position_offset)
|
MoveAction::MoveAction(Common::Vec3 position_offset) : m_position_offset(position_offset)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MoveAction::DrawImGui()
|
||||||
|
{
|
||||||
|
ImGui::InputFloat("X", &m_position_offset.x);
|
||||||
|
ImGui::InputFloat("Y", &m_position_offset.y);
|
||||||
|
ImGui::InputFloat("Z", &m_position_offset.z);
|
||||||
|
}
|
||||||
|
|
||||||
void MoveAction::OnProjection(GraphicsModActionData::Projection* projection)
|
void MoveAction::OnProjection(GraphicsModActionData::Projection* projection)
|
||||||
{
|
{
|
||||||
if (!projection) [[unlikely]]
|
if (!projection) [[unlikely]]
|
||||||
|
|
|
@ -15,7 +15,13 @@ class MoveAction final : public GraphicsModAction
|
||||||
public:
|
public:
|
||||||
static constexpr std::string_view factory_name = "move";
|
static constexpr std::string_view factory_name = "move";
|
||||||
static std::unique_ptr<MoveAction> Create(const picojson::value& json_data);
|
static std::unique_ptr<MoveAction> Create(const picojson::value& json_data);
|
||||||
|
static std::unique_ptr<MoveAction> Create();
|
||||||
|
|
||||||
|
MoveAction() = default;
|
||||||
explicit MoveAction(Common::Vec3 position_offset);
|
explicit MoveAction(Common::Vec3 position_offset);
|
||||||
|
|
||||||
|
void DrawImGui() override;
|
||||||
|
|
||||||
void OnProjection(GraphicsModActionData::Projection* projection) override;
|
void OnProjection(GraphicsModActionData::Projection* projection) override;
|
||||||
void OnProjectionAndTexture(GraphicsModActionData::Projection* projection) override;
|
void OnProjectionAndTexture(GraphicsModActionData::Projection* projection) override;
|
||||||
|
|
||||||
|
|
|
@ -23,4 +23,6 @@ public:
|
||||||
virtual void OnTextureLoad(GraphicsModActionData::TextureLoad*) {}
|
virtual void OnTextureLoad(GraphicsModActionData::TextureLoad*) {}
|
||||||
virtual void OnTextureCreate(GraphicsModActionData::TextureCreate*) {}
|
virtual void OnTextureCreate(GraphicsModActionData::TextureCreate*) {}
|
||||||
virtual void OnFrameEnd() {}
|
virtual void OnFrameEnd() {}
|
||||||
|
|
||||||
|
virtual void DrawImGui() {}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue