mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 11:26:18 -04:00
fix draw-string-xy-scaled cropping (#3041)
fixes #3038 https://github.com/open-goal/jak-project/assets/2515356/5b7a490f-e1fb-4a12-a3d9-b576a2c1d574
This commit is contained in:
parent
e130244271
commit
d149838485
|
@ -1784,25 +1784,21 @@
|
|||
;; Added for PC port
|
||||
(defun draw-string-xy-scaled ((str string) (buf dma-buffer) (x int) (y int) (color font-color) (flags font-flags) (scale float))
|
||||
"Draw a string at the given xy location, with the given scale."
|
||||
(let ((font-ctxt (new 'stack 'font-context *font-default-matrix* x y 0.0 color flags)))
|
||||
(let ((scaled-width (* (-> font-ctxt width) scale))
|
||||
(let* ((font-ctxt (new 'stack 'font-context *font-default-matrix* x y 0.0 color flags))
|
||||
(scaled-width (* (-> font-ctxt width) scale))
|
||||
(scaled-height (* (-> font-ctxt height) scale))
|
||||
(orig-mat-x-scale (-> font-ctxt mat vector 0 x))
|
||||
(orig-mat-y-scale (-> font-ctxt mat vector 1 y))
|
||||
(orig-vid-parms-x-scale (-> *video-parms* relative-x-scale))
|
||||
(orig-vid-parms-y-scale (-> *video-parms* relative-y-scale))
|
||||
)
|
||||
(*! (-> font-ctxt scale) scale)
|
||||
(set! (-> font-ctxt width) scaled-width)
|
||||
(set! (-> font-ctxt height) scaled-height)
|
||||
|
||||
;; scaling globals *font-default-matrix*, *video-parms* (based on print-game-text scaling)
|
||||
(*! (-> *font-default-matrix* vector 0 x) scale)
|
||||
(*! (-> *font-default-matrix* vector 1 y) scale)
|
||||
(*! (-> *video-parms* relative-x-scale) scale)
|
||||
(*! (-> *video-parms* relative-y-scale) scale)
|
||||
(set! (-> *video-parms* relative-x-scale-reciprical) (/ 1.0 (-> *video-parms* relative-x-scale)))
|
||||
(set! (-> *video-parms* relative-y-scale-reciprical) (/ 1.0 scale))
|
||||
(set! (-> *video-parms* relative-y-scale-reciprical) (/ 1.0 (-> *video-parms* relative-y-scale)))
|
||||
|
||||
(draw-string str buf font-ctxt)
|
||||
|
||||
|
@ -1814,6 +1810,5 @@
|
|||
(set! (-> *video-parms* relative-x-scale-reciprical) (/ 1.0 (-> *video-parms* relative-x-scale)))
|
||||
(set! (-> *video-parms* relative-y-scale-reciprical) (/ 1.0 (-> *video-parms* relative-y-scale)))
|
||||
)
|
||||
)
|
||||
(none)
|
||||
)
|
||||
|
|
Loading…
Reference in a new issue