Engine:CVAR module

Revision as of 23:57, 16 October 2023 by Bear (talk | contribs) (→‎Details)
Console commands
Base name for 'world' module, without platform postfix or extensions.
set module 'game'

Arguments

  • name - 'module'
  • value - module name to load

Associations

  • Is by default placed in the 'global' context.

Details

Name of the world native library to load.

'World' in this context means a graphically or otherwise conceptually interactive environment, and is apart from any regular 2D UI environment, or may have no direct user interfaces.

A world library typically loads when the 'world' loads and provides support for managing discrete world components how they interact and can act as a sink and/or source for messaging with other systems.

Lifetime

In the engine the world itself is established separately through configuration and other data loads. It exists and lives on its own managed by the 'World' module. A library may create and manage sets of entities and control how they interact and provide other services.

A world load may manage which native libraries if any, get loaded. And a native world library may cause a different world to load. A native world library also may never load. The world config and data implicitly everything they need, messaged from elsewhere like remotely, and/or scripts or addons.

Library load name and path

The actual load path set with CVAR lib_path, and final library file name will be calculated from the 'module' name and the platform suffixes. See CVAR lib_path for the list of suffixes and explanation.

The library state typically unloads when the world unloads or changes, and loads again when the world loads again. The actual OS module that is the library may or may not, from the OS standpoint, ever be unloaded from the engine process, once loaded.

Examples

Default values

For the path executable path 'd:\install\engine.exe', and a 'lib_path' of './lib/' on windows running the 64-bit engine:

set module 'game'
becomes: ./lib/gamex64.dll
with install in: d:\install\engine
effective OS load: d:\install\engine\lib\gamex86.dll

Notes

See also