Commit Graph

1218 Commits

Author SHA1 Message Date
richiesams
7e8e9bf3d1 GRAPHICS: Create copyRectToSurface member function 2013-08-15 14:31:21 -05:00
Johannes Schickel
a2a5d42a58 GRAPHICS: Fix warnings about mismatching format arguments. 2013-08-12 16:43:35 +02:00
Narek Mailian
1f1d35bd3d GRAPHICS: Allow VectorRenderer and ThemeEngine to init with 4BPP 2013-08-08 08:35:08 +02:00
Narek Mailian
f545a2f08f GUI: Change name of GUI-renderers to remove "16-bit" 2013-08-08 08:35:08 +02:00
Narek Mailian
ece8b7fb65 GRAPHICS: Fix fonts/bdf.cpp to allow for 32bpp to be used 2013-08-08 08:27:11 +02:00
Narek Mailian
1d40dca7a0 GRAPHICS: Add error-checking in blendPixelPtr for invalid BPPs 2013-08-08 08:27:11 +02:00
Johannes Schickel
0f59009e6e GRAPHICS: Fix VectorRendererSpec for RGBA8888.
Formerly values in the gradient and blending code overflowed and thus caused
incorrect colors. Now there's some special case for 32bpp modes, which needs
slightly more operations but assures a correct output.
2013-08-08 08:27:11 +02:00
Torbjörn Andersson
b8850522b6 GRAPHICS: Fix incorrect parameter order for getBasePtr.
This caused createThumbnail() to crash, e.g. when saving in the
Kyrandia engine. Probably other engines as well.
2013-08-08 06:55:17 +02:00
Johannes Schickel
7f8308e0eb Merge pull request #365 from lordhoto/protected-pixels
Make Graphics::Surface::pixels protected.
2013-08-07 12:24:59 -07:00
Johannes Schickel
363a5a95cf GRAPHICS: Make Surface::pixels protected. 2013-08-06 03:51:49 +02:00
Johannes Schickel
604e1b0070 GRAPHICS: Fix typo. 2013-08-04 01:01:15 +02:00
Johannes Schickel
260ec7a430 GRAPHICS: Add two new methods to change 'pixels' of a Surface.
One method is a simpler setter for 'pixels'. The other one can be used to
setup a Surface with custom data.
2013-08-03 04:02:54 +02:00
Johannes Schickel
5111746911 GRAPHICS: Take advantage of Surface::getPixels. 2013-08-03 04:02:49 +02:00
Johannes Schickel
f03dc05847 GRAPHICS: Add an easy way to query 'pixels' of Surface.
This introduced getPixels which is a shortcut for getBasePtr(0, 0).
2013-08-03 04:02:49 +02:00
Johannes Schickel
dbef9fef3b GRAPHICS: Prefer getBasePtr over direct Surface::pixels access. 2013-08-03 04:02:49 +02:00
Johannes Schickel
affb7c3cb3 GRAPHICS: Prefer getBasePtr over direct Surface::pixels access. 2013-08-03 02:52:34 +02:00
Johannes Schickel
058c22ddaa GRAPHICS: Allow to query a Surface describing a subarea in Surface. 2013-08-02 18:47:00 +02:00
Johannes Schickel
ff451ba2dc GRAPHICS: Slight formatting fixes in thumbnail_intern.cpp. 2013-08-02 17:48:31 +02:00
Johannes Schickel
9a787fa586 GRAPHICS: Silence conversion warnings by using an explicit cast. 2013-08-02 17:33:13 +02:00
Johannes Schickel
9db17152c1 GRAPHICS: Make Surface::copyFrom work for any src pitch.
Formerly we assumed that the newly created surface has the same pitch as the
source surface. This is a assumption that might be invalid (for example in
case of the Surface returned by OSystem::lockScreen.)
2013-08-01 23:57:10 +02:00
Johannes Schickel
adf8cee449 GRAPHICS: Allow arbitrary input sizes for thumbnail scaling.
Instead of a fixed 1/2 or 1/4 scaling we do a two step scaling now:
1) Scale image to width < 160*2 && height < [100,120]*2 with 1/4 or 1/2
   nearest-neighbor.
2) Use a bilinear scaler to scale aspect preserving to 160x[100,120]

This fixes bug #3614568 "GRAPHICS: Odd thumbnail sizes crash".
2013-07-13 01:57:23 +02:00
Johannes Schickel
e9bb9ddcf5 GRAPHICS: Be more robust with broken/unsupported thumbnail headers.
This fixes future issues like bug #3614654:
"ALL: ScummVM 1.5.0 can't read newer saved games".

There are a few behavior changes introduced with this commit:

- checkThumbnailHeader will now also report the presence of
  unsupported/broken (but skippable) headers.

- skipThumbnail will also try to skip the data for broken/unsupported
  thumbnail data.

- loadThumbnail will skip over broken/unsupported thumbnail data but still
  return 0 in this case.
2013-07-12 22:54:53 +02:00
Eugene Sandulenko
49210a803a Merge pull request #331 from sev-/gsoc2012-eventsrecorder
GSoC2012: Event Recorder (reworked)
2013-07-04 04:58:54 -07:00
Matthew Hoops
7445459c9d GRAPHICS: Cleanup the YUV to RGB usage documentation 2013-06-30 17:56:36 -04:00
Eugene Sandulenko
f59512c47e RECORDER: Implement Events Recorder 2013-05-17 00:18:09 +03:00
Matthew Hoops
2d6b66ef41 GRAPHICS: Fix quantization table id check 2013-04-16 12:00:39 -04:00
Einar Johan Trøan Sømåen
0db8a0b3b1 GRAPHICS: Let JPEGs pixelformat state 0 alpha bits. 2013-02-01 01:54:39 +01:00
Johannes Schickel
b4d0a8ba66 JANITORIAL: Enforce "} // End of namespace" with a single space after }. 2013-01-26 19:38:02 +01:00
Matthew Hoops
6ae97cdfbe GRAPHICS: Modify the JFIF version warning
v1.02 images should only differ with the thumbnail from v1.01, and should be handled correctly by our decoder.
2013-01-26 11:56:13 -05:00
Johannes Schickel
2ef500ce81 Merge pull request #256 from lordhoto/thumbnail-pixelformat
GRAPHICS: Serialize PixelFormat for thumbnails and allow 4Bpp surfaces.
2013-01-26 05:37:32 -08:00
Einar Johan Trøan Sømåen
5d4d65d6d9 JANITORIAL: Fix ){ -> ) { 2013-01-24 20:15:13 +01:00
Einar Johan Trøan Sømåen
58777682fe GRAPHICS: Fix leak in PNG-decoder. 2013-01-24 17:39:16 +01:00
Tomas Jakobsson
befa207bfa GRAPHICS: Delete iff.cpp and iff.h since all ILBM and PBM decoding is handled by IFFDecoder now 2013-01-06 20:04:50 +01:00
Tomas Jakobsson
fe2b4b39f7 GRAPHICS: New IFFDecoder that decodes ILBM and PBM images 2013-01-06 20:04:42 +01:00
D G Turner
0b72bd2dea GRAPHICS: Add ability to override outputPitch to ILBM decoder.
This allows loading an image into a buffer of a larger width.

Thanks to Tomaz^ for this patch.
2012-12-26 02:54:18 +00:00
D G Turner
5fecf5bcb5 GRAPHICS: Allow ILBM bitmap loading for images with 6 planes.
Thanks to Tomaz^ for this.
2012-12-26 02:09:33 +00:00
D G Turner
0eb68f6c97 GRAPHICS: Add support for ILBM files containing uncompressed data.
Thanks to Tomaz^ for this patch.
2012-12-26 00:52:30 +00:00
Einar Johan Trøan Sømåen
1ef63578bb GRAPHICS: Mark decoders used by Wintermute as such. 2012-10-23 21:48:27 +02:00
David-John Willis
e7921438cd GRAPHICS: Rename NEON_ASPECT_CORRECTOR to USE_ARM_NEON_ASPECT_CORRECTOR
* This better matches other ARM codepaths.
* Also remove #ifdef OPENPANDORA as moved to configure.
2012-10-21 18:43:07 +01:00
Matthew Hoops
c645f7dc93 GRAPHICS: Make failing to find the PICT header return false from loadStream 2012-10-16 22:15:09 -04:00
Johannes Schickel
a5bce74635 GRAPHICS: Fix compilation of conversion.cpp on motomagx.
Using plain "inline" instead of "FORCEINLINE" allows the compiler to continue
even when it fails to inline crossBlitLogic/crossBlitLogic3BppSource. The
impact of other systems now not inlining the functions anymore is hopefully
small enough to not cause any problems.
2012-10-09 23:32:51 +02:00
Johannes Schickel
c2971374cd Merge pull request #257 from lordhoto/graphics-conversion
Extend crossBlit for abitrary (in-place) conversions and add a in-place conversion to Surface
2012-10-08 14:18:33 -07:00
Johannes Schickel
89abab97e3 JANITORIAL: Remove trailing whitespaces.
Powered by:
git ls-files "*.cpp" "*.h" "*.m" "*.mm" | xargs sed -i -e 's/[ \t]*$//'
2012-09-26 04:17:55 +02:00
Johannes Schickel
dc6b98f64c GRAPHICS: Slight formatting fixes in aspect.cpp. 2012-09-25 15:16:54 +02:00
clone2727
2e4ee0b2d0 Merge pull request #275 from clone2727/pegasus
Pegasus engine (The Journeyman Project: Pegasus Prime)
2012-09-20 13:17:39 -07:00
Matthew Hoops
0677871ea9 GRAPHICS: Update YUV410 conversion docs 2012-09-19 16:00:27 -04:00
Matthew Hoops
09269fce8c GRAPHICS: Implement different luminance ranges
Bink and Theora are now much improved
2012-09-18 16:50:01 -04:00
Matthew Hoops
893a2b37ff GRAPHICS: Rework YUV->RGB code a bit 2012-09-17 19:30:46 -04:00
Bertrand Augereau
4c02e19742 SCALER: Neon code for aspect correction for OpenPandora
It gains 35% on the first function of the profiling on Indy IV
It is now nearly memory-bound (~10%) so it might not be needed to schedule the code better than this
2012-09-17 22:13:34 +02:00
Matthew Hoops
7759f47607 GRAPHICS: Fix BMP palette color count with bpp != 8 2012-09-17 12:35:17 -04:00