8#define IMGUI_DEFINE_MATH_OPERATORS
10#include <imgui_internal.h>
11#include "imgui_impl_win32.h"
12#include "imgui_impl_dx11.h"
78 float resetValues = 0.0f,
79 float columnWidth = 100.0f,
80 bool displayAsDegrees =
false);
99 XMStoreFloat4x4(&temp, mat);
100 memcpy(dest, &temp,
sizeof(
float) * 16);
109 ID3D11ShaderResourceView* finalViewportSRV,
110 ID3D11ShaderResourceView* shadowMapSRV);
Declara la API de Prerequisites dentro del subsistema Core.
Representa una entidad gráfica con mallas, texturas y estados de renderizado.
Encapsula un ID3D11Device y facilita la creación de recursos gráficos en Direct3D 11.
Clase TSharedPointer para manejar la gestión de memoria compartida.
Centraliza la interfaz del editor construida sobre ImGui e ImGuizmo.
void editTransform(Camera &cam, Window &window, EU::TSharedPointer< Actor > actor)
std::vector< const char * > m_objectsNames
void inspectorGeneral(EU::TSharedPointer< Actor > actor)
int selectedActorIndex
Indice del actor seleccionado en el outliner.
bool consumeSaveSceneRequest()
Consume de forma atomica la solicitud de guardado emitida desde la UI.
void awake()
Inicializa estado interno previo a la integracion con ImGui.
void drawEditorDockspace()
void init(Window &window, Device &device, DeviceContext &deviceContext)
Configura los backends de ImGui para Win32 y Direct3D 11.
void drawRenderDebugPanel(ID3D11ShaderResourceView *preShadowSRV, ID3D11ShaderResourceView *finalViewportSRV, ID3D11ShaderResourceView *shadowMapSRV)
ImDrawList * m_viewportDrawList
void update(Viewport &viewport, Window &window)
Actualiza el frame de ImGui y el estado de la ventana del editor.
bool m_viewportFocused
Indica si el viewport tiene foco de entrada.
void drawStudioTopRibbon()
ImVec2 m_viewportPos
Posicion del panel de viewport en pantalla.
bool m_viewportHovered
Indica si el cursor esta sobre el viewport.
void drawViewportPanel(ID3D11ShaderResourceView *viewportSRV)
void vec3Control(const std::string &label, float *values, float resetValues=0.0f, float columnWidth=100.0f, bool displayAsDegrees=false)
bool m_isUsingGizmo
Indica si el gizmo esta capturando entrada del usuario.
std::vector< const char * > m_tooltips
void inspectorContainer(EU::TSharedPointer< Actor > actor)
ImVec2 m_viewportSize
Tamano actual del viewport del editor.
void ToFloatArray(const XMMATRIX &mat, float *dest)
void outliner(const std::vector< EU::TSharedPointer< Actor > > &actors)
void render()
Renderiza todos los paneles activos del editor.
void appleLiquidStyle(float opacity, ImVec4 accent)
Encapsula un D3D11_VIEWPORT para definir la región de renderizado en la pantalla.
Encapsula la creacion y administracion de la ventana principal de Win32.