Update Transform Component view of the editor
This commit is contained in:
parent
28927d9a4e
commit
042dc3a457
@ -1,5 +1,5 @@
|
||||
#include "Inspector.h"
|
||||
|
||||
#include "../TransformVec3.h"
|
||||
|
||||
void Inspector::Draw()
|
||||
{
|
||||
@ -40,9 +40,18 @@ void Inspector::ShowComponents()
|
||||
if (selected.HasComponent<YoggieEngine::TransformComponent>()) {
|
||||
auto& transform = selected.GetComponent<YoggieEngine::TransformComponent>();
|
||||
if (ImGui::CollapsingHeader("Transform", ImGuiTreeNodeFlags_DefaultOpen)) {
|
||||
/*
|
||||
ImGui::DragFloat3("Position", glm::value_ptr(transform.Position), 0.1f);
|
||||
ImGui::DragFloat3("Rotation", glm::value_ptr(transform.Rotation), 0.1f);
|
||||
ImGui::DragFloat3("Scale", glm::value_ptr(transform.Scale), 0.1f, 0.0f);
|
||||
*/
|
||||
auto something = glm::value_ptr(transform.Position);
|
||||
|
||||
ImGuiExtension::TransformVec3("Position", transform.Position);
|
||||
ImGuiExtension::TransformVec3("Rotation", transform.Rotation);
|
||||
ImGuiExtension::TransformVec3("Scale", transform.Scale);
|
||||
|
||||
|
||||
}
|
||||
if (selected.HasComponent<YoggieEngine::RelationComponent>()) {
|
||||
ImGui::Text("Has relation");
|
||||
|
59
Editor/src/TransformVec3.h
Normal file
59
Editor/src/TransformVec3.h
Normal file
@ -0,0 +1,59 @@
|
||||
#pragma once
|
||||
#include <imgui_widgets.cpp>
|
||||
#include <glm/glm.hpp>
|
||||
namespace ImGuiExtension {
|
||||
|
||||
|
||||
void TransformVec3(const char* label, glm::vec3& vector) {
|
||||
|
||||
ImGui::PushID(label);
|
||||
ImGui::Columns(2);
|
||||
ImGui::SetColumnWidth(0, 100.0f);
|
||||
ImGui::Text(label);
|
||||
|
||||
ImGui::NextColumn();
|
||||
|
||||
ImGui::PushMultiItemsWidths(3, ImGui::CalcItemWidth());
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2{ 0, 0 });
|
||||
|
||||
ImGui::PushStyleColor(ImGuiCol_Button, ImVec4{ 0.8f, 0.1f, 0.15f, 1.0f });
|
||||
ImGui::PushStyleColor(ImGuiCol_ButtonHovered, ImVec4{ 0.9f,0.2f,0.2f, 1.0f });
|
||||
ImGui::PushStyleColor(ImGuiCol_ButtonActive, ImVec4{ 0.8f,0.1f,0.15f, 1.0f });
|
||||
if (ImGui::Button("X"))
|
||||
vector.x = 0;
|
||||
ImGui::PopStyleColor(3);
|
||||
|
||||
ImGui::SameLine();
|
||||
ImGui::DragFloat("##X", &glm::value_ptr(vector)[0], 0.1f, 0.0f, 0.0f, "%.2f");
|
||||
ImGui::PopItemWidth();
|
||||
ImGui::SameLine();
|
||||
|
||||
ImGui::PushStyleColor(ImGuiCol_Button, ImVec4{ 0.2f, 0.7f, 0.2f, 1.0f });
|
||||
ImGui::PushStyleColor(ImGuiCol_ButtonHovered, ImVec4{ 0.3f,0.8f,0.3f, 1.0f });
|
||||
ImGui::PushStyleColor(ImGuiCol_ButtonActive, ImVec4{ 0.2f,0.7f,0.2f, 1.0f });
|
||||
if (ImGui::Button("Y"))
|
||||
vector.y = 0;
|
||||
ImGui::PopStyleColor(3);
|
||||
|
||||
ImGui::SameLine();
|
||||
ImGui::DragFloat("##Y", &glm::value_ptr(vector)[1], 0.1f, 0.0f, 0.0f, "%.2f");
|
||||
ImGui::PopItemWidth();
|
||||
ImGui::SameLine();
|
||||
|
||||
ImGui::PushStyleColor(ImGuiCol_Button, ImVec4{ 0.1f, 0.25f, 0.8f, 1.0f });
|
||||
ImGui::PushStyleColor(ImGuiCol_ButtonHovered, ImVec4{ 0.2f,0.35f,0.9f, 1.0f });
|
||||
ImGui::PushStyleColor(ImGuiCol_ButtonActive, ImVec4{ 0.1f,0.25f,0.8f, 1.0f });
|
||||
if (ImGui::Button("Z"))
|
||||
vector.z = 0;
|
||||
ImGui::PopStyleColor(3);
|
||||
|
||||
ImGui::SameLine();
|
||||
ImGui::DragFloat("##Z", &glm::value_ptr(vector)[2], 0.1f, 0.0f, 0.0f, "%.2f");
|
||||
ImGui::PopItemWidth();
|
||||
ImGui::PopStyleVar();
|
||||
|
||||
ImGui::Columns(1);
|
||||
ImGui::PopID();
|
||||
|
||||
}
|
||||
}
|
@ -84,9 +84,9 @@ public:
|
||||
inspector.Update();
|
||||
//console.Update();
|
||||
|
||||
assetsView.Draw();
|
||||
assetsView.Update();
|
||||
|
||||
//ImGui::ShowDemoWindow();
|
||||
ImGui::ShowDemoWindow();
|
||||
//ImGui::ShowMetricsWindow();
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user