|
OpenTTD Source
1.10.0-RC1
|
The most trivial 32 bpp blitter (without palette animation). More...
#include <32bpp_simple.hpp>
Data Structures | |
| struct | Pixel |
Public Member Functions | |
| void | Draw (Blitter::BlitterParams *bp, BlitterMode mode, ZoomLevel zoom) override |
| Draw an image to the screen, given an amount of params defined above. | |
| void | DrawColourMappingRect (void *dst, int width, int height, PaletteID pal) override |
| Draw a colourtable to the screen. More... | |
| Sprite * | Encode (const SpriteLoader::Sprite *sprite, AllocatorProc *allocator) override |
| Convert a sprite from the loader to our own format. | |
| const char * | GetName () override |
| Get the name of the blitter, the same as the Factory-instance returns. | |
Public Member Functions inherited from Blitter_32bppBase | |
| uint8 | GetScreenDepth () override |
| Get the screen depth this blitter works for. More... | |
| void * | MoveTo (void *video, int x, int y) override |
| Move the destination pointer the requested amount x and y, keeping in mind any pitch and bpp of the renderer. More... | |
| void | SetPixel (void *video, int x, int y, uint8 colour) override |
| Draw a pixel with a given colour on the video-buffer. More... | |
| void | DrawLine (void *video, int x, int y, int x2, int y2, int screen_width, int screen_height, uint8 colour, int width, int dash) override |
| Draw a line with a given colour. More... | |
| void | DrawRect (void *video, int width, int height, uint8 colour) override |
| Make a single horizontal line in a single colour on the video-buffer. More... | |
| void | CopyFromBuffer (void *video, const void *src, int width, int height) override |
| Copy from a buffer to the screen. More... | |
| void | CopyToBuffer (const void *video, void *dst, int width, int height) override |
| Copy from the screen to a buffer. More... | |
| void | CopyImageToBuffer (const void *video, void *dst, int width, int height, int dst_pitch) override |
| Copy from the screen to a buffer in a palette format for 8bpp and RGBA format for 32bpp. More... | |
| void | ScrollBuffer (void *video, int &left, int &top, int &width, int &height, int scroll_x, int scroll_y) override |
| Scroll the videobuffer some 'x' and 'y' value. More... | |
| int | BufferSize (int width, int height) override |
| Calculate how much memory there is needed for an image of this size in the video-buffer. More... | |
| void | PaletteAnimate (const Palette &palette) override |
| Called when the 8bpp palette is changed; you should redraw all pixels on the screen that are equal to the 8bpp palette indexes 'first_dirty' to 'first_dirty + count_dirty'. More... | |
| Blitter::PaletteAnimation | UsePaletteAnimation () override |
| Check if the blitter uses palette animation at all. More... | |
| int | GetBytesPerPixel () override |
| Get how many bytes are needed to store a pixel. | |
Public Member Functions inherited from Blitter | |
| virtual void | PostResize () |
| Post resize event. | |
| template<typename SetPixelT > | |
| void | DrawLineGeneric (int x, int y, int x2, int y2, int screen_width, int screen_height, int width, int dash, SetPixelT set_pixel) |
Additional Inherited Members | |
Public Types inherited from Blitter | |
| enum | PaletteAnimation { PALETTE_ANIMATION_NONE, PALETTE_ANIMATION_VIDEO_BACKEND, PALETTE_ANIMATION_BLITTER } |
| Types of palette animation. More... | |
Static Public Member Functions inherited from Blitter_32bppBase | |
| static Colour | LookupColourInPalette (uint index) |
| Look up the colour in the current palette. | |
| static Colour | ComposeColourRGBANoCheck (uint r, uint g, uint b, uint a, Colour current) |
| Compose a colour based on RGBA values and the current pixel value. | |
| static Colour | ComposeColourRGBA (uint r, uint g, uint b, uint a, Colour current) |
| Compose a colour based on RGBA values and the current pixel value. More... | |
| static Colour | ComposeColourPANoCheck (Colour colour, uint a, Colour current) |
| Compose a colour based on Pixel value, alpha value, and the current pixel value. | |
| static Colour | ComposeColourPA (Colour colour, uint a, Colour current) |
| Compose a colour based on Pixel value, alpha value, and the current pixel value. More... | |
| static Colour | MakeTransparent (Colour colour, uint nom, uint denom=256) |
| Make a pixel looks like it is transparent. More... | |
| static uint8 | MakeDark (uint8 r, uint8 g, uint8 b) |
| Make a colour dark grey, for specialized 32bpp remapping. More... | |
| static Colour | MakeGrey (Colour colour) |
| Make a colour grey - based. More... | |
| static Colour | ReallyAdjustBrightness (Colour colour, uint8 brightness) |
| static Colour | AdjustBrightness (Colour colour, uint8 brightness) |
Static Public Attributes inherited from Blitter_32bppBase | |
| static const int | DEFAULT_BRIGHTNESS = 128 |
The most trivial 32 bpp blitter (without palette animation).
Definition at line 17 of file 32bpp_simple.hpp.
|
overridevirtual |
Draw a colourtable to the screen.
This is: the colour of the screen is read and is looked-up in the palette to match a new colour, which then is put on the screen again.
| dst | the destination pointer (video-buffer). |
| width | the width of the buffer. |
| height | the height of the buffer. |
| pal | the palette to use. |
Implements Blitter.
Definition at line 84 of file 32bpp_simple.cpp.