Files
jak-project/test/decompiler/reference/engine/geometry/geometry-h_REF.gc
T
water111 551a9c4955 [decompiler] ASM Branching Support (#677)
* basic example working in geometry

* before updating offline'

* clean up

* temp

* progress
2021-07-05 16:07:07 -04:00

58 lines
1.7 KiB
Common Lisp
Vendored

;;-*-Lisp-*-
(in-package goal)
;; definition of type curve
(deftype curve (structure)
((cverts pointer :offset-assert 0)
(num-cverts int32 :offset-assert 4)
(knots (inline-array vector) :offset-assert 8)
(num-knots int32 :offset-assert 12)
(length float :offset-assert 16)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
;; definition for method 3 of type curve
(defmethod inspect curve ((obj curve))
(format #t "[~8x] ~A~%" obj 'curve)
(format #t "~Tcverts: #x~X~%" (-> obj cverts))
(format #t "~Tnum-cverts: ~D~%" (-> obj num-cverts))
(format #t "~Tknots: #x~X~%" (-> obj knots))
(format #t "~Tnum-knots: ~D~%" (-> obj num-knots))
(format #t "~Tlength: ~f~%" (-> obj length))
obj
)
;; definition of type border-plane
(deftype border-plane (basic)
((name symbol :offset-assert 4)
(action basic :offset-assert 8)
(slot int8 :offset-assert 12)
(trans vector :inline :offset-assert 16)
(normal vector :inline :offset-assert 32)
)
:method-count-assert 11
:size-assert #x30
:flag-assert #xb00000030
(:methods
(debug-draw! (_type_) none 9)
(point-past-plane? (_type_ vector) symbol 10)
)
)
;; definition for method 3 of type border-plane
(defmethod inspect border-plane ((obj border-plane))
(format #t "[~8x] ~A~%" obj (-> obj type))
(format #t "~Tname: ~A~%" (-> obj name))
(format #t "~Taction: ~A~%" (-> obj action))
(format #t "~Tslot: ~D~%" (-> obj slot))
(format #t "~Ttrans: ~`vector`P~%" (-> obj trans))
(format #t "~Tnormal: ~`vector`P~%" (-> obj normal))
obj
)
;; failed to figure out what this is:
0