AudioAsset
Ease
FastString
FontAsset
NineSlice
PackedSprite
PackedSpriteID
RB
   HardwareSettings
   IRetroBlitGame
RBAsset
Rect2i
ShaderAsset
SoundReference
SpriteGrid
SpriteSheetAsset
TMXMapAsset
   TMXLayer
   TMXLayerLoadState
   TMXObject
   TMXObjectGroup
   TMXProperties
Vector2i

RB.MapLayerSpriteSheetSet

Method  -  Static

public static void MapLayerSpriteSheetSet(int mapLayer, SpriteSheetAsset spriteSheet)

Parameters

mapLayer int Map layer
spriteSheet SpriteSheetAsset Sprite sheet to use

Returns

Nothing.

Description

Set the sprite sheet to be used by the given tilemap layer. Any sprite can be used, including a sprite pack based sprite sheet. The tilemap will inherit the size of each tile from the sprite sheets sprite size as returned by SpriteSheetAsset.grid. Each layer in the tilemap can have a different sprite sheet, this also means that each layer could have different tile sizes!

If using a sprite pack based sprite sheet the tiles in the tilemap should be set with sprite ids from the RB.PackedSpriteID class.

Example

SpriteSheetAsset  spriteTerrain = new SpriteSheetAsset();
SpriteSheetAsset spriteMinimap = new SpriteSheetAsset();
const int LAYER_TERRAIN = 0;
const int LAYER_MINIMAP = 1;

void Initialize() {
    // Load a sprite sheet from a sprite pack
    spriteTerrain.Load("spritepacks/terrain");
    spriteTerrain.grid = new Vector2i(3232);

    // Load a sprite sheet from an image
    spriteMinimap.Load(spriteMinimap, "spritesheets/minimap");
    spriteMinimap.grid = new Vector2i(22);

    // Set terrain tilemap layer to use the terrain sprite sheet.
    // This layer will have tile sizes of 32x32 pixels.
    RB.MapLayerSpriteSheetSet(LAYER_TERRAIN, spriteTerrain);

    // Set minimap tilemap layer to use the minimap sprite sheet.
    // This layer will have tile sizes of 2x2 pixels.
    RB.MapLayerSpriteSheetSet(LAYER_MINIMAP, spriteMinimap);
}

void Render() {
    // Draw the terrain
    RB.DrawMapLayer(LAYER_TERRAIN);

    // Use clip region to draw a small minimap in the upper right corner of the screen
    RB.ClipSet(new Rect2i(RB.DisplaySize.width - 6406464));
    RB.DrawMapLayer(LAYER_MINIMAP, new Vector2i(RB.DisplaySize.width - 640));

    RB.ClipReset();
}

See Also

SpriteSheetAsset

See Docs

Features - Sprite Sheets
Features - Sprite Packs
Features - Tilemaps