Commit Graph

664 Commits

Author SHA1 Message Date
SuperDude88 8ae35dc9ea Add Missing BE
- Checking the values in the debugger reminded me that these need to be swapped
2026-05-21 00:21:34 -04:00
SuperDude88 9abb6bafd1 MAT4 Loading
- Properly load all MAT4 data

New fields/inlines/structs are based on what HD does. Still looking for ways to clean things up, particularly getMatInitData.
2026-05-20 23:47:24 -04:00
MelonSpeedruns 81c0c6f4d3 Merge remote-tracking branch 'origin/main' into tphd
# Conflicts:
#	extern/aurora
2026-05-19 15:49:56 -04:00
Ash 2da6590657 feat: FPS Limiter (#1446)
* Add interpolation frame rate cap

* wip: reworked framelimiter

Based on my testing this is a bit more stable in frametimes.

* wip: efficiency improvement + windows build fix

Significantly improve efficiency by using a hybrid approach.

* wip: UI changes

* wip: end frame AFTER limiting

* wip: remove unused include

* wip: minor ui code change

Makes it easier to remove/add presets

* Simplify Limiter UI

- Change enableFrameInterpolation to an enum with off/capped/unlimited values
- Simplify the UI to use 2 settings (unlock framerate + a max value entry)

* wip: slight limiter simplification

* wip: implement review suggestions

* wip: fix syntax error

* wip: revert enum order + replace old checks

* Fix compile error

---------

Co-authored-by: SailorSnoW <sailorsnow@pm.me>
Co-authored-by: Loïs <49660929+SailorSnoW@users.noreply.github.com>
Co-authored-by: SuperDude88 <82904174+SuperDude88@users.noreply.github.com>
Co-authored-by: Luke Street <luke@street.dev>
2026-05-17 20:11:32 -06:00
TakaRikka ec281a475f Merge pull request #1573 from TwilitRealm/j2dindtexmtx-be
Endian-swap indirect texture matrix in J2D data
2026-05-17 18:23:15 -07:00
doop 2be2615e61 Endian-swap indirect texture matrix in J2D data
Fixes copy/delete effects on the file screen.
2026-05-18 00:46:45 +00:00
PJB3005 629cd2f9d3 Missed these in JASHeapCtrl.h 2026-05-18 02:16:43 +02:00
PJB3005 831a34ac8f Right, the definition needs the specifier too 2026-05-18 02:15:12 +02:00
PJB3005 05edbec827 Tag operator new overloads with noexcept
According to the C++ standard, regular operator new must always return a valid pointer, and allocation failure should throw an exception.

The original game did not use exceptions, and instead had its operator new return null on alloc failure.

Clang and GCC seem to be enforcing the standard here, and this is causing crashes on non-Windows platforms like https://sentry.twilitrealm.dev/organizations/twilitrealm/issues/952/, where a JAISe allocation failure (custom pooled operator new overload) crashes the game when it should be handled gracefully. MSVC seems to not make use of this opportunity, meaning the code works as intended.

Tagging the operators with noexcept seems to satisfy GCC, but I admit cppreference is very light on details here.
2026-05-18 02:06:38 +02:00
MelonSpeedruns 89b8debe51 Merge remote-tracking branch 'origin/main' into tphd
# Conflicts:
#	CMakeLists.txt
#	extern/aurora
#	src/dusk/ui/prelaunch.cpp
#	src/dusk/ui/settings.cpp
2026-05-14 09:15:35 -04:00
gymnast86 ef43b94370 Add options for binding custom buttons to specific actions (#1141)
* custom action framework and first person custom action

* add bind for midna call

* custom binding for opening dusklight menu

* turbo speed button action

* text descriptions

* fix not stopping default GC controller menu combo

* more explanation text

* block bind actions when in the dusklight menu
2026-05-12 19:36:07 -06:00
Lurs aa23ae244f Lurs' squashed commits
* first tphd wip

* fix CMakeLists.txt after rebase

* fix mipmapping (I hope) thanks to decaf-emu. Skipped a few textures in favor of GC assets and added new HD asset file formats

* added third hook into dusk for second JKRMemArchive constructor (e.g. for sign textures). skip texture load for textures with imageoffset = 0 to get STG.arc loaded instead. And small refactorings/rebasings. added a few parameters in logging
2026-05-08 19:43:48 -04:00
doop d0f8ea56f9 Interpolate more things (#699)
* Interpolate trim height

* Interpolate (some) fades
2026-05-08 11:50:44 -06:00
qwertyquerty 39d43a8d8f Keyboard mouse binding controls (#682)
* kbm controls

* submodule

* files.cmake

* a

* Fixes

* include <cstring> in J3DStruct.h

---------

Co-authored-by: Luke Street <luke@street.dev>
2026-05-06 22:07:28 -06:00
Luke Street 230868af3c Add autosave spinner & make RmlUi respect 4:3
Resolves #627
2026-05-05 23:18:11 -06:00
Jasper St. Pierre 1ee0f862e1 map highlight fix 2026-05-02 11:45:01 -07:00
Jasper St. Pierre 6b327c9f61 disable jpa interp for now
closes #618
2026-05-02 11:44:21 -07:00
TakaRikka 1c5686f71b Merge pull request #616 from TwilitRealm/HRTF
Emulate Surround option
2026-05-01 22:51:25 -07:00
TakaRikka b9e0f2b9ca Merge pull request #611 from TwilitRealm/26-05-01-heap-crash-log
Improve heap crash logging
2026-05-01 22:19:33 -07:00
madeline 93c8bcc210 hrtf 2026-05-01 13:04:08 -07:00
Jasper St. Pierre 2c987b0211 build fix 2026-05-01 00:17:51 -07:00
Jasper St. Pierre 3d860ad454 jpa interp start 2026-05-01 00:12:26 -07:00
PJB3005 48b98a5432 Make JKRExpHeap OOM logging more verbose 2026-05-01 08:50:55 +02:00
Jasper St. Pierre ce9a5c06d5 heap name 2026-04-30 22:19:19 -07:00
madeline 06e6b0d47e fix safety bit on interp fixes #507 2026-04-23 03:58:35 -07:00
madeline b06c1911c6 Merge branch 'main' of https://github.com/TakaRikka/dusk 2026-04-22 22:33:59 -07:00
madeline bfd8b9f453 make state share loads basically instant 2026-04-22 22:27:14 -07:00
Luke Street 5fcffa0b4f Use SDL_GetTicksNS instead of std::chrono 2026-04-22 17:18:18 -06:00
Luke Street 30a99c22f1 Reorganize ImGui menus (#456)
* Reorganize ImGui menus

* Fix crash_reporting.cpp

* Update aurora
2026-04-20 20:45:16 -06:00
Luke Street 8b9f09bda5 Frame interp: Fix cloud shadow flickering (#446) 2026-04-19 21:31:34 -06:00
TakaRikka 1cf14f176c Merge pull request #438 from TwilitRealm/frame-interp-simplify
Frame interp simplify
2026-04-19 14:58:38 -07:00
Jasper St. Pierre 2f84f0eaa4 j3d small cleanup 2026-04-19 14:16:38 -07:00
Jasper St. Pierre 53c005c4f1 jutfader doc 2026-04-19 12:48:50 -07:00
Jasper St. Pierre bb9a88d7dc frame interp camera cleanups 2026-04-19 02:25:00 -07:00
Jasper St. Pierre 8d3cb51157 frame interp simplify 2026-04-18 23:26:28 -07:00
TakaRikka 7fff3b5ae0 Merge pull request #430 from TwilitRealm/fix/JAISeqMgr
Fix JAISeqMgr
2026-04-18 22:57:57 -07:00
Jasper St. Pierre b3f8fecfe4 water interpolation fix 2026-04-18 22:17:35 -07:00
Pheenoh fcfcb35929 fix JAISeqMgr beginStartSeq_ to check free memory before allocation 2026-04-18 19:53:40 -06:00
Luke Street 2ec6f65572 Merge remote-tracking branch 'refs/remotes/origin/main' into unhackify-widescreen
# Conflicts:
#	src/m_Do/m_Do_main.cpp
2026-04-17 23:12:58 -06:00
Luke Street 5c20f527ac Widescreen rework & IR scaling 2026-04-17 23:11:43 -06:00
Irastris 59d2014fb9 Frame Interp: UI Pacing Simplification 2026-04-17 23:24:47 -04:00
Lurs edea6a1418 fix #260 and potentially more 2026-04-17 16:12:53 +02:00
Irastris 0508acaa79 Frame interp: Dreamworks' Turbo (2013) 2026-04-14 21:59:24 -04:00
CraftyBoss ec091ac3af change ANDROID define to TARGET_ANDROID 2026-04-14 03:18:21 -07:00
CraftyBoss 35650784c3 Merge branch 'main' into android-building 2026-04-14 03:17:07 -07:00
CraftyBoss 86c1e21ac1 fix compilation error
GlyphTextures no longer exists
2026-04-14 03:07:47 -07:00
CraftyBoss a2f8fffc8d Merge branch 'main' into android-building 2026-04-14 02:48:24 -07:00
TakaRikka 38cfaae940 Merge pull request #360 from TwilitRealm/26-04-13-font-opts
Text Rendering optimizations
2026-04-14 02:38:59 -07:00
CraftyBoss b7f3dbb8b3 Merge remote-tracking branch 'origin/main' into android-building
# Conflicts:
#	CMakeLists.txt
2026-04-14 01:03:50 -07:00
Irastris d32dc7481e Frame interp: Initial presentation sync implementation 2026-04-14 02:41:11 -04:00