Blamite Game Engine - blam!  00263.10.17.20.0001.blamite
The core library for the Blamite Game Engine.
Namespaces | Functions
Blam::InteropAPI Namespace Reference

Namespace containing functions relating to the Blamite C# Interoperability API. More...

Namespaces

 DotNETHelpers
 

Functions

BLAM_EXT_API LRESULT WINAPI MainWindowProcedure (HWND window_handle, UINT message, WPARAM wParam, LPARAM lParam)
 Window Procedure for the main application window. More...
 
BLAM_EXT_API int StartEngine (int args_count, char *args[], HWND window)
 Entry point for the engine. More...
 
BLAM_EXT_API void MainLoop ()
 Function for the engine's main loop. More...
 
BLAM_EXT_API void CleanupEngineResources ()
 Instructs the engine to clean up any resources. More...
 

Detailed Description

Namespace containing functions relating to the Blamite C# Interoperability API.

The API calls available through this namespace are intended exclusively for hooking to the engine from C#. For a more general-purpose API, see Blam::API

Function Documentation

◆ CleanupEngineResources()

void Blam::InteropAPI::CleanupEngineResources ( )

Instructs the engine to clean up any resources.

Should be called at shutdown.

◆ MainLoop()

void Blam::InteropAPI::MainLoop ( )

Function for the engine's main loop.

Should be called from the parent application's message loop.

◆ MainWindowProcedure()

LRESULT WINAPI Blam::InteropAPI::MainWindowProcedure ( HWND  window_handle,
UINT  message,
WPARAM  wParam,
LPARAM  lParam 
)

Window Procedure for the main application window.

The engine will let ImGUI try to handle the procedure first. If it doesn't, then it allows us to do so. This is the top-level function to control things like window resizing, keyboard input, menu bar interaction, and so on.

Parameters
window_handle- Handle of the main application window.
message- A message dispatched to the window.
wParam- The WPARAM related to the message. It is not used in all messages.
lParam- The LPARAM related to the message. It is not used in all messages.
Returns
who the fuck knows

◆ StartEngine()

int Blam::InteropAPI::StartEngine ( int  args_count,
char *  args[],
HWND  window 
)

Entry point for the engine.

Parameters
args_count- Number of command-line arguments passed to the application.
args- Array of command-line arguments passed to the application.
window- Pointer to the window handle to run the game engine within.
Todo:
Show firstboot dialog