Patch - Doc Update - V12.8.1
This commit is contained in:
@@ -19,6 +19,11 @@
|
||||
class application_class;
|
||||
class stats;
|
||||
|
||||
/**
|
||||
* Struct to hold widget entries for ImGui.
|
||||
* This struct contains a pointer to a boolean that determines if the widget should be shown,
|
||||
* and a function that will be called when the widget is rendered.
|
||||
*/
|
||||
struct widget_entry
|
||||
{
|
||||
bool* show;
|
||||
@@ -28,35 +33,112 @@ struct widget_entry
|
||||
class imguiManager
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Constructor for imguiManager class.
|
||||
* Initializes the ImGui manager with default values.
|
||||
*/
|
||||
imguiManager();
|
||||
~imguiManager();
|
||||
|
||||
/**
|
||||
* Initializes the ImGui manager.
|
||||
* @param hwnd Handle to the window where ImGui will be rendered.
|
||||
* @param device Pointer to the Direct3D 11 device.
|
||||
* @param deviceContext Pointer to the Direct3D 11 device context.
|
||||
* @return True if initialization was successful, otherwise false.
|
||||
*/
|
||||
bool Initialize(HWND hwnd, ID3D11Device* device, ID3D11DeviceContext* deviceContext);
|
||||
/**
|
||||
* Shuts down the ImGui manager.
|
||||
*/
|
||||
void Shutdown();
|
||||
/**
|
||||
* Renders the ImGui interface.
|
||||
*/
|
||||
void Render();
|
||||
/**
|
||||
* Starts a new ImGui frame.
|
||||
*/
|
||||
void NewFrame();
|
||||
/**
|
||||
* Sets up the ImGui dockspace.
|
||||
* This function creates a dockspace for the ImGui interface.
|
||||
*/
|
||||
void SetupDockspace();
|
||||
|
||||
// Widgets
|
||||
/**
|
||||
* Creates a slider widget to control the speed of the demo spinning cube.
|
||||
* @param speed
|
||||
*/
|
||||
void WidgetSpeedSlider(float* speed);
|
||||
/**
|
||||
* Creates a button widget.
|
||||
*/
|
||||
void WidgetButton();
|
||||
/**
|
||||
* Shows the FPS in a widget.
|
||||
*/
|
||||
void WidgetFPS();
|
||||
/**
|
||||
* Create a widget to add a button wich will add an object to the scene.
|
||||
*/
|
||||
void WidgetAddObject();
|
||||
|
||||
/**
|
||||
* create a window to display the object list and their properties.
|
||||
*/
|
||||
void WidgetObjectWindow();
|
||||
/**
|
||||
* Create a window to display the terrain generation options.
|
||||
*/
|
||||
void WidgetTerrainWindow();
|
||||
/**
|
||||
* Create a window to display the light settings.
|
||||
*/
|
||||
void WidgetLightWindow();
|
||||
/**
|
||||
* Create a window to display the Engine settings.
|
||||
*/
|
||||
void WidgetEngineSettingsWindow();
|
||||
/**
|
||||
* Create a window to display the scene.
|
||||
* This window isn't used anymore.
|
||||
*/
|
||||
void WidgetRenderWindow(ImVec2 availableSize);
|
||||
/**
|
||||
* Create a window to display the log messages from the Logger.
|
||||
*/
|
||||
void WidgetLogWindow();
|
||||
/**
|
||||
* Create a window to display the stats of the engine.
|
||||
* This includes FPS, draw calls, triangle count, etc.
|
||||
* As well as the GPU, CPU information and RAM information.
|
||||
*/
|
||||
void WidgetRenderStats();
|
||||
|
||||
/**
|
||||
* Function to render the ImGui widgets.
|
||||
* This function use the struct widget_entry to render the widgets that are registered.
|
||||
* @return True if the ImGui widgets were rendered successfully, otherwise false.
|
||||
*/
|
||||
bool ImGuiWidgetRenderer();
|
||||
|
||||
/**
|
||||
* set the Old scene window size.
|
||||
* @param size
|
||||
*/
|
||||
void SetWindowSize(ImVec2 size) { windowSize = size; }
|
||||
/**
|
||||
* Get the current window size.
|
||||
* @return The current window size as an ImVec2.
|
||||
*/
|
||||
ImVec2 GetWindowSize() const { return windowSize; }
|
||||
|
||||
// Getters
|
||||
/**
|
||||
* Set the application class pointer for the ImGui manager.
|
||||
* @param app
|
||||
*/
|
||||
void SetApp(std::shared_ptr<application_class> app) { app_ = app; }
|
||||
|
||||
// Shader toggles
|
||||
|
||||
Reference in New Issue
Block a user