|
void | clear () |
|
void | setDirtyRange (int top, int bottom) |
|
byte * | getPixels (int x, int y) const |
|
byte * | getBackPixels (int x, int y) const |
|
| Surface () |
|
const void * | getPixels () const |
|
void * | getPixels () |
|
void | setPixels (void *newPixels) |
|
const void * | getBasePtr (int x, int y) const |
|
void * | getBasePtr (int x, int y) |
|
uint32 | getPixel (int x, int y) const |
|
void | setPixel (int x, int y, int pixel) |
|
void | create (int16 width, int16 height, const PixelFormat &format) |
|
void | free () |
|
void | init (int16 width, int16 height, int16 pitch, void *pixels, const PixelFormat &format) |
|
void | copyFrom (const Surface &surf) |
|
void | convertFrom (const Surface &surf, const PixelFormat &format) |
|
Surface | getSubArea (const Common::Rect &area) |
|
const Surface | getSubArea (const Common::Rect &area) const |
|
bool | clip (Common::Rect &srcBounds, Common::Rect &destBounds) const |
|
void | copyRectToSurface (const void *buffer, int srcPitch, int destX, int destY, int width, int height) |
|
void | copyRectToSurface (const Graphics::Surface &srcSurface, int destX, int destY, const Common::Rect subRect) |
|
void | copyRectToSurfaceWithKey (const void *buffer, int srcPitch, int destX, int destY, int width, int height, uint32 key) |
|
void | copyRectToSurfaceWithKey (const Graphics::Surface &srcSurface, int destX, int destY, const Common::Rect subRect, uint32 key) |
|
void | convertToInPlace (const PixelFormat &dstFormat) |
|
void | convertToInPlace (const PixelFormat &dstFormat, const byte *palette, uint16 paletteCount) |
|
Graphics::Surface * | convertTo (const PixelFormat &dstFormat, const byte *srcPalette=0, int srcPaletteCount=256, const byte *dstPalette=0, int dstPaletteCount=0, DitherMethod method=kDitherFloyd) const |
|
void | drawLine (int x0, int y0, int x1, int y1, uint32 color) |
|
void | drawThickLine (int x0, int y0, int x1, int y1, int penX, int penY, uint32 color) |
|
void | hLine (int x, int y, int x2, uint32 color) |
|
void | vLine (int x, int y, int y2, uint32 color) |
|
void | fillRect (Common::Rect r, uint32 color) |
|
void | frameRect (const Common::Rect &r, uint32 color) |
|
void | move (int dx, int dy, int height) |
|
void | flipVertical (const Common::Rect &r) |
|
void | flipHorizontal (const Common::Rect &r) |
|
bool | applyColorKey (uint8 rKey, uint8 gKey, uint8 bKey, bool overwriteAlpha=false) |
|
bool | applyColorKey (uint8 rKey, uint8 gKey, uint8 bKey, bool overwriteAlpha, uint8 rNew, uint8 gNew, uint8 bNew) |
|
bool | setAlpha (uint8 alpha, bool skipTransparent=false) |
|
AlphaType | detectAlpha () const |
|
Graphics::Surface * | scale (int16 newWidth, int16 newHeight, bool filtering=false) const |
|
Graphics::Surface * | rotoscale (const TransformStruct &transform, bool filtering=false) const |
| Rotoscale function; this returns a transformed version of this surface after rotation and scaling. Please do not use this if angle == 0, use plain old scaling function. More...
|
|
void | debugPrint (int debuglevel=0, int width=0, int height=0, int x=0, int y=0, int scale=-1, int maxwidth=160, const byte *palette=NULL) const |
|
In all Scumm games, one to four virtual screen (or 'windows') together make up the content of the actual screen. Thinking of virtual screens as fixed size, fixed location windows might help understanding them. Typical, in all scumm games there is either one single virtual screen covering the entire real screen (mostly in all newer games, e.g. Sam & Max, and all V7+ games). The classic setup consists of three virtual screens: one at the top of the screen, where all conversation texts are printed; then the main one (which I like calling 'the stage', since all the actors are doing their stuff there), and finally the lower part of the real screen is taken up by the verb area. Finally, in V5 games and some V6 games, it's almost the same as in the original games, except that there is no separate conversation area.
Each of these virtual screens has a fixed number or id (see also VirtScreenNumber).