Wildvine Engine
Referencia Doxygen del codigo propio de Wildvine Engine.
Cargando...
Buscando...
Nada coincide
Referencia de la clase GUI

Centraliza la interfaz del editor construida sobre ImGui e ImGuizmo. Más...

#include <GUI.h>

+ Diagrama de colaboración de GUI:

Métodos públicos

void appleLiquidStyle (float opacity, ImVec4 accent)
 
void awake ()
 Inicializa estado interno previo a la integracion con ImGui.
 
void closeApp ()
 
bool consumeSaveSceneRequest ()
 Consume de forma atomica la solicitud de guardado emitida desde la UI.
 
void destroy ()
 
void drawEditorDockspace ()
 
void drawGizmoToolbar ()
 
void drawRenderDebugPanel (ID3D11ShaderResourceView *preShadowSRV, ID3D11ShaderResourceView *finalViewportSRV, ID3D11ShaderResourceView *shadowMapSRV)
 
void drawStudioTopRibbon ()
 
void drawViewportPanel (ID3D11ShaderResourceView *viewportSRV)
 
void editTransform (Camera &cam, Window &window, EU::TSharedPointer< Actor > actor)
 
 GUI ()=default
 
void init (Window &window, Device &device, DeviceContext &deviceContext)
 Configura los backends de ImGui para Win32 y Direct3D 11.
 
void inspectorContainer (EU::TSharedPointer< Actor > actor)
 
void inspectorGeneral (EU::TSharedPointer< Actor > actor)
 
void outliner (const std::vector< EU::TSharedPointer< Actor > > &actors)
 
void render ()
 Renderiza todos los paneles activos del editor.
 
void ToFloatArray (const XMMATRIX &mat, float *dest)
 
void ToolBar ()
 
void toolTipData ()
 
void update (Viewport &viewport, Window &window)
 Actualiza el frame de ImGui y el estado de la ventana del editor.
 
void vec3Control (const std::string &label, float *values, float resetValues=0.0f, float columnWidth=100.0f, bool displayAsDegrees=false)
 
 ~GUI ()=default
 

Atributos públicos

bool m_isUsingGizmo = false
 Indica si el gizmo esta capturando entrada del usuario.
 
bool m_viewportFocused = false
 Indica si el viewport tiene foco de entrada.
 
bool m_viewportHovered = false
 Indica si el cursor esta sobre el viewport.
 
ImVec2 m_viewportPos = ImVec2(0.0f, 0.0f)
 Posicion del panel de viewport en pantalla.
 
ImVec2 m_viewportSize = ImVec2(0.0f, 0.0f)
 Tamano actual del viewport del editor.
 
int selectedActorIndex = -1
 Indice del actor seleccionado en el outliner.
 

Atributos privados

bool checkboxValue = true
 
bool checkboxValue2 = false
 
std::vector< const char * > m_objectsNames
 
bool m_requestSaveScene = false
 
std::vector< const char * > m_tooltips
 
bool m_viewportActive = false
 
ImDrawList * m_viewportDrawList = nullptr
 
bool show_exit_popup = false
 

Descripción detallada

La clase expone paneles de viewport, depuracion de render, outliner e inspector. Tambien recopila interacciones del usuario que despues consume BaseApp.

Definición en la línea 29 del archivo GUI.h.

Documentación de constructores y destructores

◆ GUI()

GUI::GUI ( )
default

◆ ~GUI()

GUI::~GUI ( )
default

Documentación de funciones miembro

◆ appleLiquidStyle()

void GUI::appleLiquidStyle ( float  opacity,
ImVec4  accent 
)

Definición en la línea 368 del archivo GUI.cpp.

Referenciado por init().

◆ awake()

void GUI::awake ( )

◆ closeApp()

void GUI::closeApp ( )

Definición en la línea 514 del archivo GUI.cpp.

Hace referencia a show_exit_popup.

Referenciado por update().

◆ consumeSaveSceneRequest()

bool GUI::consumeSaveSceneRequest ( )
inline
Devuelve
true una sola vez por peticion de guardado.

Definición en la línea 119 del archivo GUI.h.

Hace referencia a m_requestSaveScene.

Referenciado por BaseApp::update().

◆ destroy()

void GUI::destroy ( )

Definición en la línea 259 del archivo GUI.cpp.

Referenciado por BaseApp::destroy().

◆ drawEditorDockspace()

void GUI::drawEditorDockspace ( )

Definición en la línea 1318 del archivo GUI.cpp.

Referenciado por update().

◆ drawGizmoToolbar()

void GUI::drawGizmoToolbar ( )

Definición en la línea 880 del archivo GUI.cpp.

Hace referencia a Alpha, mCurrentGizmoMode() y mCurrentGizmoOperation().

Referenciado por update().

◆ drawRenderDebugPanel()

void GUI::drawRenderDebugPanel ( ID3D11ShaderResourceView *  preShadowSRV,
ID3D11ShaderResourceView *  finalViewportSRV,
ID3D11ShaderResourceView *  shadowMapSRV 
)

Definición en la línea 1257 del archivo GUI.cpp.

Referenciado por BaseApp::update().

◆ drawStudioTopRibbon()

void GUI::drawStudioTopRibbon ( )

Definición en la línea 937 del archivo GUI.cpp.

Hace referencia a m_requestSaveScene, mCurrentGizmoOperation() y show_exit_popup.

Referenciado por update().

◆ drawViewportPanel()

void GUI::drawViewportPanel ( ID3D11ShaderResourceView *  viewportSRV)

Definición en la línea 1203 del archivo GUI.cpp.

Hace referencia a m_viewportActive, m_viewportDrawList, m_viewportFocused, m_viewportHovered, m_viewportPos y m_viewportSize.

Referenciado por BaseApp::update().

◆ editTransform()

void GUI::editTransform ( Camera cam,
Window window,
EU::TSharedPointer< Actor actor 
)

◆ init()

void GUI::init ( Window window,
Device device,
DeviceContext deviceContext 
)

Definición en la línea 193 del archivo GUI.cpp.

Hace referencia a appleLiquidStyle(), Device::m_device, DeviceContext::m_deviceContext, Window::m_hWnd, selectedActorIndex y toolTipData().

Referenciado por BaseApp::run().

◆ inspectorContainer()

void GUI::inspectorContainer ( EU::TSharedPointer< Actor actor)

Definición en la línea 722 del archivo GUI.cpp.

Hace referencia a EU::Vector3::data(), Transform::getPosition(), Transform::getRotation(), Transform::getScale() y vec3Control().

Referenciado por inspectorGeneral().

◆ inspectorGeneral()

◆ outliner()

void GUI::outliner ( const std::vector< EU::TSharedPointer< Actor > > &  actors)

Definición en la línea 733 del archivo GUI.cpp.

Hace referencia a selectedActorIndex.

Referenciado por BaseApp::update().

◆ render()

void GUI::render ( )

Definición en la línea 246 del archivo GUI.cpp.

Referenciado por BaseApp::render().

◆ ToFloatArray()

void GUI::ToFloatArray ( const XMMATRIX &  mat,
float *  dest 
)
inline

Definición en la línea 97 del archivo GUI.h.

Referenciado por editTransform().

◆ ToolBar()

void GUI::ToolBar ( )

Definición en la línea 462 del archivo GUI.cpp.

Hace referencia a show_exit_popup.

◆ toolTipData()

void GUI::toolTipData ( )

Definición en la línea 364 del archivo GUI.cpp.

Referenciado por init().

◆ update()

void GUI::update ( Viewport viewport,
Window window 
)

Definición en la línea 224 del archivo GUI.cpp.

Hace referencia a closeApp(), drawEditorDockspace(), drawGizmoToolbar(), drawStudioTopRibbon() y m_requestSaveScene.

Referenciado por BaseApp::update().

◆ vec3Control()

void GUI::vec3Control ( const std::string &  label,
float *  values,
float  resetValues = 0.0f,
float  columnWidth = 100.0f,
bool  displayAsDegrees = false 
)

Definición en la línea 267 del archivo GUI.cpp.

Referenciado por inspectorContainer() y BaseApp::update().

Documentación de datos miembro

◆ checkboxValue

bool GUI::checkboxValue = true
private

Definición en la línea 127 del archivo GUI.h.

◆ checkboxValue2

bool GUI::checkboxValue2 = false
private

Definición en la línea 128 del archivo GUI.h.

◆ m_isUsingGizmo

bool GUI::m_isUsingGizmo = false

Definición en la línea 138 del archivo GUI.h.

Referenciado por editTransform().

◆ m_objectsNames

std::vector<const char*> GUI::m_objectsNames
private

Definición en la línea 129 del archivo GUI.h.

◆ m_requestSaveScene

bool GUI::m_requestSaveScene = false
private

Definición en la línea 133 del archivo GUI.h.

Referenciado por consumeSaveSceneRequest(), drawStudioTopRibbon() y update().

◆ m_tooltips

std::vector<const char*> GUI::m_tooltips
private

Definición en la línea 130 del archivo GUI.h.

◆ m_viewportActive

bool GUI::m_viewportActive = false
private

Definición en la línea 135 del archivo GUI.h.

Referenciado por drawViewportPanel().

◆ m_viewportDrawList

ImDrawList* GUI::m_viewportDrawList = nullptr
private

Definición en la línea 134 del archivo GUI.h.

Referenciado por drawViewportPanel() y editTransform().

◆ m_viewportFocused

bool GUI::m_viewportFocused = false

Definición en la línea 143 del archivo GUI.h.

Referenciado por drawViewportPanel().

◆ m_viewportHovered

bool GUI::m_viewportHovered = false

Definición en la línea 142 del archivo GUI.h.

Referenciado por drawViewportPanel().

◆ m_viewportPos

ImVec2 GUI::m_viewportPos = ImVec2(0.0f, 0.0f)

Definición en la línea 140 del archivo GUI.h.

Referenciado por drawViewportPanel() y editTransform().

◆ m_viewportSize

ImVec2 GUI::m_viewportSize = ImVec2(0.0f, 0.0f)

Definición en la línea 141 del archivo GUI.h.

Referenciado por drawViewportPanel(), editTransform() y BaseApp::update().

◆ selectedActorIndex

int GUI::selectedActorIndex = -1

Definición en la línea 139 del archivo GUI.h.

Referenciado por init(), outliner() y BaseApp::update().

◆ show_exit_popup

bool GUI::show_exit_popup = false
private

Definición en la línea 132 del archivo GUI.h.

Referenciado por closeApp(), drawStudioTopRibbon() y ToolBar().


La documentación de esta clase está generada de los siguientes archivos: