Namespace Map.Loading.Images
Classes
- BMPParser
High-performance BMP file parser for Paradox map files Supports 24-bit and 32-bit RGB formats commonly used in game maps
- BitmapTextureLoader
Abstract base class for loading and populating textures from bitmap files Provides common infrastructure for terrain, heightmap, and normal map loading Eliminates code duplication across specialized bitmap loaders
- HeightmapBitmapLoader
Legacy alias for HeightmapImageLoader for backward compatibility.
- HeightmapImageLoader
Loads heightmap.png (or heightmap.bmp) and populates the heightmap texture. Uses ImageParser for unified BMP/PNG support with PNG preferred. Height values: 0-255 (8-bit) → 0.0-1.0 (normalized float)
- HeightmapParser
Heightmap parser for terrain elevation data Typically uses grayscale values where darker = lower elevation
- ImageParser
Unified image parser that automatically detects and parses BMP or PNG files Provides a common interface for both formats
- JobifiedBMPLoader
High-performance generic BMP loader using Unity's Burst job system Loads any BMP file (provinces, heightmaps, terrain, rivers, etc.) with optimal performance Use ProvinceMapProcessor for province-specific processing with definition.csv
- NormalMapBitmapLoader
Legacy alias for NormalMapImageLoader for backward compatibility.
- NormalMapImageLoader
Loads world_normal.png (or world_normal.bmp) and populates the normal map texture. Uses ImageParser for unified BMP/PNG support with PNG preferred. Normal map format: RGB(128,128,255) = flat surface (up direction)
- PNGParser
High-performance PNG file parser for map files Supports 8-bit indexed, 24-bit RGB, and 32-bit RGBA formats Uses managed decompression but NativeArray for pixel storage
- ProvinceMapParser
High-performance province map parser that combines BMP/PNG parsing with province definitions Maps RGB colors to province IDs using definition.csv data Supports both BMP and PNG formats via auto-detection
- TerrainImageLoader
Loads terrain.png (or terrain.bmp) and populates the terrain texture. Uses ImageParser for unified BMP/PNG support. Terrain colors from the image are used directly - TerrainRGBLookup converts to indices later.
Structs
- BMPColorCollectionJob
Burst-compiled job for parallel BMP pixel processing Processes chunks of pixels to collect unique colors
- BMPLoadResult
Generic result of BMP file loading (works for any BMP type)
- BMPParser.BMPFileHeader
BMP file header structure (14 bytes)
- BMPParser.BMPHeader
Complete BMP header information
- BMPParser.BMPInfoHeader
BMP info header structure (40 bytes for BITMAPINFOHEADER)
- BMPParser.BMPPixelData
Pixel data access result
- BMPPixelSearchJob
Burst-compiled job for finding pixels with specific color
- BMPProvinceStatsData
Data structure for collecting province statistics across job batches
- BMPProvinceStatsJob
Burst-compiled job for parallel province statistics calculation
- HeightmapParser.HeightmapResult
Heightmap parsing result
- HeightmapParser.HeightmapStats
Generate heightmap statistics
- ImageParser.ImageHeader
Unified image header information
- ImageParser.ImagePixelData
Unified pixel data result
- PNGParser.PNGHeader
PNG header information
- PNGParser.PNGPixelData
PNG pixel data result - mirrors BMPParser.BMPPixelData for compatibility
- PersistentBMPPixelData
Persistent pixel data that owns its memory allocation
- PixelCoord
Simple 2D integer vector for pixel coordinates
- ProvinceBounds
Bounding box data for a province
- ProvinceMapParser.ProvinceMapResult
Province map parsing result (legacy BMP-only version for backward compatibility)
- ProvinceMapParser.ProvinceMapValidationResult
Province map validation result
- ProvinceMapParser.ProvinceStats
Get province statistics (pixel count, bounding box, etc.)
- ProvinceMapParser.UnifiedProvinceMapResult
Province map parsing result that supports both BMP and PNG formats
Enums
- HeightmapParser.TerrainType
Classify terrain based on height and slope
- ImageParser.ImageFormat
Image format enumeration