mirror of
https://github.com/open-goal/jak-project
synced 2026-08-17 05:31:46 -04:00
28 lines
816 B
Common Lisp
28 lines
816 B
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
|
(require "kernel-defs.gc")
|
|
|
|
;; name: transform-h.gc
|
|
;; name in dgo: transform-h
|
|
;; dgos: GAME, ENGINE
|
|
|
|
;; DECOMP BEGINS
|
|
|
|
;; Transformation. w components of vectors should be 1.0
|
|
;; This can represent any rotation, translation, and scaling.
|
|
;; Note that the scaling is applied before rotation (meaning it scales along the axes of the pre-transformed frame).
|
|
(deftype transform (structure)
|
|
((trans vector :inline)
|
|
(rot vector :inline)
|
|
(scale vector :inline)))
|
|
|
|
;; Like transform, but it's a basic.
|
|
;; some in-game objects have trs as their parent type to represent their location in the game world.
|
|
(deftype trs (basic)
|
|
((trans vector :inline)
|
|
(rot vector :inline)
|
|
(scale vector :inline))
|
|
(:methods
|
|
(new (symbol type) _type_)))
|