mirror of
https://github.com/open-goal/jak-project
synced 2026-08-20 22:35:07 -04:00
29 lines
1.0 KiB
Common Lisp
29 lines
1.0 KiB
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
|
(require "kernel-defs.gc")
|
|
|
|
;; DECOMP BEGINS
|
|
|
|
;; Initialize the VIF0 state used to unpack collision vertices. Offset mode adds the collision
|
|
;; coordinate bias to each packed XYZ word, while the mask supplies row.w = 1.0 so every unpacked
|
|
;; vertex is a homogeneous point. The trailing VIF nops pad the upload to three quadwords.
|
|
(define *collide-vif0-init*
|
|
(the-as (array uint32)
|
|
(new 'static
|
|
'boxed-array
|
|
:type
|
|
uint32
|
|
#x30000000 ;; STROW
|
|
#x4d000000 ;; row.x: packed collision-coordinate bias
|
|
#x4d000000 ;; row.y
|
|
#x4d000000 ;; row.z
|
|
#x3f800000 ;; row.w: 1.0
|
|
#x5000001 ;; STMOD offset mode
|
|
#x20000000 ;; STMASK
|
|
#x40404040 ;; replace W with row.w in each unpacked vector
|
|
#x1000404 ;; STCYCL: CL = 4, WL = 4
|
|
#x0 ;; VIF nops
|
|
#x0
|
|
#x0)))
|