|
Porytiles
|
#include <layer_mode_converter.hpp>
Public Member Functions | |
| LayerModeConverter (gsl::not_null< const TextFormatter * > format, gsl::not_null< const UserDiagnostics * > diag, gsl::not_null< const TilePrinter * > tile_printer, const Rgba32 &extrinsic_transparency) | |
| ChainableResult< std::vector< TilemapEntry > > | triple_layerize (const PorymapTilesetComponent &component) |
| Converts a tileset component to triple-layer format. | |
| std::vector< TilemapEntry > | dual_layerize (const std::vector< TilemapEntry > &entries, const std::vector< Metatile< Rgba32 > > &source_metatiles) |
| Converts a tileset from triple-layer format to dual-layer format. | |
Definition at line 17 of file layer_mode_converter.hpp.
|
inlineexplicit |
Definition at line 19 of file layer_mode_converter.hpp.
| std::vector< TilemapEntry > porytiles::LayerModeConverter::dual_layerize | ( | const std::vector< TilemapEntry > & | entries, |
| const std::vector< Metatile< Rgba32 > > & | source_metatiles | ||
| ) |
Converts a tileset from triple-layer format to dual-layer format.
Converts triple-layer metatiles (12 entries per metatile) to dual-layer metatiles (8 entries per metatile) by removing transparent tilemap entries based on each metatile's inferred LayerType. This is the inverse operation of triple_layerize().
The conversion strategy depends on the metatile's inferred LayerType:
| entries | The triple-layer tilemap entries to convert |
| source_metatiles | The source metatiles used to infer layer types |
Definition at line 83 of file layer_mode_converter.cpp.
| ChainableResult< std::vector< TilemapEntry > > porytiles::LayerModeConverter::triple_layerize | ( | const PorymapTilesetComponent & | component | ) |
Converts a tileset component to triple-layer format.
Converts dual-layer metatiles (8 entries per metatile) to triple-layer metatiles (12 entries per metatile) by inserting transparent tilemap entries based on each metatile's LayerType attribute. If the component is already in triple-layer format, it is returned unchanged.
The conversion strategy depends on the metatile's LayerType:
| component | The tileset component to convert |
Definition at line 14 of file layer_mode_converter.cpp.