Shokunin
5ffd57d7f3
Flip-aware frame-interpolation source
...
psx_mod_set_frame_interpolation_source(PSX_MOD_FRAME_SOURCE_FLIP) makes the
OpenGL presenter rotate its blend history only when the guest really flips
(the displayed VRAM origin moves or the displayed rect is redrawn) and spread
one crossfade over the measured flip period. A game that flips every second
VBlank (R4 races) used to blend for one VBlank and hold for the next; it now
blends across its whole frame.
VBLANK stays the default. reset_mod_owned_presentation() puts it back at
every session start (first boot and the lobby rematch), next to the blend
mode, so titles that never call the setter keep today's code path and a
netplay session never inherits it. begin() is begin_phase(0, 1) and stays
bit-identical (test). gl_interp reports the source, the flip period,
captures and duplicate VBlanks.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-28 21:02:43 -07:00
..
2026-06-12 04:25:56 -07:00
2026-08-05 18:16:16 -07:00
2026-08-05 19:37:45 -07:00
2026-05-29 21:14:30 -07:00
2026-07-29 03:18:10 -04:00
2026-07-27 16:36:48 -07:00
2026-09-13 16:50:26 -07:00
2026-05-29 21:14:30 -07:00
2026-05-29 21:14:30 -07:00
2026-09-24 15:42:52 -07:00
2026-07-15 22:22:38 -07:00
2026-06-12 04:25:56 -07:00
2026-07-01 09:28:50 -07:00
2026-09-10 17:23:03 -07:00
2026-06-10 12:17:10 -07:00
2026-06-09 12:24:40 -07:00
2026-09-24 14:38:03 -07:00
2026-07-14 11:08:02 -07:00
2026-09-03 07:39:07 -07:00
2026-08-01 02:15:34 -07:00
2026-06-29 21:53:27 -07:00
2026-09-26 06:31:33 -07:00
2026-09-14 17:26:33 +03:00
2026-08-04 19:32:16 -07:00
2026-08-31 09:15:39 +03:00
2026-09-03 01:20:43 +03:00
2026-09-03 16:47:19 -07:00
2026-09-03 07:39:07 -07:00
2026-08-08 22:50:17 -04:00
2026-09-28 21:02:43 -07:00
2026-08-30 14:20:09 -04:00
2026-09-08 18:09:52 -07:00
2026-06-18 18:47:27 -07:00
2026-09-28 21:02:43 -07:00
2026-07-14 18:35:07 -07:00
2026-09-07 12:30:30 -07:00
2026-09-07 12:30:30 -07:00
2026-09-06 14:53:35 +01:00
2026-08-06 00:53:03 -04:00
2026-09-26 15:38:21 -07:00
2026-09-14 17:26:31 +03:00
2026-09-14 17:26:31 +03:00
2026-08-25 01:50:55 -07:00
2026-09-03 21:00:59 -04:00
2026-08-14 15:22:29 -07:00
2026-08-07 16:42:43 -04:00
2026-09-26 15:38:21 -07:00
2026-09-24 14:38:03 -07:00
2026-09-11 16:38:34 -04:00
2026-06-18 14:56:12 -07:00
2026-09-02 14:11:25 -07:00
2026-08-03 05:26:37 -04:00
2026-07-14 22:44:31 -07:00
2026-07-19 13:40:03 -07:00
2026-09-26 08:03:39 -07:00
2026-09-05 21:18:20 -04:00
2026-09-26 08:03:39 -07:00
2026-09-26 13:58:16 -07:00
2026-09-28 21:02:43 -07:00
2026-09-26 16:41:47 -07:00
2026-09-28 16:26:33 -07:00
2026-09-13 21:06:58 -07:00
2026-08-08 12:29:59 -04:00
2026-09-24 22:06:27 -04:00
2026-09-24 22:06:27 -04:00
2026-09-24 22:06:27 -04:00
2026-08-11 23:52:31 -04:00
2026-08-07 18:11:35 -04:00
2026-09-19 16:23:00 -07:00
2026-07-15 22:22:38 -07:00
2026-07-20 00:43:41 -07:00
2026-09-11 22:28:03 -07:00
2026-09-11 23:39:46 -07:00
2026-07-19 16:19:57 -07:00
2026-07-19 12:11:56 -07:00
2026-09-03 07:39:07 -07:00
2026-09-03 07:39:07 -07:00
2026-08-27 20:44:13 -07:00
2026-07-10 15:23:44 -07:00
2026-08-03 05:26:37 -04:00
2026-08-27 14:39:54 -04:00
2026-09-11 16:38:34 -04:00
2026-09-11 16:38:34 -04:00
2026-09-11 01:26:22 +03:00
2026-08-08 23:02:52 -04:00
2026-09-26 08:03:57 -07:00
2026-09-10 17:23:03 -07:00
2026-05-29 18:53:22 -07:00
2026-07-21 21:38:05 -07:00
2026-07-19 14:54:30 -07:00
2026-07-31 17:14:35 -04:00
2026-08-09 19:07:55 -07:00
2026-09-12 19:39:09 -04:00
2026-09-26 08:03:57 -07:00
2026-09-24 22:06:27 -04:00
2026-09-24 22:06:27 -04:00
2026-09-06 03:31:38 -04:00
2026-08-28 17:33:52 -04:00
2026-07-21 21:37:57 -07:00
2026-08-12 11:12:24 -07:00
2026-07-31 17:14:35 -04:00
2026-07-29 03:18:10 -04:00
2026-08-15 12:19:16 +03:00
2026-07-31 17:14:35 -04:00
2026-07-29 03:18:10 -04:00
2026-07-29 03:18:10 -04:00
2026-08-25 01:54:42 -07:00
2026-09-26 15:38:21 -07:00
2026-08-29 11:04:30 -04:00
2026-08-29 21:50:00 -04:00
2026-09-05 21:34:14 +03:00
2026-09-05 21:47:40 +03:00
2026-09-13 16:33:46 -07:00
2026-07-14 18:56:51 -07:00
2026-09-03 07:39:07 -07:00
2026-09-01 15:54:47 -04:00
2026-09-05 12:17:16 -04:00
2026-07-06 15:19:08 -07:00
2026-06-26 15:04:25 -07:00
2026-09-24 14:42:12 -07:00
2026-07-29 03:18:10 -04:00
2026-09-19 16:19:23 -07:00
2026-09-19 16:19:23 -07:00
2026-07-15 22:22:38 -07:00
2026-09-08 12:52:09 -07:00
2026-09-03 01:20:41 +03:00
2026-09-26 06:31:33 -07:00
2026-09-07 22:40:23 -07:00
2026-09-13 19:27:03 -07:00
2026-09-19 16:19:23 -07:00
2026-08-27 21:17:20 -07:00