 |
Blamite Game Engine - blam!
00453.06.08.26.0624.blamite
The core library for the Blamite Game Engine.
|
Go to the documentation of this file.
22 #define tag_ligh "ligh"
88 real luminance_threshold;
110 {1,
"haloman30",
"Initial implementation."},
111 {2,
"haloman30",
"* Added priority field"},
125 "fields can be overridden by instances",
129 "shape of the light"),
130 new Enum32Field(
"shape",
"The shape/type of the light source.",
139 new RealField(
"power scale",
"The relative power scale of the light."),
141 "color and intensity of the light"),
145 "determines how the light is rendered when the camera is close or far from the light"),
146 new RealField(
"maximum distance",
"The maximum distance that this light will be visible. If the camera is further than this distance away from the light, then the light will no longer be rendered."),
147 new RealField(
"near clip distance",
"The near clip distance of the light. If the camera is this close to the light, shadows will stop being rendered. Only applies when using texture shadows."),
148 new RealField(
"far clip distance",
"The far clip distance of the light. If the camera is at least this far from the light, shadows will stop being rendered. Only applies when using texture shadows."),
149 new RealField(
"near shadow distance",
"The near shadow distance of the light. If the camera is this close to the light, shadows will no longer be cast by this light source."),
150 new RealField(
"far shadow distance",
"The far shadow distance of the light. If the camera is this far from the light, shadows will no longer be cast by this light source."),
154 "the shape of the spotlight"),
158 "the falloff of the spotlight"),
163 "Controls how light diminishes with distance.\n"
165 "Of the two blocks listed below, only one will be used based on the 'attenuation method' value:\n"
166 "* simple - The 'simple attenuation' block is used.\n"
167 "* complex - The 'complex attenuation' block is used.\n"
169 "Only the first entry of a block will be used. Any other entries are ignored."),
178 new RealField(
"luminance threshold",
""),
Namespace containing functions related to tag data.
Definition: bitmap.h:181
Class representing a real tag field.
Definition: real.h:16
bool unused12
Definition: light.h:43
BLAM void LogEvent(std::string message)
Logs a message to the log and/or console.
Definition: aliases.cpp:130
BLAM bool GlobalExists(std::string id)
Determines whether or not a global exists.
Definition: globals.cpp:27
@ Real
Definition: globals.h:25
@ String
Represents a std::string.
Definition: globals.h:29
bool double_sided
Definition: light.h:32
@ Long
Represents a long.
Definition: globals.h:27
real near_clip_distance
The near clip distance of the light. If the camera is this close to the light, shadows will stop bein...
Definition: light.h:68
BLAM BlamGlobalUpdateResult UpdateGlobal(std::string name, std::string new_value)
Updates the value of a String global.
Definition: globals.cpp:589
@ InvalidArgs
The provided arguments were invalid.
@ Boolean
Represents a boolean. Can be true or false.
Definition: globals.h:24
TAG_ENUM(shape, { directional, point, spotlight, virtual_point, area_cheap, area_pbr, })
The shape/type of the light source.
std::string name
The name of the global.
Definition: globals.h:47
Namespace containing functions relating to game engine globals.
Definition: globals.h:23
bool unused3
Definition: light.h:34
real far_clip_distance
The far clip distance of the light. If the camera is at least this far from the light,...
Definition: light.h:69
BLAM bool LoadGlobalsFromFile()
Loads any globals from #GVARS_FILE.
Definition: globals.cpp:202
BLAM float * GetGlobalAsFloat(std::string name)
Retrieves a global's value as a float.
Definition: globals.cpp:403
bool boolean_value
The boolean value of the global.
Definition: globals.h:56
@ OutOfBounds
The provided value was too small or too large for the globals' data type.
@ Int
Represents an int.
Definition: globals.h:30
bool unused7
Definition: light.h:38
Class representing a bitfield16 tag field.
Definition: bitfield.h:44
real near_shadow_distance
The near shadow distance of the light. If the camera is this close to the light, shadows will no long...
Definition: light.h:70
bool unused10
Definition: light.h:41
TAG_BLOCK(spotlight_settings, { real inner_angle;real outer_angle;real falloff;real near_clip_distance;})
bool unused8
Definition: light.h:39
@ InvalidType
The provided value was of an invalid type.
BLAM BlamColor * GetGlobalAsColor(std::string name)
Retrieves a global's value as a BlamColor.
Definition: globals.cpp:415
std::string info
An optional description of the global.
Definition: globals.h:48
BlamGlobalUpdateResult
Enumerator for the result of a global update attempt.
Definition: globals.h:9
std::vector< BlamTagClassField * > fields
A series of tag fields that store the layout of the tag.
Definition: tags.h:209
#define GLOBALS_FILE
The file to read globals from.
Definition: globals.h:12
BlamGlobalType type
The type of the global.
Definition: globals.h:46
#define tag_ligh
Definition: light.h:22
std::vector< BlamTagClassRevision > revisions
List of all tag class revisions. Does not get written to tags, but is included in plugin files.
Definition: tags.h:208
int int32_t
Definition: stdint.h:13
@ GlobalIsProtected
The specified global is protected and cannot be modified during runtime.
std::string class_name_short
The short, 4-character name of the tag class.
Definition: tags.h:206
#define ENGINE_DATA_PATH(path)
Macro to quickly access a game engine data folder.
Definition: config.h:34
BlamGlobalType
Enumerator for the type of global variable.
Definition: globals.h:22
color diffuse_color
Definition: light.h:65
bitfield16_flags flags
Bitfield data for flags. See #bitfield16_flags for details.
Definition: light.h:49
int version
The tag class version. Should be incremented any time a tag class is modified whatsoever.
Definition: tags.h:207
Structure containing data for a game engine global.
Definition: globals.h:44
real power_scale
The relative power scale of the light.
Definition: light.h:64
std::string class_name_long
The longer class name. Typically shown alongside short name for user-friendliness.
Definition: tags.h:205
BLAM void RegisterGlobal(BlamEngineGlobal var)
Registers a new engine global.
Definition: globals.cpp:61
BLAM short * GetGlobalAsShort(std::string name)
Retrieves a global's value as a short.
Definition: globals.cpp:367
@ Resources
Directory containing other resources and data, usually string tables and globals. Defaults to ....
short short_value
The short value of the global.
Definition: globals.h:57
bool read_only
Whether or not the global is protected from modification.
Definition: globals.h:50
bool fields_can_be_overridden_by_instances
Definition: light.h:33
BLAM std::string GetGlobalTypeLabel(BlamGlobalType type)
Retrieves a string representation of a global's type, for use in UI.
Definition: globals.cpp:40
bool unused11
Definition: light.h:42
BLAM BlamEngineGlobal * GetGlobal(std::string name)
Retrieves a global with the specified ID.
Definition: globals.cpp:189
BlamColor color_value
The color value of the global.
Definition: globals.h:61
std::map< std::string, BlamEngineGlobal > globals
The list of loaded globals.
Definition: globals.cpp:20
Offset font vertically by altering the io Font DisplayOffset value
Definition: README.txt:67
@ Short
!< Represents a float.
Definition: globals.h:26
BLAM long * GetGlobalAsLong(std::string name)
Retrieves a global's value as a long.
Definition: globals.cpp:379
Class representing an int32 tag field.
Definition: int.h:46
bool unused14
Definition: light.h:45
BLAM globals * GetGlobalsTag(std::string tag_path)
Definition: globals.cpp:16
@ UnknownGlobal
The specified global does not exist.
#define BLAM
Definition: light.h:19
bool unused6
Definition: light.h:37
bool unused9
Definition: light.h:40
bool unused5
Definition: light.h:36
int tag_size
The size of the tag's data. Used on loading/writing tag files.
Definition: tags.h:210
int int_value
The int value of the global.
Definition: globals.h:59
Class representing a color tag field.
Definition: color.h:19
bool casts_shadows
Definition: light.h:31
@ Ok
The global was updated successfully.
LightTagClass()
Definition: light.h:103
BLAM std::string * GetGlobalAsString(std::string name)
Retrieves a global's value as a string.
Definition: globals.cpp:355
void * address
The address pointing to the start of the tag's data.
Definition: tags.h:132
color specular_color
Definition: light.h:66
Class used to contain and access tag data.
Definition: tags.h:125
BLAM BlamGlobalUpdateResult UpdateGlobalWrap(std::string name, std::string new_value)
Updates a global's raw value.
Definition: globals.cpp:431
float float_value
The float value of the global.
Definition: globals.h:60
Class representing a tag block field, also sometimes referred to as a struct or reflexive in the modd...
Definition: block.h:19
int32_t priority
Definition: light.h:50
BLAM light * GetLightTag(std::string tag_path)
Definition: light.cpp:16
std::string value_raw
The raw value of the global as a string.
Definition: globals.h:49
real maximum_distance
The maximum distance that this light will be visible. If the camera is further than this distance awa...
Definition: light.h:67
BLAM bool * GetGlobalAsBoolean(std::string name)
Retrieves a global's value as a boolean.
Definition: globals.cpp:343
Class representing a tag class.
Definition: tags.h:202
@ Color
Represents a BlamColor. See #BlamColor for details.
Definition: globals.h:31
bool unused13
Definition: light.h:44
BLAM std::map< std::string, BlamEngineGlobal > * GetGlobalsList()
Retrieves the list of loaded globals.
Definition: globals.cpp:22
bool unused4
Definition: light.h:35
long long_value
The long value of the global.
Definition: globals.h:58
real far_shadow_distance
The far shadow distance of the light. If the camera is this far from the light, shadows will no longe...
Definition: light.h:71
std::string tag_class
The tag's short class name.
Definition: tags.h:146
BLAM int * GetGlobalAsInteger(std::string name)
Retrieves a global's value as an int.
Definition: globals.cpp:391
bool unused15
Definition: light.h:46