Types
collide-cache: basicsource
Fields
type: type
num-tris: int32
num-prims: int32
num-prims-u: uint32
ignore-mask: pat-surface
proc: process-drawable
collide-box: bounding-box
collide-box4w: bounding-box4w
collide-with: collide-kind
prims: collide-cache-prim
tris: collide-cache-tri
Methods
debug-draw(obj: collide-cache) => nonesource
Debug draw all the things in the collide cache!
fill-and-probe-using-line-sphere(obj: collide-cache, arg0: vector, arg1: vector, arg2: float, arg3: collide-kind, arg4: process, arg5: collide-tri-result, arg6: pat-surface) => floatsource
fill-and-probe-using-spheres(obj: collide-cache, arg0: collide-using-spheres-params) => symbolsource
fill-and-probe-using-y-probe(obj: collide-cache, arg0: vector, arg1: float, arg2: collide-kind, arg3: process-drawable, arg4: collide-tri-result, arg5: pat-surface) => floatsource
fill-using-bounding-box(obj: collide-cache, arg0: bounding-box, arg1: collide-kind, arg2: process-drawable, arg3: pat-surface) => nonesource
fill-using-line-sphere(obj: collide-cache, arg0: vector, arg1: vector, arg2: float, arg3: collide-kind, arg4: process-drawable, arg5: pat-surface) => nonesource
fill-using-spheres(obj: collide-cache, arg0: collide-using-spheres-params) => nonesource
fill-using-y-probe(obj: collide-cache, arg0: vector, arg1: float, arg2: collide-kind, arg3: process-drawable, arg4: pat-surface) => nonesource
initialize(obj: collide-cache) => nonesource
Clear the collide-cache.
probe-using-line-sphere(obj: collide-cache, arg0: vector, arg1: vector, arg2: float, arg3: collide-kind, arg4: collide-tri-result, arg5: pat-surface) => floatsource
probe-using-spheres(obj: collide-cache, arg0: collide-using-spheres-params) => symbolsource
probe-using-y-probe(obj: collide-cache, arg0: vector, arg1: float, arg2: collide-kind, arg3: collide-tri-result, arg4: pat-surface) => floatsource
fill-from-background(obj: collide-cache, bsp-find-mesh-func: function, import-mesh-func: function) => nonesource
This terrible function fills the collide cache with background tris from a bounding box.
fill-from-foreground-using-box(obj: collide-cache) => nonesource
fill-from-foreground-using-line-sphere(obj: collide-cache) => nonesource
fill-from-foreground-using-y-probe(obj: collide-cache) => nonesource
fill-from-water(obj: collide-cache, arg0: water-control) => nonesource
load-mesh-from-spad-in-box: unknown
collide-cache-method-27: unknown
collide-cache-method-28: unknown
collide-cache-method-29: unknown
puyp-mesh: unknown
puyp-sphere(obj: collide-cache, arg0: collide-puyp-work, arg1: collide-cache-prim) => vectorsource
unpack-background-collide-mesh: unknown
collide-cache-prim: structuresource
Fields
prim-core: collide-prim-core
extra-quad: uint128
ccache: collide-cache
prim: collide-shape-prim
first-tri: uint16
num-tris: uint16
unused: uint8
world-sphere: vector
collide-as: collide-kind
action: collide-action
offense: collide-offense
prim-type: int8
Methods
resolve-moving-sphere-tri: unknown
resolve-moving-sphere-sphere: unknown
collide-cache-tri: structuresource
Fields
vertex: vector
extra-quad: uint128
pat: pat-surface
prim-index: uint16
user16: uint16
user32: uint32
collide-list: structuresource
collide-list-item: structuresource
collide-puss-sphere: structuresource
collide-puss-work: structuresource
Fields
closest-pt: vector
tri-normal: vector
tri-bbox4w: bounding-box4w
spheres-bbox4w: bounding-box4w
spheres: collide-puss-sphere
Methods
collide-puss-work-method-9: unknown
collide-puss-work-method-10: unknown
collide-puyp-work: structuresource
Fields
best-u: float
ignore-pat: pat-surface
tri-out: collide-tri-result
start-pos: vector
move-dist: vector
collide-using-spheres-params: structuresource
Fields
spheres: inline-array
num-spheres: uint32
collide-with: collide-kind
proc: process-drawable
ignore-pat: pat-surface
solid-only: basic
collide-work: structuresource
Variables
BIG_COLLIDE_CACHE_SIZE: unknownsource
Types
collide-puls-work: structuresource
pc-fffuls-work: structuresource
Functions
collide-cache-using-box-test(arg0: vector) => symbolsource
collide-cache-using-line-sphere-test(arg0: vector) => symbolsource
Check if the input sphere is in the rotated bounding box volume of the current
line-sphere query.
collide-cache-using-y-probe-test(arg0: vector) => symbolsource
make-collide-list-using-line-sphere-inst-test(arg0: collide-fragment, arg1: instance-tie) => symbolsource
Check if a collide-fragment at a given instance is in the rotated bounding box volume
of the current line-sphere query.
Variables
Types
collide-edge-edge: structuresource
Fields
ignore: basic
etri: collide-edge-tri
vertex-ptr: inline-array
outward: vector
edge-vec-norm: vector
collide-edge-hold-item: structuresource
Fields
next: collide-edge-hold-item
rating: float
split: int8
edge: collide-edge-edge
center-pt: vector
outward-pt: vector
collide-edge-hold-list: structuresource
Fields
num-allocs: uint32
num-attempts: uint32
head: collide-edge-hold-item
items: collide-edge-hold-item
attempts: qword
Methods
debug-draw(obj: collide-edge-hold-list) => objectsource
add-to-list!: unknown
collide-edge-tri: structuresource
collide-edge-work: structuresource
Fields
ccache: collide-cache
cshape: collide-shape
num-verts: uint32
num-edges: uint32
num-tris: uint32
cache-fill-box: bounding-box
within-reach-box: bounding-box
within-reach-box4w: bounding-box4w
search-pt: vector
search-dir-vec: vector
max-dist-sqrd-to-outward-pt: float
max-dir-cosa-delta: float
split-dists: float
outward-offset: vector
local-cache-fill-box: bounding-box
local-within-reach-box: bounding-box
local-player-spheres: sphere
world-player-spheres: sphere
local-player-hanging-spheres: sphere
world-player-hanging-spheres: sphere
local-player-leap-up-spheres: sphere
world-player-leap-up-spheres: sphere
verts: vector
edges: collide-edge-edge
tris: collide-edge-tri
hold-list: collide-edge-hold-list
Methods
search-for-edges(obj: collide-edge-work, arg0: collide-edge-hold-list) => symbolsource
Iterate through edges, adding them to the collide-edge-hold-list, if they are good