Commit graph

1028 commits

Author SHA1 Message Date
Sebastian Krzyszkowiak
6f03021d9e
internal: Improve current_gamestate handling
Make sure that it's set to the loading gamestate when appropriate,
and NULL it afterwards.
2022-07-17 19:59:40 +02:00
Sebastian Krzyszkowiak
992d827daf
character: Add ability to specify a spritesheet's hitbox area 2022-07-17 19:36:56 +02:00
Sebastian Krzyszkowiak
99e49129be
gamestates-stub: Fix PreDraw not being included in the stub 2022-07-17 05:07:21 +02:00
Sebastian Krzyszkowiak
721f222774
character: Handle negative offsets in IsOnCharacter 2022-07-17 04:42:35 +02:00
Sebastian Krzyszkowiak
2e6048e14e
character: Only use positive offsets when calculating spritesheet size 2022-07-17 04:39:44 +02:00
Sebastian Krzyszkowiak
d87d4fd306
character: Move spritesheet/frame flipping outside of character transform
This way it doesn't influence child characters.
2022-07-17 04:35:28 +02:00
Sebastian Krzyszkowiak
6a8cdc31e6
character: Move spritesheet offset handling out of transform matrix
This way it doesn't influence child character's positions.
Also, take offset into account when calculating size.
2022-07-17 04:30:22 +02:00
Sebastian Krzyszkowiak
ac2f94f242
maths: Add Distance function 2022-07-17 03:58:58 +02:00
Sebastian Krzyszkowiak
9dd7960584
character: Don't check for frame_count == 1 in AnimateCharacter
If this is needed, there's a bug somewhere that needs to be fixed.
2022-07-17 03:58:58 +02:00
Sebastian Krzyszkowiak
8fe925f30d
character: Fix handling of one frame spritesheets with bidir 2022-07-17 03:58:58 +02:00
Sebastian Krzyszkowiak
51e0a25734
character: Add SetSpritesheetPosition 2022-07-17 03:58:55 +02:00
Sebastian Krzyszkowiak
bf1f58b308
character: Fix a memleak after switching away from streamed spritesheet 2022-07-17 03:58:50 +02:00
Sebastian Krzyszkowiak
5ecea298f0
utils: Add helpers for memory bitmaps 2022-07-17 03:56:41 +02:00
Sebastian Krzyszkowiak
c36050a920
character: AnimateCharacter: Get rid on allocations when streaming 2022-07-17 03:56:30 +02:00
Sebastian Krzyszkowiak
8d614b2c20
DrawGamestates: Don't clear the screen when predraw handler is there
Leave that to the handler.
2022-07-16 18:37:54 +02:00
Sebastian Krzyszkowiak
1e09583c7e
gamestate: Add Gamestate_PreDraw call
Meant to be used to draw into auxiliary bitmaps. Separating it
from Gamestate_Draw allows for better render target scheduling.
2022-07-16 18:35:27 +02:00
Sebastian Krzyszkowiak
b806f1b596
character: GetCharacterTransform: Take parent's pivot point into account 2022-07-15 03:47:46 +02:00
Sebastian Krzyszkowiak
ab208854dd
README: Add Rukavychka 2022-07-15 03:35:14 +02:00
Sebastian Krzyszkowiak
29aefdb55c
params: Add ability to disable clear to color before Gamestate_Draw 2022-07-15 03:35:14 +02:00
Sebastian Krzyszkowiak
e536a8bc4f
character: Add DrawDebugCharacter 2022-07-14 00:26:02 +02:00
Sebastian Krzyszkowiak
ac83b72899
character: GetCharacterTransform: Set pivot point before flipping
BREAKING CHANGE. This way the pivot point stays in the same position
regardless of flips.
2022-07-14 00:25:44 +02:00
Sebastian Krzyszkowiak
ffdebba9ec
character.h: Clean up declarations of long removed functions 2022-07-14 00:20:17 +02:00
Sebastian Krzyszkowiak
2ee41d0899
character: SwitchSpritesheet: Don't switch when already on requested sheet 2022-07-14 00:19:19 +02:00
Sebastian Krzyszkowiak
844a55019a
character: Maintain bidir status in SwitchSpritesheet 2022-07-11 23:21:53 +02:00
Sebastian Krzyszkowiak
a71d0bb0bb
character: Fix frame count handling in SwitchSpritesheet 2022-07-10 00:50:08 +02:00
Sebastian Krzyszkowiak
b034b153d7
clang-format: Don't touch the comments
clang-format 13 started to enforce at least one space after //.
Let's not touch the comments to prevent spurious line changes.
2022-02-04 02:22:35 +01:00
Sebastian Krzyszkowiak
3cc20cdf32
libsuperderpy: Make main event queue public
This allows games to register custom event sources, such as
audio recorder.
2022-02-04 02:21:31 +01:00
Sebastian Krzyszkowiak
e58b95e887
README: Update the list of games 2022-01-02 01:28:46 +01:00
Sebastian Krzyszkowiak
70c81c77ec
cmake: vita: Make sure the generated icon has 8-bit color pallete
pngquant detects when the image has less colors and can save smaller
palletes. Vita strictly requires 8-bit though.
2021-08-06 20:19:49 +02:00
Sebastian Krzyszkowiak
80e0237636
Update Allegro submodule to a 5.2.7-based branch 2021-07-26 04:32:07 +02:00
Sebastian Krzyszkowiak
26f8a187fc
mainloop: Replace ALLEGRO_WITH_XWINDOWS usage with al_get_system_id()
This should make the binaries platform agnostic.
2021-07-26 04:29:26 +02:00
Sebastian Krzyszkowiak
e6ee232759
libsuperderpy.h: Include <psp2/power.h> on Vita
This is used by libsuperderpy itself and bunch of games will want to use
it as well in order to set CPU/GPU clocks, so let's make it simpler.
2021-07-26 01:12:10 +02:00
Sebastian Krzyszkowiak
398527918e
cmake: Automatically generate icon file for Vita as a fallback 2021-07-25 05:43:20 +02:00
Sebastian Krzyszkowiak
0833e66402
cmake: Add targets for easy Vita deploy over network 2021-07-25 01:56:27 +02:00
Sebastian Krzyszkowiak
dcc4f3a2de
cmake: Make Vita's heap size configurable 2021-07-25 00:52:35 +02:00
Sebastian Krzyszkowiak
dd74c2cc2d
cmake: Clean up vita data dir before copying 2021-07-25 00:51:50 +02:00
Sebastian Krzyszkowiak
6486103517
mainloop: Switch Vita's CPU and bus to max frequency during loading 2021-07-24 04:08:40 +02:00
Sebastian Krzyszkowiak
b84e0af41f
cmake: VPK packaging for PS Vita with VitaSDK 2021-07-24 03:58:46 +02:00
Sebastian Krzyszkowiak
8a9e838c9f
libsuperderpy_init: Make "connected joysticks" log better when there's none 2021-07-24 03:25:11 +02:00
Sebastian Krzyszkowiak
1ed4c73025
libsuperderpy_init: Print the app name in logs 2021-07-24 03:24:15 +02:00
Sebastian Krzyszkowiak
61797d2c0d
libsuperderpy_init: Fix Allegro version handling
Allegro release number equals 0 for unreleased builds, 1 for first release
(x.x.x.0), 2 for second release (x.x.x.1) etc.
2021-07-24 02:21:26 +02:00
Sebastian Krzyszkowiak
35bd8aa2a2
Style fix 2021-07-24 02:20:01 +02:00
Sebastian Krzyszkowiak
18885f62e5
shader: Don't prepend GLSL #version directive on PS Vita
Vita uses Cg shaders.
2021-07-24 00:56:46 +02:00
Sebastian Krzyszkowiak
49795745cf
vita: Set the required heap sizes 2021-07-22 20:59:23 +02:00
Sebastian Krzyszkowiak
f20a097b59
FindDataFilePath: Add overlay directory for PS Vita assets 2021-07-22 16:51:25 +02:00
Sebastian Krzyszkowiak
e74d01f671
cmake: Don't set POSITION_INDEPENDENT_CODE on PS Vita
VitaSDK linker does not support PIC.
2021-07-22 16:46:06 +02:00
Sebastian Krzyszkowiak
30022f1c5c
cmake: Use LIBSUPERDERPY_SINGLE_THREAD on PS Vita
Having the loading thread appears to cause some corruption there.
2021-07-22 16:45:12 +02:00
Sebastian Krzyszkowiak
f9176ce1f5
cmake: Disable sanitizers on PS Vita 2021-07-22 16:08:07 +02:00
Sebastian Krzyszkowiak
1ec6ce7550
cmake: Don't use stack protector on PS Vita 2021-07-22 16:04:32 +02:00
Sebastian Krzyszkowiak
b0aeadbf6b
cmake: Define LIBSUPERDERPY_NO_RESTART on PS Vita 2021-07-21 01:45:49 +02:00