Commit Graph

196 Commits (619d714923b0f8119afc9d3e1402fb1feeecb586)

Author SHA1 Message Date
rubidium 71a81a8762 (svn r26212) -Add: specialised non-animated SSSE3 blitter (MJP)
With 32bpp base set about 35% faster than 32bpp-optimized, or about 10% for 8bpp base sets in the Draw function. Respectively about 6 and 1% of total run time
11 years ago
rubidium fb05674cb7 (svn r26211) -Add: specialised non-animated SS2 blitter (MJP)
With 32bpp base set about 30% faster than 32bpp-optimized, or about 10% for 8bpp base sets in the Draw function. Respectively about 5 and 1% of total run time
11 years ago
rubidium 899c0f9cd2 (svn r26210) -Codechange: add infrastructure for not registering a blitter 11 years ago
rubidium 2618d960e3 (svn r26209) -Codechange: remove some template magic and simplify some code 11 years ago
rubidium defda16eb6 (svn r26108) -Codechange: some coding style (whitespace) 11 years ago
rubidium f817b06c18 (svn r26103) -Fix: prevent odd overflows due to integer promotion 11 years ago
rubidium 14b8f6e594 (svn r25958) -Fix: overriding method of DrawLine was not updated when parameters were added making it non-functional 11 years ago
fonsinchen 89b7afbac8 (svn r25911) -Add: Support for drawing dashed lines. 11 years ago
frosch 640d39c001 (svn r25820) -Codechange: More const-ness. 11 years ago
planetmaker c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 12 years ago
frosch e4416d6a0c (svn r24610) -Change: [NewGRF] Set the reference brightness of 32bpp mask recolouring to 128. 12 years ago
rubidium 54e36c4ff8 (svn r24111) -Codechange: use Colour more instead of manually bitstuffing 12 years ago
frosch 058017e178 (svn r23989) -Fix-ish: Zero the offsets of disabled zoomlevels. 13 years ago
frosch dac51654fe (svn r23988) -Fix: Typo in comment. 13 years ago
rubidium 0e925c9e5e (svn r23927) -Fix [FS#5056]: 32bpp animated blitter was optimised a bit too far regarding not needing to update the colour mapping when (re)initialising the palette 13 years ago
michi_cc e85d5b5d31 (svn r23889) -Codechange: Centralise sprite resizing in one place. (peter1138) 13 years ago
rubidium 6d6be50ae0 (svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files 13 years ago
truebrain 2aa6086256 (svn r23729) -Fix (r23670) [FS#4941]: if you increase the buffer size, also increase the bytes per pixel 13 years ago
truebrain 8dbb654e39 (svn r23727) -Codechange: speedup the 32bpp palette animation by reducing the amount of compares. This is possible because the function is called with only 2 possible conditions: from 0 to 255 (full palette update, 8bpp only) or from PALETTE_ANIM_START to 255 13 years ago
peter1138 4da7f2b723 (svn r23726) -Fix (r23670): Remove debugging code added accidentally 13 years ago
michi_cc 47171c7829 (svn r23674) -Fix (r23670): Don't read invalid memory in the 32bpp simple blitter. 13 years ago
peter1138 3ef77e55c5 (svn r23670) -Feature: Add ability to adjust brightness of colour after remapping for 32bpp sprites 13 years ago
smatz 33d283fdb1 (svn r23588) -Codechange: use the 'final' keyword so compiler can optimise out some indirect calls 13 years ago
rubidium 61625e53c9 (svn r23448) -Fix: keep a local copy of the palette in the 32bpp animated blitter so changes of the palette data during the game don't influence drawing (with SDL) 13 years ago
rubidium 2ccbd2a6f5 (svn r23446) -Codechange: move _cur_palette and it's related first/count dirty variables into a single structure 13 years ago
frosch f8478cecb3 (svn r23343) -Fix (r23332): Incorrect encoding of sprites with much transparency. 13 years ago
peter1138 cd6249dfc5 (svn r23332) -Fix (r23316): Length of transparent pixels could exceed a byte. (frosch) 13 years ago
peter1138 15d0a22aac (svn r23315) -Codechange: Only encode sprites for zoom levels that will be used. 13 years ago
truebrain ecbe29ecb7 (svn r23311) -Remove: removed the silly blitter called 8bpp-debug. You can find him at the same place as you can find CTRL+D. Sorry for those who liked to trip while playing OpenTTD; I truly am sorry :D 13 years ago
rubidium 7fd1e1df81 (svn r23198) -Codechange: introduce a free that takes const pointers so we don't need to cast to void/non-const before being able to free 13 years ago
rubidium 4f87d2e88c (svn r23194) -Codechange: don't cast away const needlessly 13 years ago
peter1138 719f6618d7 (svn r23016) -Change: Disable palette animation for pixels with alpha, as the alpha and previous colour information will be lost when the palette is animated. 13 years ago
michi_cc c575b5bbd7 (svn r23000) -Feature: Base graphics sets can now specify a preferred blitter which OpenTTD uses to decide which blitter to load. 13 years ago
frosch b7c6424104 (svn r22439) -Fix (r22291, r22426): Drawing lines of length zero failed. 13 years ago
frosch f976cddcba (svn r22426) -Fix (r22291): Drawing vertical and horizontal lines of width 1 missed drawing the first pixel. 13 years ago
frosch bbcd2bab5d (svn r22419) -Change: Always use the DOS palette for drawing.
-Remove: the '-i' option for palette selection.
13 years ago
rubidium 485c7cd99e (svn r22397) -Document: some tidbits of the blitter code 13 years ago
frosch 1ffd720f81 (svn r22383) -Codechange: Rename PALETTE_TO_STRUCT_GREY to PALETTE_NEWSPAPER as it does not belong to the other PALETTE_TO_STRUCT_xxx recolourings. 13 years ago
frosch ecb3701210 (svn r22302) -Codechange: Replace a linear search with a binary search. 13 years ago
frosch b18211bb9d (svn r22291) -Add: a linewidth argument to GfxDrawLine() and Blitter::DrawLine(). 13 years ago
frosch 7659575cfa (svn r22290) -Codechange: Somewhat deduplicate one line of code. 13 years ago
frosch 004c93f9da (svn r22288) -Codechange: Deduplicate Blitter_8bppBase::DrawLine() and Blitter_32bppBase::DrawLine() into Blitter::DrawLine(). 13 years ago
rubidium 7eba2bf4d3 (svn r21890) -Cleanup: remove some unneeded includes 14 years ago
frosch 3d1008318b (svn r21782) -Codechange: Move declaration of AllocatorProc from Blitter:: to spritecache.h 14 years ago
rubidium e356cb9405 (svn r20281) -Codechange: unify case scope closure + break coding style 14 years ago
alberth 33a96b5ef3 (svn r19132) -Codechange: No need to end a line with ;;. 15 years ago
yexo 6406b75b8f (svn r19094) -Codechange: don't check for NULL values before calling StrEmpty 15 years ago
alberth b2f9b0ac43 (svn r18907) -Cleanup: Smallmap was the last user of SetPixelIfEmpty(). 15 years ago
rubidium db33e32b4d (svn r18873) -Codechange: use PaletteID also in the blitter 15 years ago
rubidium 82fc28f77f (svn r18809) -Codechange/Cleanup: remove unneeded headers from some files, if a header require a header make it include that header 15 years ago
rubidium 70aad27dcb (svn r18791) -Fix [FS#3504]: when copying an 'image' back into the buffer the 32bpp anim blitter triggered palette check of the whole window instead of only the part the got copied back 15 years ago
peter1138 abb147d974 (svn r18709) -Fix (r10227,FS#3464): Animation buffer for 32bpp-anim blitter was only validated during sprite blitting, other drawing operations didn't check it. Initial startup and window resize could therefore lead to crash. 15 years ago
rubidium d6cded5380 (svn r17693) -Cleanup: remove some unneeded includes 15 years ago
rubidium ca91a97826 (svn r17579) -Fix: remove doxygen docs for removed parameters, or change @param to @tparam if necessary 15 years ago
rubidium e8ddf001c8 (svn r17570) -Fix: a number of Doxygen warnings about missing parameters, which were sometimes missing and sometimes just typos 15 years ago
rubidium 7fbc33dae1 (svn r17248) -Fix: add GPL license notice where appropriate 15 years ago
rubidium 7fb95e2c2b (svn r17228) -Codechange: some coding style fixes 15 years ago
smatz d703f0c3b5 (svn r16628) -Codechange: remove one gcc2 hack 15 years ago
smatz c03ce4b1c7 (svn r16492) -Remove: support for gcc2. It hasn't been able to compile OTTD for months. All attempts to do another workaround failed. 15 years ago
rubidium b25a4f8231 (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 16 years ago
rubidium 9d018723b7 (svn r15711) -Codechange: lots of whitespace cleanup/fixes 16 years ago
rubidium 3ba802e995 (svn r15556) -Change: don't temporary malloc+free when encoding sprites, just reuse the same piece of allocated memory for each encoding. 16 years ago
rubidium c0a8d09ca7 (svn r15428) -Codechange: consistently use colour instead of having both color and colour. 16 years ago
smatz 5ad1cd32b2 (svn r15324) -Codechange: unify the class used for comparing of strings for std::map 16 years ago
smatz 0d3f5e6e74 (svn r15299) -Cleanup: remove many redundant includes 16 years ago
peter1138 85c0d42616 (svn r14912) -Codechange: Autoprobe 'null' blitter when built as dedicated-only. 16 years ago
peter1138 6b6fd36050 (svn r14907) -Codechange: Remove 32 character limit from driver/blitter selection and parameters. 16 years ago
rubidium 0d254e8914 (svn r14540) -Codechange: introduce [v]seprintf which are like [v]snprintf but do return the number of characters written instead of the number of characters that would be written; as size_t is unsigned substraction can cause integer underflows quite quickly. 16 years ago
rubidium c8e8911ef6 (svn r14223) -Codechange: make GetSprite aware of the 4 different types of sprites: fonts, recolour, mapgen and normal sprites. 16 years ago
rubidium 200f405706 (svn r14146) -Codechange: allow palette override in both ways and remove some unneeded '(x == 0) ? 0 : 1' constructs. 16 years ago
glx c10691faff (svn r14080) -Fix (r14052): assert triggered when drawing chat window with 32bpp-anim blitter (backup buffer was too small) 16 years ago
bjarni fbef6535a5 (svn r14032) -Fix (r13584): [OSX] changed the condition for selecting 8 or 32 bpp blitter by default
Now we will pick 32 bpp if no 8 bpp fullscreen resolutions are available on the main display (the one with the dock)
16 years ago
belugas a2f590aeec (svn r14016) -Codechange: Remove some magical numbers 16 years ago
smatz 69cb2f088f (svn r13721) -Codechange: one less multiplication for colour mixing in 32bpp blitters (GeekToo) 16 years ago
smatz 1834a2f670 (svn r13640) -Codechange: make colours behind not fully solid objects less darker for BM_TRANSPARENT (for 32bpp blitters) 16 years ago
smatz 114c820c56 (svn r13639) -Codechange: rewrite 32bpp-anim and 32bpp-optimized drawing and encoding so it uses similiar scheme as 8bpp-optimized
All zoom levels are stored and a kind of RLE is used. Together with further changes and reducing number of variables, drawing is ~50% faster in average.
16 years ago
smatz 61847389d6 (svn r13619) -Codechange: use 'const char *' instead of std::string for blitter and driver names
Removes indirect dependency on <string> for 20 files, reduces binary size by 16kB
16 years ago
smatz 37b8e87454 (svn r13602) -Codechange: little speedup for 8bpp-optimized blitter 16 years ago
bjarni 6bd2d0ffcb (svn r13584) -Fix: [OSX] Fixed issue where 10.5 failed to switch to fullscreen
This is done by selecting the 32bpp-anim blitter by default as it seems Apple removed some 8bpp support
  Since this is done at runtime the same binary will still select 8bpp on 10.3 and 10.4
16 years ago
smatz 7a7ff65ac5 (svn r13571) -Codechange: define channels in struct Colour in different order on LE and BE machines 16 years ago
smatz bc12e5453c (svn r13568) -Fix (r13564): Windows build asserts where I wouldn't expect it to 16 years ago
smatz cc2f9187cc (svn r13564) -Codechange: do not use SetPixel in PaletteAnimate, access destination directly instead. Makes palette animation ~40% faster. 16 years ago
smatz dedb0033b3 (svn r13551) -Codechange: store offsets to different zoom levels in a distinguished struct instead in the data stream for 8bpp-optimized 16 years ago
smatz 8123d4de11 (svn r13445) -Codechange: make 32bpp_optimized blitter ~10-20% faster in drawing (depends on architecture and compiler) 16 years ago
smatz 0812e2f959 (svn r13354) -Codechange: make 8bpp_optimized blitter ~25% faster in encoding and ~15% faster in drawing (depends on architecture) 16 years ago
smatz ed462507b2 (svn r13351) -Codechange: disable warnings about unused variable for builds without asserts 16 years ago
glx e82bab5323 (svn r13161) -Fix: free the blitter list when the last blitter is removed. 16 years ago
rubidium d03994098b (svn r12971) -Documentation: add @file in files that missed them and add something more than whitespace as description of files that don't have a description. 16 years ago
rubidium 9d8fa486af (svn r12761) -Codechange: lots of minor whitespace coding style fixes around operators. 16 years ago
rubidium 3ca95f2a85 (svn r11839) -Codechange: move some variables from variables.h to a more logical location. 17 years ago
rubidium d4e6a6bf57 (svn r11828) -Codechange: include table/* as the last includes and remove an unneeded include from openttd.h. 17 years ago
frosch cbe7e5d668 (svn r11813) -Fix [FS#1602]: Switch _screen to the output buffer and disable usage of 32bpp-anim animation buffer during giant screenshots. 17 years ago
rubidium a3ccdcea36 (svn r11777) -Codechange: split the string header and make do not include it when it's not necessary. 17 years ago
rubidium 0b1d3e43e5 (svn r11704) -Codechange: remove another bunch of useless includes. 17 years ago
rubidium 429521a7d1 (svn r11692) -Codechange: move some functions from 'functions.h' to a more logical place and remove about 50% of the includes of 'functions.h' 17 years ago
rubidium bf98e25e43 (svn r11691) -Codechange: move+rename helpers.hpp and only include it when it is really needed. 17 years ago
rubidium a773d45885 (svn r11684) -Codechange: split gfx.h in a type and functional header. 17 years ago
rubidium 8f0e68285b (svn r11682) -Codechange: move some 'generic' geometry related types into a single file and do not include gfx.h everywhere to get a Point type. 17 years ago
rubidium 01e20c9140 (svn r11674) -Codechange: refactor some functions out of macros.h into more logical locations. 17 years ago
smatz bda9d4a236 (svn r11656) -Codechange: add ZOOM_LVL_BEGIN and postfix operators so ZoomLevel can be used in some iterations 17 years ago