summaryrefslogtreecommitdiff
path: root/src/gfx.cpp
AgeCommit message (Collapse)Author
2007-07-05(svn r10444) -Codechange: switch to c++ classes and inheritance for ↵peter1138
sound/music/video drivers, using self-registration based on the blitter-model.
2007-06-22(svn r10276) -Codechange: made a counter based on milliseconds and ↵truelight
independent of the game-state to base double-click and TGP Generation Process on -Codechange: renamed _timer_counter to _palette_animation_counter, as that is what it is
2007-06-21(svn r10255) -Codechange: remove some old debug code nobody was using anymoretruelight
2007-06-21(svn r10254) -Feature: loading indicator, which shows in % how full a ↵truelight
vehicle is while loading/unloading (TheJosh)
2007-06-21(svn r10241) -Codechange: CopyToBuffer now produces a buffer that is ↵truelight
unreadable from outside the blitter, so the blitter can store anything he likes -Codechange: added CopyImageToBuffer, which produces a readable buffer for screenshots -Fix: 32bpp-anim now holds animation on transparent objects to avoid strange graphical effects -Fix: 32bpp-anim now works correct on mouse-movement (it holds the palette animation correctly)
2007-06-19(svn r10220) -Fix r10216: even more fuck-ups for non-SDL video backendstruelight
2007-06-19(svn r10216) -Fix: palette animation always redid all palette entries, where ↵truelight
in fact only a few indexes were needed -Codechange: allow blitters to handle palette animation internally or even disable it; 8bpp uses video-backend for palette animation
2007-06-18(svn r10206) -Codechange: more moving things to blitter-layer: ScrollBuffertruelight
2007-06-18(svn r10203) -Codechange: more moving things to blitter-layer: DrawLinetruelight
2007-06-18(svn r10201) -Codechange: Replace Blitter::SetHorizontalLine with ↵peter1138
Blitter::DrawRect, as the former was only used by the rectangle drawing code anyway. This lets us draw rectangles in one go.
2007-06-17(svn r10190) -Codechange: merged renderer and blitter to one single class ↵truelight
API: blitter -Codechange: introduced a hierachy of blitters to avoid a lot of code duplication Note: this allows much easier adding other types of video-drivers, like OpenGL
2007-06-13(svn r10132) -Codechange: split out the last direct video-buffer read access ↵truelight
to the blitter-layer -Add: added a new renderer and blitter to make room for some optimized bpp -Fix: fill the alpha channel in the grf-spriteloader
2007-06-12(svn r10121) -Codechange: split renderer from rest of code; no longer any ↵truelight
code directly accesses the video-buffer -Add: added NULL blitter and renderer, which are always used for -vnull -Add: dedicated driver doesn't blit nor render by default. Can be overruled by user. (-D -b 8bpp-optimized) -Remove: removed CTRL+D from win32, which is incompatible with above -Add: extended screenshot support for PNG and BMP -Codechange: remove all hardcoded 8bpp references and replace them with more dynamic ones -Codechange: minor stuff in blitters
2007-06-11(svn r10092) -Codechange: code-seperated the spriteloader and blitter from ↵truelight
the rest of the code -Add: make it possible to pick your own blitter (-b <blitter>, -h for overview) -Add: added a new optimized 8bpp blitter (default, caches sprites of all zoom-levels) -Add: added a debug 8bpp blitter and a very slow normal 8bpp blitter
2007-06-08(svn r10070) -Fix: fix the rounding problem of zoom-levels in zoom.hpp, so ↵truelight
it is global for every call
2007-06-05(svn r10043) -Change: make templates of the blitters, based on zoom and ↵truelight
mode, which makes the optimizing better, and therefor a higher blitter speed (tnx boekabart) -Codechange: unify the MainBlitter a bit more
2007-05-19(svn r9884) -Feature: 2 new zoom-out levels: 8 times and 16 timestruelight
-Codechange: unified the blitter function so we have 1 function for all zoom-levels -Codechange: make most of the label functions work with zoom-level instead of magic numbers and big switches per zoom-level -Codechange: MakeXXXDirty() functions didn't take into account zoom-level, but just used the biggest possible value -Codechange: simplified blitter functions to avoid code duplication
2007-05-15(svn r9846) -Codechange: introduced ZOOM_LVL_MIN and ZOOM_LVL_MAX for the ↵truelight
obvious reasons -Codechange: introduced ZOOM_LVL_DETAIL to show/remove details -Codechange: changed << and >> operator with ZoomLevel to a simple wrapper (that in theory also allows zoom-in besides the current zoom-out) -Fix r9845: missed some int -> ZoomLevel
2007-05-15(svn r9844) -Codechange: replace zoomlevel with an enumtruelight
-Codechange: use predefined enums for viewport zoomlevels
2007-05-14(svn r9835) -Codechange: use Pixel typedef instead of byte where ever possibletruelight
2007-04-18(svn r9672) -Cleanup: lots of coding style fixes around operands.rubidium
2007-04-17(svn r9662) -Documentation: Doxygen corrections and @file omissionsbelugas
2007-04-17(svn r9654) -Fix: Add string colours for the DOS palette and use them when ↵maedhros
playing with the DOS data files.
2007-03-26(svn r9472) -Fix (r9449): num is the number of newlines in the string, not ↵maedhros
the number of lines. Also allow for maxh being negative.
2007-03-25(svn r9449) -Fix: Truncate the newgrf information text in the newgrf gui if ↵maedhros
it's too long.
2007-03-22(svn r9400) -Codechange: Use some more representative enum names for ↵belugas
landscape types.
2007-03-07(svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};rubidium
2007-03-07(svn r9050) -Codechange: Foo(void) -> Foo()rubidium
2007-03-06(svn r9034) -Codechange: renamed _pause to _pause_game, as some targets ↵truelight
already have a symbol called _pause (and therefor our variable conflicts with thatone. We shouldn't be using _ as global indicator.....)
2007-03-05(svn r9012) -Fix/Feature (UTF8): When cutting strings into multiple lines ↵Darkvater
also take into consideration whitespace characters of more than 1 byte length (eg IDEOGRAPHIC SPACE, IsWhitespace() function). When trimming such strings, account for multiple-byte long sequences so use *Utf8PrevChar(v) = '\0'. -Codechange: Add a function Utf8TrimString() that properly trims a string to an UTF8 encoding seperation instead of somewhere in the wild (and use it in the chat area)
2007-03-01(svn r8950) -Cleanup: doxygen changes. Mostly @files missing tags and a few ↵belugas
comments style.
2007-02-24(svn r8880) -Codechange: make anim cursors an array of structs.rubidium
2007-01-14(svn r8128) -Codechange: Split sprite and palette remap into separate 32 bit ↵peter1138
values. This lets us increase the sprite width from 14 to up to 29 bits, effectively nulling the old sprite limit. Table changes in next commit.
2007-01-13(svn r8095) -Codechange: stuff that is not related to HAL moved from hal.h ↵KUDr
to gfx.h
2007-01-10(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, ↵rubidium
stillunknown and pv2b.
2007-01-10(svn r8033) [cpp] - Prepare for merge from branches/cpp (all .c files ↵KUDr
renamed to .cpp)