 |
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_bitm "bitm"
86 {1,
"haloman30",
"Initial implementation."},
87 {2,
"haloman30",
"Add test datarefs and tagrefs"},
88 {3,
"haloman30",
"Remove all test fields, actual initial implementation"},
89 {4,
"haloman30",
"Add multiple filtering enums for min, mag, mip, and allow bitmap filter mode to override material filter mode"},
90 {5,
"haloman30",
"Add support for RGBA8_UNORM pixel formats, move format_temp to import info block as parsed_pixel_format"},
99 "The texture filtering mode adjusts how the bitmap is displayed in-game. Below is a list of all filtering modes and their ideal use cases.\n"
103 "* Point - Minimal filtering mode that preserves sharp edges. Ideal for pixel art or other similar cases.\n"
105 "* Linear - Balanced filtering mode that will attempt to blend pixels together to avoid a pixelated appearance, with a minimal performance impact. Ideal for most situations.\n"
107 "* Anisotropic - Best filtering mode. Performs the poorest but gives the best possible image quality.\n"
109 "* None - No filtering is applied. Will often be identical to Point filtering."),
110 new Enum32Field(
"filtering mode (min)",
"The texture filtering mode for minification. See comment above for details.",
117 new Enum32Field(
"filtering mode (mag)",
"The texture filtering mode for magnification. See comment above for details.",
124 new Enum32Field(
"filtering mode (mip)",
"The texture filtering mode for mip-mapping. See comment above for details.",
133 "force mip filtering mode",
134 "force min filtering mode",
135 "force mag filtering mode",
136 "disable auto mipmap generation",
137 "skip srgb correction for auto mipmaps",
140 "***************************************************************************************************************************\n"
144 "The fields below contain the raw bitmap data. It is updated when you reimport the bitmap.\n"
148 "Any changes you make below will be lost in the next import, and may even cause 'bad things' to happen - such as invalid textures or crashes.\n"
152 "If you wish to make any changes to a bitmap, you should simply re-import the image from its source. If the source image filehas been lost, consult the documentation for methods to export a bitmap tag back into a source image file.\n"
156 "***************************************************************************************************************************"),
157 new Enum32Field(
"format",
"The pixel format of the bitmap data.",
164 new Vector2Field(
"size",
"The resolution of the bitmap."),
165 new Int16Field(
"bytes per line",
"The amount of bytes needed for a single line/row of pixels for this bitmap."),
169 "The fields listed below refer to data from the originally imported file, and are not used by the engine directly."),
170 new Int64Field(
"source filesize",
"The file size of the original image, in bytes."),
171 new DataReferenceField(
"source filename",
"The file name (or file path) of the original image."),
173 new DataReferenceField(
"source pixel format",
"The original pixel format of the source image."),
174 new DataReferenceField(
"parsed pixel format",
"The pixel format of the interpreted image data during import."),
Class representing an int16 tag field.
Definition: int.h:59
BlamTagData * parent_tag
Definition: tags.h:238
Namespace containing functions related to tag data.
Definition: bitmap.h:181
BLAM void LogEvent(std::string message)
Logs a message to the log and/or console.
Definition: aliases.cpp:130
bool force_mip_filtering_mode
Definition: bitmap.h:41
bool unused7
Definition: bitmap.h:48
Class representing a vector2 tag field.
Definition: vector.h:34
char path[256]
The tag's path.
Definition: tags.h:145
Class representing a data reference, or dataref for short.
Definition: dataref.h:19
int GetPokeKey()
Definition: BlamTagData.cpp:93
BitmapTagClass()
Definition: bitmap.h:79
BlamTagData()
Definition: BlamTagData.cpp:9
bool Good()
Definition: BlamTagData.cpp:114
int16_t bytes_per_line
The amount of bytes needed for a single line/row of pixels for this bitmap.
Definition: bitmap.h:64
std::vector< BlamTagClassField * > fields
A series of tag fields that store the layout of the tag.
Definition: tags.h:209
~BlamTagData()
Definition: BlamTagData.cpp:16
std::vector< BlamTagInstance * > instances
Definition: tags.h:149
bool SetTagPath(std::string new_path)
Updates the tag path.
Definition: BlamTagData.cpp:39
bitmap_filtering_mode filtering_mode_mag
Definition: bitmap.h:37
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
vector2 size
The resolution of the bitmap.
Definition: bitmap.h:63
BLAM BlamTagData * CloneTag(BlamTagData *original_tag_data)
Creates a copy of a tag in memory.
Definition: tag_io.cpp:826
std::string class_name_short
The short, 4-character name of the tag class.
Definition: tags.h:206
int version
The tag class version. Should be incremented any time a tag class is modified whatsoever.
Definition: tags.h:207
BlamTagInstance * GetInstance(std::string identifier)
Definition: BlamTagData.cpp:80
#define tag_bitm
Definition: bitmap.h:22
bitmap_filtering_mode filtering_mode_mip
Definition: bitmap.h:38
std::string class_name_long
The longer class name. Typically shown alongside short name for user-friendliness.
Definition: tags.h:205
long long int64_t
Definition: stdint.h:14
Class representing an int64 tag field.
Definition: int.h:33
std::string identifier
Definition: tags.h:239
unsigned int uint32_t
Definition: stdint.h:17
BLAM bitmap * GetBitmapTag(std::string tag_path)
Definition: bitmap.cpp:16
void Poke()
Definition: BlamTagData.cpp:98
TAG_BLOCK(import_info, { int64_t source_filesize;data_reference source_filename;data_reference source_file_format;data_reference source_pixel_format;data_reference parsed_pixel_format;})
data_reference pixel_data
The raw pixel data for the bitmap.
Definition: bitmap.h:62
#define BLAM
Definition: bitmap.h:19
Structure representing a data reference.
Definition: tags.h:342
TAG_ENUM(format, { BF_RGBA8_UNORM, BF_RGB8_UNORM, BF_UNUSED, })
The pixel format of the bitmap data.
int tag_size
The size of the tag's data. Used on loading/writing tag files.
Definition: tags.h:210
bitmap_filtering_mode
Definition: bitmap.h:24
BlamTagInstance * CreateNewInstance()
Definition: BlamTagData.cpp:67
void * address
The address pointing to the start of the tag's data.
Definition: tags.h:132
bool disable_auto_mip_srgb_correction
Definition: bitmap.h:45
bitfield8_flags flags
Bitfield data for flags. See #bitfield8_flags for details.
Definition: bitmap.h:51
short int16_t
Definition: stdint.h:12
Class used to contain and access tag data.
Definition: tags.h:125
bool force_mag_filtering_mode
Definition: bitmap.h:43
bool unused6
Definition: bitmap.h:47
bitmap_filtering_mode filtering_mode_min
Definition: bitmap.h:36
BlamTagData * instance
Definition: tags.h:240
Class representing a tag block field, also sometimes referred to as a struct or reflexive in the modd...
Definition: block.h:19
bool disable_auto_mipmaps
Definition: bitmap.h:44
Class representing a tag class.
Definition: tags.h:202
bool force_min_filtering_mode
Definition: bitmap.h:42
BlamTagScript * script
Definition: tags.h:154
Class representing a bitfield8 tag field.
Definition: bitfield.h:33
std::string tag_class
The tag's short class name.
Definition: tags.h:146
bool unused5
Definition: bitmap.h:46