mirror of
https://github.com/open-goal/jak-project
synced 2026-08-19 06:02:15 -04:00
572efbf9cb
This PR adds a frame rate option to the graphics menu for some of the most common refresh rates. Jak 2 has much better support for variable frame rates than Jak 1 out of the box, but there are still some edge cases, most prominently the fact that sprites are still limited to the 300 tick system, which is most noticeable on glow sprites. For this, I abused the glow boost debug setting to scale the glow based on the frame rate. While testing, I noticed two other cases that I have also patched, there's likely to be many more that are yet to be found, but aside from that, the game is playable as normal. https://github.com/open-goal/jak-project/assets/6624576/ad4db24f-cd27-4237-a155-0db7008160f3
55 lines
1.5 KiB
Common Lisp
55 lines
1.5 KiB
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
#|
|
|
|
|
Additional PC port specific file for overriding/expanding the progress menu
|
|
This gives us more freedom to write code how we want.
|
|
|
|
|#
|
|
|
|
|
|
(set! (-> *main-options-debug* options 9) (new 'static 'menu-main-menu-option :name (text-id progress-music-player) :scale #t :next-state 'music-player))
|
|
|
|
|
|
(define *graphic-options-pc*
|
|
(new 'static 'menu-option-list
|
|
:y-center 198
|
|
:y-space 34
|
|
:scale 0.82
|
|
:options (new 'static 'boxed-array :type menu-option
|
|
(new 'static 'menu-display-mode-option :name (text-id progress-display-mode))
|
|
(new 'static 'menu-aspect-ratio-pc-option :name (text-id progress-aspect-ratio))
|
|
(new 'static 'menu-frame-rate-option :name (text-id progress-frame-rate))
|
|
(new 'static 'menu-on-off-vsync-option :name (text-id progress-vsync))
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *frame-rate-options* (new 'static 'boxed-array :type int16 30 50 60 75 120 144 165 240))
|
|
|
|
(define *aspect-ratio-custom-options*
|
|
(new 'static 'menu-option-list
|
|
:y-center 198
|
|
:y-space 34
|
|
:scale 0.82
|
|
:options (new 'static 'boxed-array :type menu-option
|
|
(new 'static 'menu-aspect-ratio-custom-option :name (text-id progress-aspect-ratio-custom-title))
|
|
)
|
|
)
|
|
)
|
|
|
|
|
|
(define *music-player-options*
|
|
(new 'static 'menu-option-list
|
|
:y-center 198
|
|
:y-space 34
|
|
:scale 0.82
|
|
:options (new 'static 'boxed-array :type menu-option
|
|
(new 'static 'menu-music-player-option :name (text-id progress-music-player))
|
|
)
|
|
)
|
|
)
|
|
|
|
|