Blamite Game Engine - blam!  00296.01.12.21.0102.blamite
The core library for the Blamite Game Engine.
InternalUI Namespace Reference

Namespace containing things for the engine's "internal UI", which is powered through ImGUI. More...

Namespaces

 Colors
 Namespace containing things related colors used in various places in the engine.
 

Functions

BLAM void CreateFPSCounter ()
 
BLAM void UpdateFPSCounter ()
 
const UI_API char * GetVersion ()
 Legacy function to retrieve the "UI version". More...
 
UI_API void Initialize ()
 Initializes the ImGUI draw list. More...
 
UI_API void Render ()
 Renders all ImGUI data. More...
 
UI_API void Shutdown ()
 Cleans up any data used by the ImGUI draw list. More...
 
UI_API void LoadConfig ()
 Loads UI configuration file. More...
 
UI_API void CheckForUpdates ()
 Legacy function that would have checked for game engine updates. More...
 
UI_API void ShowCrashScreen (std::string crash_message)
 Show the engine's crash screen. More...
 
UI_API void ShowHaloConsole (bool *p_open)
 Legacy function that was used to open the ImGUI-based console. More...
 
UI_API void load_blamite_pink_styles ()
 Legacy function to apply a modified ImGUI color scheme. More...
 
UI_API void load_xenia_styles ()
 Legacy function to apply a modified ImGUI color scheme. More...
 
UI_API void load_elaztek_styles ()
 Legacy function to apply a modified ImGUI color scheme. More...
 
UI_API void load_default_styles ()
 Legacy function to apply a modified ImGUI color scheme. More...
 
UI_API void load_elaztek_styles_classic ()
 Legacy function to apply a modified ImGUI color scheme. More...
 
UI_API void load_cex_styles ()
 Legacy function to apply a modified ImGUI color scheme. More...
 
UI_API void load_win9x_styles ()
 Legacy function to apply a modified ImGUI color scheme. More...
 
UI_API void load_hl2_styles ()
 Legacy function to apply a modified ImGUI color scheme. More...
 
UI_API void load_osx_styles ()
 Legacy function to apply a modified ImGUI color scheme. More...
 
UI_API void SetFont (int id)
 Legacy function to change the font used by ImGUI. More...
 
UI_API ImFont * font_fixedsys ()
 Legacy function to set the ImGUI font to fixedsys. More...
 
UI_API ImFont * font_proggytiny ()
 Legacy function to set the ImGUI font to Proggy Tiny - used by Xenia and some elements of Reach. More...
 

Detailed Description

Namespace containing things for the engine's "internal UI", which is powered through ImGUI.

This namespace is sort of vague compared to a lot of the other namespaces, as it is one of those old ones from 2016 - before I (haloman30) had any real idea how to do anything in C++, and before I had any real idea what making a game engine entailed.

Granted, it's not that bad - but ideally we'd have something to distinguish ImGUI from the custom-made debug UI.

Function Documentation

◆ CheckForUpdates()

UI_API void InternalUI::CheckForUpdates ( )

Legacy function that would have checked for game engine updates.

This has no reason to be here - but 16 year old haloman30 didn't know that.

Note
This function is currently unused.
Todo:
Move or remove.

◆ CreateFPSCounter()

BLAM void InternalUI::CreateFPSCounter ( )

◆ font_fixedsys()

UI_API ImFont* InternalUI::font_fixedsys ( )

Legacy function to set the ImGUI font to fixedsys.

Todo:
Implement or remove.

◆ font_proggytiny()

UI_API ImFont* InternalUI::font_proggytiny ( )

Legacy function to set the ImGUI font to Proggy Tiny - used by Xenia and some elements of Reach.

Todo:
Implement or remove.

◆ GetVersion()

const char * InternalUI::GetVersion ( )

Legacy function to retrieve the "UI version".

Whatever that means.

Early me decided that it would be a great idea to have a separate versioning system specifically for the debug UI. I guess so that you could tell if the debug tools were unchanged for years and years, you could tell? I think? I don't know man. This shit's dumb.

Returns
The engine's UI version.
Deprecated:
Unused and hasn't been updated for ages, and never will. Will likely be removed at some point.

◆ Initialize()

void InternalUI::Initialize ( )

Initializes the ImGUI draw list.

◆ load_blamite_pink_styles()

void InternalUI::load_blamite_pink_styles ( )

Legacy function to apply a modified ImGUI color scheme.

Loads a color scheme that uses Blamite's magenta color theme.

Todo:
Migrate into a better ImGUI color scheme system.

◆ load_cex_styles()

void InternalUI::load_cex_styles ( )

Legacy function to apply a modified ImGUI color scheme.

Loads a color scheme that loosely resembles the debug menu in Halo: CE Anniversary

Todo:
Migrate into a better ImGUI color scheme system.

◆ load_default_styles()

void InternalUI::load_default_styles ( )

Legacy function to apply a modified ImGUI color scheme.

Loads the default ImGUI colors.

Todo:
Migrate into a better ImGUI color scheme system.

◆ load_elaztek_styles()

void InternalUI::load_elaztek_styles ( )

Legacy function to apply a modified ImGUI color scheme.

Loads a color scheme that uses a blue color theme.

Todo:
Migrate into a better ImGUI color scheme system.

◆ load_elaztek_styles_classic()

void InternalUI::load_elaztek_styles_classic ( )

Legacy function to apply a modified ImGUI color scheme.

Loads the original version of the Elaztek blue color scheme.

Todo:
Migrate into a better ImGUI color scheme system.

◆ load_hl2_styles()

void InternalUI::load_hl2_styles ( )

Legacy function to apply a modified ImGUI color scheme.

Loads a color scheme that loosely resembles the UI of Source engine games, such as Half-Life 2.

Todo:
Migrate into a better ImGUI color scheme system.

◆ load_osx_styles()

void InternalUI::load_osx_styles ( )

Legacy function to apply a modified ImGUI color scheme.

Loads the built-in light theme from ImGUI.

Todo:
Migrate into a better ImGUI color scheme system.

◆ load_win9x_styles()

void InternalUI::load_win9x_styles ( )

Legacy function to apply a modified ImGUI color scheme.

Loads a color scheme that loosely resembles Windows 9x.

Todo:
Migrate into a better ImGUI color scheme system.

◆ load_xenia_styles()

void InternalUI::load_xenia_styles ( )

Legacy function to apply a modified ImGUI color scheme.

Loads a color scheme that uses Xenia's green color theme.

Todo:
Migrate into a better ImGUI color scheme system.

◆ LoadConfig()

UI_API void InternalUI::LoadConfig ( )

Loads UI configuration file.

Note
This function is currently unused.
Todo:
Implement or remove.

◆ Render()

void InternalUI::Render ( )

Renders all ImGUI data.

This is called within the render loop.

◆ SetFont()

UI_API void InternalUI::SetFont ( int  id)

Legacy function to change the font used by ImGUI.

Parameters
id- The font ID.
Todo:
Implement or remove.

◆ ShowCrashScreen()

void InternalUI::ShowCrashScreen ( std::string  crash_message)

Show the engine's crash screen.

The original implementation was done using ImGUI. At some point, this needs to be reimplemented using blamite's own UI system.

Additionally, it'd be neat to have the ability to change how the UI displays, either with the Reach/Halo 4 style or the Halo 2 style.

This function is automatically called from #Blam::blam_assert and #Blam::blam_assertm. See their respective documentation for details. This function should NOT be called manually.

Parameters
crash_message- The message to display on the crash screen.
Todo:
Reimplement to work with the new UI system

◆ ShowHaloConsole()

void InternalUI::ShowHaloConsole ( bool *  p_open)

Legacy function that was used to open the ImGUI-based console.

Parameters
p_open- Pointer to a boolean indicating whether the console should be visible or not.
Todo:
Move or remove.

◆ Shutdown()

void InternalUI::Shutdown ( )

Cleans up any data used by the ImGUI draw list.

◆ UpdateFPSCounter()

BLAM void InternalUI::UpdateFPSCounter ( )