Available on:
Alias: TILE LOAD

LOAD TILE

The LOAD TILE command allows you to load an image and to convert it into an TILE, that is a format that will be converted into a way that can be efficiently drawn on the screen using the tiles. The second parameter is the mode to use to convert the given data (by default, it is equal to current mode)

The command support a set of modern image format, like JPEG baseline & progressive, PNG 1/2/4/8/16-bit-per-channel, TGA, BMP (non-1bpp, non-RLE), PSD (composited view only, no extra channels, 8/16 bit-per-channel), GIF, HDR (radiance rgbE format), PIC (Softimage PIC) and PNM (PPM and PGM binary only) The image will be converted into a way that can be efficiently drawn on the screen.

Since it is possible to load only one file of the same type at a time, it is necessary to be able to indicate an "alias" with which to exceed this limit. In this regard, there is also the AS syntax, which allows you to load the same file several times but with different names.

A series of flags, separated by spaces, can be added at loading time to modify the behavior of ugBASIC.

The FLIP X flag allows you to flip the image horizontally, before translating it into the native format. The same is true for the FLIP Y command, which instead inverts the image vertically. There is also the FLIP XY (or FLIP YX) parameter to act, simultaneously, on both directions.

The COMPRESSED flag allows you to compress the image, if possible. Compression is a space-saving mechanism, in which the native data of the image is represented in a more compact form, which ugBASIC will be able to quickly convert into graphics at the appropriate time.

The ROLL X flag allows you to SHIFT the (entire) image horizontally, for the entire size of a frame, in order to generate intermediate frames. The very same for ROLL Y command, which does the same vertically. There is also the ROLL XY (or ROLL YX) parameter to act, simultaneously, on both directions.

SYNTAX

 = LOAD TILE( filename [AS alias][,mode] ) [fl]
     fl : [FLIP X] [FLIP Y] [FLIP XY] [FLIP YX]
     fl : [ROLL X] [ROLL Y] [ROLL XY] [ROLL YX]


Legend
  • id : identifier
  • type : datatype
  • v : value
  • "..." : string
  • [...] : optional

EXAMPLE

 starship = LOAD TILE("starship.png")
 starship2 = LOAD TILE("starship.png" AS "starship2")
 alienAt11 = LOAD TILE("alien.jpg",11)
 alien2 = LOAD TILE("alien.jpg" AS "alien2",11)


ABBREVIATION: LdTl

Join BASIC 10Liner Contest with ugBASIC!

An interesting competition is held at the beginning of each year: the BASIC 10Liner Contest. It is possible to use ugBASIC to participate in the next "BASIC10Liner" competition, in the following categories:

  • PUR-120 - A game in 10 lines of max 120 characters (w/abbrev.)
  • EXTREME-256 - A game in 10 lines of max 256 characters (w/abbrev.)
  • SCHAU - Any program in 10 lines of max 256 characters (w/abbrev.)
In order to reduce space you can use this abbreviation for this instruction:

LOAD TILE ↔ LdTl

Any problem?

If you have found a problem with this keyword, if you think there is a bug or, more simply, you would like it to be improved, open an issue for this example on GitHub.
Thank you!

open an issue BACK TO KEYWORDS