Peter Nelson
6bc4a62c27
Codechange: Pass std::string_view from blitters instead of char *.
2024-04-10 22:02:04 +01:00
Michael Lutz
071fdab236
Codechange: Replicate cursor screen backup to chat message display, removing explicit memory management.
...
Incidentally, this makes Blitter::GetBytesPerPixel unneeed.
2023-11-04 16:08:34 +01:00
Rubidium
eaae0bb5e7
Codechange: automatic adding of _t to (u)int types, and WChar to char32_t
...
for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done
2023-07-19 19:30:14 +02:00
Patric Stout
1fb101eabb
Codechange: address CodeQL issue "Multiplication result converted to larger type" ( #10306 )
...
Most are very unlikely to ever be triggered in our codebase; two
stand out: linkgraph and money cheat. Those, potentially, could
wrap earlier than expected.
2023-01-02 20:30:02 +00:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
Henry Wilson
af7d9020a1
Codechange: Use override specifer for overriding member declarations
...
This is a C++11 feature that allows the compiler to check that a virtual
member declaration overrides a base-class member with the same signature.
Also src/blitter/32bpp_anim_sse4.hpp +38 is no longer erroneously marked
as virtual despite being a template.
2019-03-24 16:10:04 +01:00
Jonathan G Rennison
db924a4681
Codechange: [Blitter] Change DrawLine to be templated
...
This is remove per-pixel overheads due to use of the SetPixel virtual
method.
These overheads included:
* expensive virtual method call which prevents inlining
* palette lookup for every pixel
* branch on whether palette animation is enabled on every pixel
Regenerate project files.
2019-01-24 11:12:06 +00:00
Jonathan G Rennison
17257b9620
Add: 32bpp SSE2 blitter palette animator ( #6795 )
...
Create a new blitter mode: 32bpp-sse2-anim, which is 32bpp-anim + this.
32bpp-sse2-anim is now used by default where 32bpp-anim would have been.
Also use this with the 32bpp-sse4-anim blitter.
See issue #6469 .
2018-05-23 09:55:04 +01:00
frosch
19188818ea
(svn r27796) -Fix [FS#6545]: 32bpp-anim blitters assumed that pitch and width of the screen were equal.
2017-03-18 17:14:53 +00:00
frosch
d5f82bf55b
(svn r27774) -Fix [FS#5889]: Enabling palette animation for 32bpp blitters while paused skipped initialisation of the palette and resulted in black windows.
...
-Revert (r23978): No SDL-specific fix required anymore. The new fix applies to all backends.
2017-03-11 12:52:26 +00:00
frosch
914d4616ca
(svn r27575) -Fix [FS#6404]: Memory leak when disabling palette animation. (JGR)
2016-05-22 10:28:57 +00:00
rubidium
4c84d13454
(svn r26214) -Add: specialised animated SSE4 blitter (MJP)
...
With 32bpp base set about 15-20% faster in the Draw function (slower with 8bpp base set). Overall, with 32bpp base set, about 5% faster.
2014-01-02 23:52:13 +00:00
rubidium
2618d960e3
(svn r26209) -Codechange: remove some template magic and simplify some code
2014-01-02 22:41:58 +00:00
rubidium
defda16eb6
(svn r26108) -Codechange: some coding style (whitespace)
2013-11-25 14:30:22 +00:00
rubidium
54e36c4ff8
(svn r24111) -Codechange: use Colour more instead of manually bitstuffing
2012-04-10 20:16:51 +00:00
truebrain
2aa6086256
(svn r23729) -Fix (r23670) [FS#4941]: if you increase the buffer size, also increase the bytes per pixel
2012-01-03 10:50:06 +00:00
peter1138
3ef77e55c5
(svn r23670) -Feature: Add ability to adjust brightness of colour after remapping for 32bpp sprites
2011-12-24 23:33:45 +00:00
smatz
33d283fdb1
(svn r23588) -Codechange: use the 'final' keyword so compiler can optimise out some indirect calls
2011-12-18 17:17:18 +00:00
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)
2011-12-08 19:37:33 +00:00
rubidium
485c7cd99e
(svn r22397) -Document: some tidbits of the blitter code
2011-05-01 10:15:33 +00:00
alberth
b2f9b0ac43
(svn r18907) -Cleanup: Smallmap was the last user of SetPixelIfEmpty().
2010-01-23 22:37:14 +00:00
rubidium
db33e32b4d
(svn r18873) -Codechange: use PaletteID also in the blitter
2010-01-21 01:44:51 +00:00
rubidium
82fc28f77f
(svn r18809) -Codechange/Cleanup: remove unneeded headers from some files, if a header require a header make it include that header
2010-01-15 16:41:15 +00:00
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.
2010-01-04 02:32:36 +00:00
rubidium
7fbc33dae1
(svn r17248) -Fix: add GPL license notice where appropriate
2009-08-21 20:21:05 +00:00
rubidium
c0a8d09ca7
(svn r15428) -Codechange: consistently use colour instead of having both color and colour.
2009-02-09 02:57:15 +00:00
glx
c10691faff
(svn r14080) -Fix (r14052): assert triggered when drawing chat window with 32bpp-anim blitter (backup buffer was too small)
2008-08-15 22:06:58 +00:00
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.
2008-06-26 15:46:19 +00:00
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.
2008-05-06 15:11:33 +00:00
truelight
34e48f7886
(svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
...
-Add: let 32bpp-anim use 32bpp-optimizeds, so he profits from the speed-up too
2007-09-09 23:16:01 +00:00
truelight
06fded123a
(svn r10245) -Codechange: added GetName also to all Blitters, instead of only the Factory
2007-06-21 13:56:59 +00:00
truelight
e8f9332af9
(svn r10244) -Fix: make sure to let 32bpp-anim report the increased buffer-size it needs
2007-06-21 13:31:41 +00:00
truelight
3fa3d2e365
(svn r10241) -Codechange: CopyToBuffer now produces a buffer that is 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-21 12:36:46 +00:00
truelight
b2bd361dae
(svn r10227) -Add: added 32bpp-anim blitter, a 32bpp blitter that does palette animation (at the cost of an animation-buffer to keep track of the 'm'-channel of all sprites)
2007-06-19 17:43:30 +00:00