Commit graph

64 commits

Author SHA1 Message Date
Paul Gilbert
f5f37f4446 GRAPHICS: Make ManagedSurface fillRect rect const 2025-03-09 16:14:45 -07:00
Cameron Cawley
9d871d2ff6 GRAPHICS: Removed deprecated ManagedSurface constructors 2025-03-03 18:13:02 +02:00
Le Philousophe
58ade5240e GRAPHICS: Add missing drawing primitives
This allows to draw polygon and ellipses directly on the surfaces.
2025-01-24 12:11:17 +01:00
Cameron Cawley
e03b609cdc GRAPHICS: Remove masks from ManagedSurface::transBlitFrom 2025-01-08 19:29:46 +02:00
Cameron Cawley
027c9bddca GRAPHICS: Add drawRoundRect to Graphics::Surface 2025-01-06 01:35:05 +02:00
Cameron Cawley
05104adbf3 GRAPHICS: Add simplified mask blitting routines to ManagedSurface 2025-01-05 16:38:34 +02:00
Cameron Cawley
645f5d2e36 GRAPHICS: Remove overrideColor from ManagedSurface::transBlitFrom 2024-12-30 10:59:16 +02:00
Cameron Cawley
bdd164e551 GRAPHICS: Add missing addDirtyRect calls to ManagedSurface wrappers 2024-07-31 02:50:43 +03:00
Cameron Cawley
3676b39194 GRAPHICS: Deprecate the ManagedSurface copy constructor
Also reverted the changes from commit 81f566a.
2024-07-04 22:54:21 +03:00
Cameron Cawley
4bbcf77f70 GRAPHICS: Add move constructors to ManagedSurface 2024-07-04 22:54:21 +03:00
Cameron Cawley
ff530edcb1 GRAPHICS: Deprecate ManagedSurface methods that implicitly copy pixel data 2024-07-02 13:31:18 +01:00
Cameron Cawley
224f5bb9d3 GRAPHICS: Add scaling and conversion wrappers to ManagedSurface 2024-07-02 13:31:18 +01:00
Cameron Cawley
3da558fc96 GRAPHICS: Add a common function for detecting transparent surfaces 2024-06-19 02:36:17 +02:00
Cameron Cawley
49ca5c3a0e GRAPHICS: Add simplified blitting routines to ManagedSurface 2024-06-19 02:36:17 +02:00
Matthew Jimenez
83aa8dc291 GRAPHICS: Remove palette start from surface convertToInPlace.
The palette start value was always zero, and was not properly multiplied by three when used in the function
2024-03-31 23:16:59 +03:00
Matthew Jimenez
771dc751db GRAPHICS: Switch ManagedSurface to use Palette class 2024-03-18 21:06:04 +02:00
Cameron Cawley
327e0c4f1e GRAPHICS: Add palette start and size parameters to Surface::convertToInPlace() 2023-11-12 18:36:08 +01:00
Wyatt Radkiewicz
4fbde03866 ALL: blendBlitFrom exaclty matched TS::blit 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
0961399727 ALL: blendBlitFrom prototype now matches TS::blit 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
a64c7ea3b7 GRAPHICS: New blendBlitFrom overload 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
41a942c5ce ALL: Renamed TS_ARGB to MS_ARGB 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
df2367c3c9 GRAPHICS: Change blendBlitFrom's format function 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
a18332ab36 JANITORIAL: Touch up BlendBlit comments 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
e7cd583e9f GRAPHICS: Refactor blendBlitUnfiltered
ALL: Fixed last commit not compiling :(

GRAPHICS: Refactoring BlendBlit for SIMD
2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
d36e603864 GRAPHICS: ManagedSurface::blendBlitFrom started on 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
d03727885a GRAPHICS: Created blendBlitFrom in ManagedSurface 2023-08-13 00:22:10 +02:00
Walter Agazzi
421295bdc6 GRAPHICS: Change pitch from int16 to int32
This is required for games allocating very big surfaces
(e.g. 9000x300 in Chronicle of Innsmouth - Mountains of Madness)
2023-05-20 23:23:58 +02:00
Thierry Crozat
4b61397acd GRAPHICS: Support bliting CLUT8 Surface in non-CLUT8 ManagedSurface
The inner blitting code already handled that case, but we needed to be able to
pass the Surface palette to that inner code.
2023-04-25 21:44:51 +01:00
Cameron Cawley
ee35a3d268 GRAPHICS: Use standard palettes in ManagedSurface 2023-03-24 21:32:48 +01:00
Le Philousophe
bd8c8802b7 GRAPHICS: Make rawBlitFrom take a ManagedSurface
This allows to remove the palette argument and removes the need for
getPalette
2023-02-23 19:10:45 +01:00
Cameron Cawley
61a55bd415 GRAPHICS: Remove or deprecate RGBA palette functions in ManagedSurface 2023-02-08 00:09:39 +01:00
Cameron Cawley
8f85390b4c GRAPHICS: Add hasPalette and grabPalette to ManagedSurface 2023-02-08 00:09:39 +01:00
Pragyansh Chaturvedi
e439beece7 GRAPHICS: Bump color parameter to uint32 type for functions using it 2022-09-09 02:21:47 +02:00
Cameron Cawley
07498687bd
GRAPHICS: Add Surface::copyRectToSurfaceWithKey() 2022-06-05 17:28:28 +03:00
Cameron Cawley
085130c6da GRAPHICS: Move ManagedSurface::clip() to the Surface class 2022-06-03 16:00:46 +01:00
Paul Gilbert
276e83ffee CHEWY: Fix drawing boxes and lines 2022-03-03 18:35:11 -08:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Paul Gilbert
baccbedf50 GRAPHICS: Changed surface classes sizes from uint16 to int16 2021-07-04 18:24:27 -07:00
Mathias Parnaudeau
deefffd983 GRAPHICS: Fix leak in managed surface
In the case of the ManagedSurface constructor from a Surface object,
_disposeAfterUse is not initialized. But more, copyFrom() sets
_disposeAfterUse to YES after allocation of buffer. And then,
after the call to copyFrom, _disposeAfterUse was set to NO, what
made the pixels buffer not freed.
2021-05-12 14:10:26 +03:00
Eugene Sandulenko
6217cf8a37 GRAPHICS: Added ManagedSurface constructor from Surface 2021-04-11 21:21:44 +02:00
Eugene Sandulenko
9894efd574 GRAPHICS: Added copyFrom(Surface) to ManagerSurface 2021-04-11 21:21:44 +02:00
Cameron Cawley
099b593943 GRAPHICS: Add functions for getting and setting pixels in a surface 2021-03-28 09:50:15 -03:00
Paul Gilbert
4142f7b7f8 GRAPHICS: Allow TTFFont to handle ManagedSurfaces with transparent pixels 2021-02-26 17:58:19 -08:00
Thierry Crozat
f12813c630 GRAPHICS: Support having transparent ManagedSurface 2021-02-22 22:59:07 +00:00
Paul Gilbert
c53fb72922 GRAPHICS: Better 32-bit surface handling in ManagedSurface
Fixes several issues dealing with 32-bit surfaces, such as
- transBlitFrom between 32-bit surfaces
- 32-bit surfaces where the alpha channel is explicitly turned off
- Alpha blending when dest pixels are the transparent color
- Specifying colors to fill, line routines without alpha
2021-02-20 14:37:29 -08:00
Paul Gilbert
420cee48a5 GRAPHICS: Allow ManagedSurface blitting to ignore transparency 2021-02-06 16:37:31 -08:00
Martin Gerhardy
b02ae40c9c GRAPHICS: allow scaling for opaque surfaces 2021-01-17 21:54:11 +01:00
Bartosz Gentkowski
529b64d8cd DOXYGEN: Review of high prio files from graphics
Editing doxygen comments in:

- cursorman.h
- font.h
- managed_surface.h
- pixelformat.h
- surface.h
2020-12-01 23:24:37 +00:00
Cameron Cawley
731596b5f7 GRAPHICS: Support converting between different palettes using ManagedSurface 2020-07-25 13:29:09 +02:00
Cameron Cawley
44e948a283 GRAPHICS: Support full alpha when blitting using masks in ManagedSurface 2020-07-25 13:29:09 +02:00