Chapter Four: Sprites and Graphical Data The Sprite DAT Files and Iscript.bin A "sprite" is a 2-dimensional graphical object. In terms of Starcraft sprites, it usually refers to the unit graphics and their associated animation routines/properties. A common misuse of the term is applying it to GRP files. GRP files are not sprites. They are simply ordered images in an archive. They contain absolutely no data about how those images or "frames" should be played when in animation or what properties they have (e.g., what palette to use). It is still difficult to specify what someone means when they say "sprite" because the Starcraft data files have them somewhat "layered" in a way that there are many objects which can be called sprites, from a flingy.dat entry to a sprites.dat entry to an images.dat entry. The "complete" sprite is an object in flingy.dat -- this is what the other DAT files like units.dat point to when they refer to "sprites" or graphics. But flingy.dat encapsulates objects in sprites.dat in order to be complete, and objects in sprites.dat encapsulate objects in images.dat to be complete. And, to make matters worse, images.dat contains further pointers to images.tbl and the iscript.bin in order to be complete. Thus, it is less confusing to refer to "sprites" as flingy.dat entries, sprites.dat entries, or images.dat entries specifically since they all can refer to "sprites" (but definitely are not the same thing). Here's a little diagram:
The big red circle is what would be referred to by units.dat or weapons.dat as a "sprite." The circles inside are referred to (pointed to) by their outer shells (encapsulated). |
Copyright (c) 1999-2000 Jeffrey Pang.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.1
or any later version published by the
Free Software Foundation with no Invariant Sections, with no
Front-Cover Texts, and with no Back-Cover Texts.
A copy of the license is included in the section entitled "GNU
Free Documentation License".
[an error occurred while processing this directive]