|
Wildvine Engine
Referencia Doxygen del codigo propio de Wildvine Engine.
|
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 |
La clase expone paneles de viewport, depuracion de render, outliner e inspector. Tambien recopila interacciones del usuario que despues consume BaseApp.
|
default |
|
default |
| void GUI::appleLiquidStyle | ( | float | opacity, |
| ImVec4 | accent | ||
| ) |
| void GUI::awake | ( | ) |
| void GUI::closeApp | ( | ) |
Definición en la línea 514 del archivo GUI.cpp.
Hace referencia a show_exit_popup.
Referenciado por update().
|
inline |
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().
| void GUI::destroy | ( | ) |
Definición en la línea 259 del archivo GUI.cpp.
Referenciado por BaseApp::destroy().
| void GUI::drawEditorDockspace | ( | ) |
| void GUI::drawGizmoToolbar | ( | ) |
Definición en la línea 880 del archivo GUI.cpp.
Hace referencia a Alpha, mCurrentGizmoMode() y mCurrentGizmoOperation().
Referenciado por update().
| void GUI::drawRenderDebugPanel | ( | ID3D11ShaderResourceView * | preShadowSRV, |
| ID3D11ShaderResourceView * | finalViewportSRV, | ||
| ID3D11ShaderResourceView * | shadowMapSRV | ||
| ) |
Definición en la línea 1257 del archivo GUI.cpp.
Referenciado por BaseApp::update().
| 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().
| 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().
| void GUI::editTransform | ( | Camera & | cam, |
| Window & | window, | ||
| EU::TSharedPointer< Actor > | actor | ||
| ) |
Definición en la línea 800 del archivo GUI.cpp.
Hace referencia a Camera::getProj(), Camera::getView(), EU::TSharedPointer< T >::isNull(), m_isUsingGizmo, m_viewportDrawList, m_viewportPos, m_viewportSize, mCurrentGizmoMode(), mCurrentGizmoOperation() y ToFloatArray().
Referenciado por BaseApp::update().
| 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().
| 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().
| void GUI::inspectorGeneral | ( | EU::TSharedPointer< Actor > | actor | ) |
Definición en la línea 541 del archivo GUI.cpp.
Hace referencia a MaterialParams::alphaCutoff, MaterialParams::ao, MaterialParams::baseColor, MeshRendererComponent::canCastShadow(), LightData::color, LightData::direction, Directional, MaterialParams::emissiveStrength, EU::TSharedPointer< T >::get(), Material::getBlendMode(), Material::getDomain(), MaterialInstance::getEmissive(), MaterialInstance::getMaterial(), MaterialInstance::getParams(), Mesh::getSubmeshes(), inspectorContainer(), LightData::intensity, EU::TSharedPointer< T >::isNull(), Masked, MaterialParams::metallic, MaterialParams::normalScale, Point, LightData::range, MaterialParams::roughness, Material::setBlendMode(), MeshRendererComponent::setCastShadow(), Material::setDomain(), Spot, Transparent, LightData::type y EU::Vector3::x.
Referenciado por BaseApp::update().
| 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().
| void GUI::render | ( | ) |
Definición en la línea 246 del archivo GUI.cpp.
Referenciado por BaseApp::render().
|
inline |
Definición en la línea 97 del archivo GUI.h.
Referenciado por editTransform().
| void GUI::ToolBar | ( | ) |
Definición en la línea 462 del archivo GUI.cpp.
Hace referencia a show_exit_popup.
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().
| 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().
| bool GUI::m_isUsingGizmo = false |
Definición en la línea 138 del archivo GUI.h.
Referenciado por editTransform().
|
private |
Definición en la línea 133 del archivo GUI.h.
Referenciado por consumeSaveSceneRequest(), drawStudioTopRibbon() y update().
|
private |
Definición en la línea 135 del archivo GUI.h.
Referenciado por drawViewportPanel().
|
private |
Definición en la línea 134 del archivo GUI.h.
Referenciado por drawViewportPanel() y editTransform().
| bool GUI::m_viewportFocused = false |
Definición en la línea 143 del archivo GUI.h.
Referenciado por drawViewportPanel().
| bool GUI::m_viewportHovered = false |
Definición en la línea 142 del archivo GUI.h.
Referenciado por drawViewportPanel().
| 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().
| 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().
| int GUI::selectedActorIndex = -1 |
Definición en la línea 139 del archivo GUI.h.
Referenciado por init(), outliner() y BaseApp::update().
|
private |
Definición en la línea 132 del archivo GUI.h.
Referenciado por closeApp(), drawStudioTopRibbon() y ToolBar().