{{htmlmetatags>metatag-robots=() metatag-title=(LOAD ATLAS | ugBASIC User Manual) metatag-keywords=(ugBASIC,Commodore 64,Commodore PLUS/4,ZX Spectrum) metatag-description=(Manual page for LOAD ATLAS) metatag-media-og:image=(:ugbasic:logo-ugbasic-fb.png) metatag-og:title=(LOAD ATLAS | ugBASIC User Manual) metatag-og:description=(Manual page for LOAD ATLAS) }} ====== ugBASIC User Manual ====== ===== LOAD ATLAS ===== ===== SYNTAX ===== = LOAD ATLAS( filename [AS alias][,mode] ) frame [ORIGIN(dx,dy)] [fl] [tr] [op] [bg] [bk] [READONLY] = LOAD ATLAS( filename [AS alias][,mode] ) frame [fl] [tr] [op] [bg] [bk] [READONLY] frame : [ FRAME SIZE(w, h) [OFFSET(dx,dy)] [ORIGIN(zx, zy)] | FRAME AUTO] fl : [FLIP X] [FLIP Y] [FLIP XY] [FLIP YX] [COMPRESSED] [OVERLAYED] [EXACT] [ROLL X] [ROLL Y] [ROLL XY] [ROLL YX] tr : [TRANSPARENCY | TRANSPARENCY color] op : [OPACITY | OPACITY color] bg : [BACKGROUND color] bk : [UNBANKED | BANKED | BANKED(number)] ==== PURPOSE ==== The ''LOAD IMAGE'' command allows you to load an set of images and to convert each one into an ''ATLAS''. An Atlas is a set of images, numbered by 0 to frame count, which can be used individually with the PUT IMAGE command, referring to the corresponding frame. The frames are cut out of the original image, using the size provided in the ''FRAME SIZE (w, h)''. It should be noted that, for this reason, ''ATLAS'' images must have a total of a size equal to an entire multiple of the size of the individual frame. It is also possible to indicate an offset from which you will have to start cutting the image (parameter ''ORIGIN(zx,zy)'') and one related to each individual cutout (''OFFSET (dx, dy)''). So, the first parameter is the filename to parse. 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. The second parameter is the mode to use to convert the given data (by default, it is equal to current mode) 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 (entire) image horizontally, before cutting and translating it into the native format. The same is true for the ''FLIP Y'' command, which instead inverts the (entire) image vertically. There is also the ''FLIP XY'' (or ''FLIP YX'') parameter to act, simultaneously, on both directions. 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. 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 ''OVERLAYED'' flag can be used on systems with a palette of few colors, to indicate which of them must be preserved during the drawing phase, to have the transparency effect. The ''EXACT'' flag allows you to bypass the automatic detection of the palette, opting for the representation of the colors according to what is contained in it. The (entire) image can be loaded as a transparent image (if the original image has no transparency) using the keyword ''TRANSPARENCY'', followe by an optional parameter that represent the color to consider as transparent. The (entire) image can be loaded as a transparent image (if the original image has no transparency) using the keyword ''OPACITY'', followe by an optional parameter that represent the color to consider as pavement,. The resulting ''ATLAS'' can be loaded directly into the expansion memory using the ''BANKED'' keyword. The number represent the shared resident to use as target for this image. For some targets this is the default. If you want, you can move the image onto the resident memory by using the ''UNBANKED'' keyword. Finally, if the image is not expected to change during gameplay, it can be marked with the ''READONLY'' attribute: in this case, the image will be stored in read-only memory, if available. ==== EXAMPLE ==== starship = LOAD ATLAS("starship.png") FRAME SIZE (16, 16) starship2 = LOAD ATLAS("starship.png" AS "starship2") FRAME SIZE (32, 32) OFFSET(2,2) alienAt11 = LOAD ATLAS("alien.jpg",11) FRAME SIZE AUTO alien2 = LOAD ATLAS("alien.jpg" AS "alien2",11) FRAME SIZE(8,8) TRANSPARENCY ==== ABBREVIATION ==== LdAtl# ==== AVAILABLE ON ==== ==== ALIAS FOR ==== [[LOAD IMAGES]] [[IMAGES LOAD]] [[ATLAS LOAD]] ==== ANY PROBLEM? ==== If you have encountered a problem using this command, if you think there is a bug or the explanation is unclear, please [[https://github.com/spotlessmind1975/ugbasic/issues/new?title=ISSUE ON LOAD ATLAS|open an issue]] for this keyword on GitHub. Thank you!===== POWERED BY ===== [[:ugbasic:user:index|{{ :ugbasic:user:logo-ugbasic.png?nolink&600 |}}]]