Cameron Cawley
953772ba99
COMMON: Rename memset2/4/8 to memset16/32/64
2023-11-06 13:40:38 +02:00
Cameron Cawley
ac2d99ee9b
COMMON: Add variants of memset for 16-bit, 32-bit and 64-bit values
2023-11-06 13:40:38 +02:00
Eugene Sandulenko
eae2fbeb4f
TESTS: Remove tests for transparent_surface.h
2023-10-29 01:41:29 +02:00
Matthew Jimenez
757e8343b7
UTLIMA8: Found test case to support the partial in front rule.
...
The rules that temporarily replaced this rule appear to only work well for x & y flats
2023-10-04 15:36:12 -05:00
Matthew Jimenez
4c1f8dfc59
ULTIMA8: Check x & y flat rules before z flat rules.
2023-10-04 15:36:12 -05:00
Matthew Jimenez
4d1ec7ff2b
ULTIMA8: Undo sort item bounds inclusive of right screenspace edge.
...
This caused too many paint dependency cycles in current code.
2023-10-03 23:09:48 -05:00
Matthew Jimenez
f19a339c84
ULTIMA8: Fix sort item bounds to be inclusive of right and botton screenspace edges.
...
This fixes a flickering render issue where bounds did not properly check overlaps previously
2023-10-02 18:47:32 -05:00
Matthew Jimenez
478f821b7f
ULTIMA8: Improve tolerance check when comparing Z in sort item.
...
Updated unit test with a better test case & solves a paint dependecy cycle.
2023-10-01 21:30:26 -05:00
Matthew Jimenez
c089416b38
ULTIMA8: Fix paint order of tapestry items to match original game.
...
Switching to screenspace checks may change order for items we have not tested, but may also be correct now.
2023-10-01 15:00:21 -05:00
Matthew Jimenez
ad8fee8fde
ULTIMA8: Add unit test for sort item overlaps
2023-09-30 15:59:28 -05:00
Matthew Jimenez
8ad443bfb7
ULTIMA8: Update sort item tests to use multiples of footpad calculations.
2023-09-30 13:45:21 -05:00
Matthew Jimenez
0d0555bd14
ULTIMA8: Add tolerance when comparing Z in sort item.
...
X & Y flats are often offset below the top of the floor they sit on but by less than the multiplier used when calculating the footpad
2023-09-29 23:02:03 -05:00
Matthew Jimenez
b21876bd9d
ULTIMA8: Move sort item calculations to setBoxBounds
2023-09-29 18:11:42 -05:00
Matthew Jimenez
3bd21ab50c
ULTIMA8: Add more sort item tests and fixes for flat items
2023-09-29 17:27:23 -05:00
Matthew Jimenez
fa491cb998
ULTIMA8: Update sort item test to use actual position instead of reduced values.
2023-09-29 17:27:22 -05:00
Matthew Jimenez
88656e757c
ULTIMA8: Adjust flat item rules based on more examples at map 37
2023-09-27 21:33:40 -05:00
Matthew Jimenez
cd1fb3d80b
ULTIMA8: Enable y-flat sort test with a better test and an exception for non-fixed items
2023-09-27 21:33:40 -05:00
Matthew Jimenez
24c75479d7
ULTIMA8: Revert screenspace calculation changes.
...
Precision loss from integer division is intention and switch back to calculation prior to 7fe6e2ec
2023-09-27 21:33:40 -05:00
Matthew Jimenez
1e7bad99a9
ULTIMA8: Add sort item test for inconsistent sceenspace position.
...
The original game may have been more lossy when translating worldspace position to screenspace.
2023-09-26 22:39:14 -05:00
Matthew Jimenez
e3ac8447d1
ULTIMA8: Fix incorrect assignment in sort item test
2023-09-26 22:39:13 -05:00
Matthew Jimenez
888f1c6154
ULTIMA8: Fix tests for sort item to use bounds that properly overlap
2023-09-22 23:57:36 -05:00
Matthew Jimenez
e7a8def252
ULTIMA8: Fix paint order issue for flat objects in center of wall.
...
Misplaced item was not visible in original game but caused a paint dependency loop by our ruleset.
2023-09-22 16:07:44 -05:00
Matthew Jimenez
5677fcab43
ULTIMA8: Fix roof draws first rule & clarify rule on different test
...
Additional roof test documents altered behavior from orginal game & leaves opportunity to match orginal in the future if desired
2023-09-20 18:26:02 -05:00
Matthew Jimenez
a3833a98b9
ULTIMA8: Fix box isEmpty and add extend method.
...
Extend might be used to improve occlusion in item sorter by switching floor tiles together.
2023-09-18 18:47:21 -05:00
Eugene Sandulenko
3bce81ac70
TESTS: Added test for String::chop() method
2023-09-17 00:56:28 +02:00
Matthew Jimenez
f6acb92dac
ULTIMA8: Fix paint order issue for flat objects slightly inside walls.
...
This might need to be altered to check against center points.
2023-09-16 15:39:14 -05:00
Matthew Jimenez
182e82f7f2
ULTIMA8: Fix paint order issue in catacombs.
...
Cobweb is a non-solid transparent flat object that should draw after objects it intersects
2023-09-16 11:44:18 -05:00
Le Philousophe
3b4e8a4eea
TEST: Add CxxTest ValueTraits for String
...
This allows pretty printing them when there is an assertion failure
2023-09-02 11:42:29 +02:00
Le Philousophe
154fab3952
TEST: Silence logs by default
...
Else tests on INI parser spam with expected warnings.
2023-09-02 11:42:29 +02:00
Le Philousophe
f41cf652eb
TEST: Fix warnings
2023-08-30 13:41:34 +02:00
Le Philousophe
4a8cfd6d0b
TEST: Fix missing include
2023-08-30 13:41:26 +02:00
Le Philousophe
509043aa92
TEST: Fix warning about signedness
2023-08-30 13:41:19 +02:00
Le Philousophe
cc2c04a8cd
TEST: Don't build slow blending tests by default
2023-08-16 13:06:03 +02:00
Le Philousophe
c48512b1f2
TEST: Check supported instruction set before running tests
2023-08-16 13:06:03 +02:00
Le Philousophe
e801c1b437
TEST: Fix test when only blending tests are built
...
When all tests are built, encoding sets up the backend.
2023-08-16 13:06:03 +02:00
Le Philousophe
7cfa940a7a
TEST: JANITORIAL: Fix indentation style
2023-08-16 13:06:03 +02:00
Cameron Cawley
5d58b7768c
BACKENDS: Remove leftover code
2023-08-14 00:40:42 +02: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
72c01fcdbe
TEST: Remove unnessesary functions in blending.h
2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
91b9c112b5
TEST: Put bitmap saving under ifdef in blending.h
2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
df073eeed7
TEST: Added copyright header to blendBlitFrom test
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
ad0c823f2f
GRAPHICS: TransparentSurface scales in place
...
TransparentSurface now scales in place instead of making a copy. This
is much faster than before.
Also BlendBlit::blit now takes a scale offset parameter to help with
vary large images being cropped, otherwise people can leave it to 0.
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
e5bc2d696d
TEST: Test for AVX2 BlendBlit
2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
e4c984cd3a
BUILD: Configure flags for SIMD extensions
...
--enable-ext-neon
--enable-ext-sse2
--enable-ext-avx2
2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
843d835641
TEST: Change blendFrom test
2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
4f9739685a
TEST: blendBlit test will now also test SSE2
2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
c2c7ca0275
GRAPHICS: BlendBlit NEON blending modes coded
2023-08-13 00:22:10 +02:00