Commit graph

21 commits

Author SHA1 Message Date
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Cameron Cawley
a21961516a GRAPHICS: Split ScalerPluginObject into two classes 2021-11-23 23:32:58 +01:00
Orgad Shaneh
b531894158 GRAPHICS: JANITORIAL: Remove 'virtual' when override is specified 2021-11-14 14:31:21 +02:00
Cameron Cawley
6a6cdc2bce GRAPHICS: Use override and final keywords 2021-03-15 16:48:40 +02:00
Johannes Schickel
5df18f7d86 GRAPHICS: Take advantage of ColorMasks::PixelType in scaler code. 2021-03-15 16:48:40 +02:00
Johannes Schickel
088119b57c GRAPHICS: Very small cleanup for Edge scaler code. 2021-03-15 16:48:40 +02:00
Johannes Schickel
8825c9e3b4 GRAPHICS: Keep destination buffer in SourceScaler instead of SDL backend. 2021-03-15 16:48:40 +02:00
Johannes Schickel
5420a7f6bd GRAPHICS: Add a default implementation for ScalerPluginObject::getFactor. 2021-03-15 16:48:40 +02:00
Johannes Schickel
6942dba3da GRAPHICS: Let each scaler handle 1x scaling. 2021-03-15 16:48:40 +02:00
Eric Culp
4c4028cf1d GRAPHICS: Various formatting fixes 2021-03-15 16:48:40 +02:00
Eric Culp
4c967c5fbc GRAPHICS,SDL: Revision to scaler API
oldSrcScale() is now unified with scale(). Use enableSource(bool enable)
to switch functionality. Partial screen updates are also posible because
of this.

initialize() had its prototype changes although it is functionally the
same.

setSource() no longer has a type parameter, removing support for
multiple source surfaces. They weren't useful anyway.

useOldSrc() was renamed to useOldSource() to conform to the names of
other functions.
2021-03-15 16:48:40 +02:00
Eric Culp
c5c5662330 GRAPHICS,SDL: Change oldSrcScale api
More bookkeeping is kept in common scaler code instead of the backend.
Plugins inheriting SourceScaler will have this functionality.

TODO: Some new functions may still be able to be combined to simplify
the API.
2021-03-15 16:48:40 +02:00
Eric Culp
86c2307351 GRAPHICS: Add some 32bpp abilty to Edge scalers
It is still broken, but it seems to be close.
2021-03-15 16:48:40 +02:00
Eric Culp
1e724e6640 GRAPHICS: Use new oldSrcScale API for EdgePlugin 2021-03-15 16:48:40 +02:00
Eric Culp
f40485ee37 GRAPHICS: Move and format comments from edge.cpp to edge.h 2021-03-15 16:48:40 +02:00
Eric Culp
a6e6f7676d GRAPHICS: Remove unused parameter to findPricipleAxis in Edge plugin 2021-03-15 16:48:40 +02:00
Eric Culp
0dcd6bae37 GRAPHICS: 32bpp-ize chooseGreyscale for Edge plugin 2021-03-15 16:48:40 +02:00
Eric Culp
a4741a7268 GRAPHICS: Template Edge plugin over pixel format
calcPixelDiffNosqrt is the only function with a valid implementation.
The rest of the templated functions just have skeleton templates (for
now).
2021-03-15 16:48:40 +02:00
Eric Culp
5688622889 GRAPHICS: Move static variables to class members in Edge Plugin 2021-03-15 16:48:40 +02:00
Eric Culp
9ba4c24ae1 GRAPHICS: Migrate global funcs and vars to Edge Plugin class 2021-03-15 16:48:40 +02:00
Eric Culp
592617e2ce GRAPHICS: Add Edge2x/3x scaler
This currently does not conform to coding standards and contains a lot
of dead code (This will be fixed). Thanks to Eric Welsh for the original
patch.
2021-03-15 16:48:40 +02:00