Skip to main content

shrub-work

source

Functions


upload-generic-shrub

upload-generic-shrub(arg0: dma-buffer, arg1: generic-shrub-fragment, arg2: int, arg3: int) => dma-buffersource

Variables


*instance-shrub-work*

*instance-shrub-work*: instance-shrub-worksource

shrubbery-h

source

Types


billboard

billboard: drawablesource
Fields
type: type
id: int16
bsphere: vector
flat: adgif-shader

drawable-inline-array-instance-shrub

drawable-inline-array-instance-shrub: drawable-inline-arraysource
Fields
type: type
id: int16
bsphere: vector
length: int16
data: instance-shrubbery
pad: uint32

drawable-tree-instance-shrub

drawable-tree-instance-shrub: drawable-treesource
Fields
type: type
id: int16
bsphere: vector
length: int16
data: drawable
info: prototype-array-shrub-info
colors-added: time-of-day-palette

generic-shrub-fragment

generic-shrub-fragment: drawablesource
Fields
type: type
id: int16
bsphere: vector
textures: inline-array
vtx-cnt: uint32
cnt-qwc: uint8
vtx-qwc: uint8
col-qwc: uint8
stq-qwc: uint8
cnt: uint32
vtx: uint32
col: uint32
stq: uint32

instance-shrub-dma

instance-shrub-dma: structuresource
Fields
instancea: uint128
instanceb: uint128
outa: uint128
outb: uint128

instance-shrub-work

instance-shrub-work: structuresource
Fields
dummy: qword
chaina: qword
chainb: qword
colors: rgba
matrix-tmpl: qword
count-tmpl: vector4w
mscalf-tmpl: dma-packet
mscalf-ret-tmpl: dma-packet
adgif-tmpl: dma-gif-packet
billboard-tmpl: dma-gif-packet
billboard-const: vector
shrub-near-packets: shrub-near-packet
dma-ref: dma-packet
dma-end: dma-packet
wind-const: vector
constants: vector
color-constant: vector4w
hmge-d: vector
hvdf-offset: vector
wind-force: vector
color: vector
bb-color: vector
min-dist: vector
temp-vec: vector
guard-plane: plane
plane: plane
last: uint32
next: uint32
count: uint16
mod-count: uint16
wind-vectors: uint32
instance-ptr: uint32
chain-ptr: uint32
chain-ptr-next: uint32
stack-ptr: uint32
bucket-ptr: uint32
src-ptr: uint32
to-spr: uint32
from-spr: uint32
shrub-count: uint32
node: uint32
length: uint32
prototypes: uint32
start-bank: uint8
buffer-index: uint32
current-spr: uint32
current-mem: uint32
current-shrub-near-packet: uint32
dma-buffer: basic
near-last: uint32
near-next: uint32
near-count: uint32
last-shrubs: uint32
chains: uint32
flags: uint32
paused: basic
node-count: uint32
inst-count: uint32
wait-from-spr: uint32
wait-to-spr: uint32

instance-shrubbery

instance-shrubbery: instancesource
Fields
type: type
id: int16
bsphere: vector
bucket-index: uint16
error: pointer
origin: matrix4h
unknown-vector: vector
wind-index: uint16
color-indices: uint32
flat-normal: vector
flat-hwidth: float
color: uint32

prototype-generic-shrub

prototype-generic-shrub: drawable-groupsource
Fields
type: type
id: int16
bsphere: vector
length: int16
data: drawable

prototype-shrubbery

prototype-shrubbery: drawable-inline-arraysource
Fields
type: type
id: int16
bsphere: vector
length: int16
data: shrubbery
pad: uint32

prototype-trans-shrubbery

prototype-trans-shrubbery: prototype-shrubberysource
Fields
type: type
id: int16
bsphere: vector
length: int16
data: shrubbery
pad: uint32

shrub-near-packet

shrub-near-packet: structuresource
Fields
matrix-tmpl: dma-packet
header-tmpl: dma-packet
stq-tmpl: dma-packet
color-tmpl: dma-packet
vertex-tmpl: dma-packet
mscal-tmpl: dma-packet
init-tmpl: dma-packet
init-data: uint32

shrub-view-data

shrub-view-data: structuresource
Fields
data: uint128
texture-giftag: gs-gif-tag
consts: vector
fog-clamp: vector
tex-start-ptr: int32
gifbufsum: float
mtx-buf-ptr: int32
exp23: float
fog-0: float
fog-1: float
fog-min: float
fog-max: float

shrubbery

shrubbery: drawablesource
Fields
type: type
id: int16
bsphere: vector
textures: inline-array
header: qword
obj-qwc: uint8
vtx-qwc: uint8
col-qwc: uint8
stq-qwc: uint8
obj: uint32
vtx: uint32
col: uint32
stq: uint32

shrubbery-matrix

shrubbery-matrix: structuresource
Fields
mat: matrix
color: qword

Functions


shrubbery-login-post-texture

shrubbery-login-post-texture(obj: shrubbery) => nonesource

Copies adgif shader crap to somewhere

Variables


*shrub-state*

*shrub-state*: intsource

shrubbery

source

Functions


draw-drawable-tree-instance-shrub

draw-drawable-tree-instance-shrub(arg0: drawable-tree-instance-shrub, arg1: level) => nonesource

mem-usage-shrub-walk

mem-usage-shrub-walk(arg0: draw-node, arg1: int, arg2: memory-usage-block, arg3: int) => draw-nodesource

Recursively iterate through the entire shrub tree and compute memory usage for instances.

shrub-do-init-frame

shrub-do-init-frame(arg0: dma-buffer) => symbolsource

Generate DMA to initialize the shrubbery renderer on VU1.

shrub-init-frame

shrub-init-frame(arg0: dma-buffer, arg1: gs-test) => nonesource

Generate DMA to initialize to shrubbery renderer VU1 and GS.

shrub-init-view-data

shrub-init-view-data(arg0: shrub-view-data) => symbolsource

Initialize shrubbery constants in place

shrub-make-perspective-matrix

shrub-make-perspective-matrix(arg0: matrix) => matrixsource

Compute the matrix used by the shrubbery VU1 program.

shrub-num-tris

shrub-num-tris(arg0: shrubbery) => uintsource

Get the number of triangles in a shrubbery fragment.

shrub-time

shrub-time(arg0: int, arg1: int, arg2: int, arg3: int, arg4: int) => intsource

shrub-upload-model

shrub-upload-model(arg0: shrubbery, arg1: dma-buffer, arg2: int) => symbolsource

Generate DMA to upload a shrub model

shrub-upload-view-data

shrub-upload-view-data(arg0: dma-buffer) => symbolsource

Generate DMA data to upload shrubbery constants to VU1.

Variables


shrub-vu1-block

const shrub-vu1-block: vu-functionsource