jak-project/goal_src/examples/debug-sprite.gc
water111 f0ceea8b2e
[sparticle] 2d hud particles (#849)
* wip, taking a break to work on asm stuff first

* the goal code for sparticle

* mips2c the first sparticle asm function

* temp

* particle processing no longer crashing

* temp

* working texture cache for vi1 and hud textures

* sprites

* cleanup 1

* temp

* temp

* add zstd library

* temp

* working

* tests

* include fix

* uncomment

* better decomp of sparticle stuff, part 1

* update references
2021-09-26 11:41:58 -04:00

41 lines
1.2 KiB
Common Lisp

(defun open-progress ()
(if (not *target*)
(test-make-target))
(activate-progress *dproc* (the progress-screen 0)))
(defun debug-dump-hud-sprite ((count int))
(dotimes (i count)
(let ((arr (the (inline-array sprite-vec-data-2d) (&-> *sprite-array-2d* data (* 1920 3)))))
(format #t "----------------------~D~%" i)
;; first, the data
(inspect (-> arr i))
;; next, adgif
(let ((adg (-> *sprite-array-2d* adgif-data (+ 1920 i))))
(inspect (-> adg tex0))
(inspect (-> adg tex1))
)
;; matrix
(when (nonzero? (-> arr i matrix))
(inspect (the vector (-> *sprite-hvdf-data* data (-> arr i matrix))))
)
;; vector
(let ((vec (the (inline-array vector) (&+ (-> *sprite-array-2d* vec-data) (* 16 3 (+ i 1920))))))
(dotimes (j 3)
(print (-> vec j))
(format #t "~%")
)
)
(format #t "~%")
)
)
)
;; these are part-group-id-table entries for sprites that should work.
(define *test-sprite-ids* (new 'static 'boxed-array :type int32 :length 13
85 86 87 91 570 571 572 573 92 93 94 95 96)
)