Skip to main content

generic-merc-h

source

Types


generic-merc-ctrl

generic-merc-ctrl: structuresource

generic-merc-ctrl-with-sfx

generic-merc-ctrl-with-sfx: generic-merc-ctrlsource
Fields
tag: generic-merc-tag
lights: vu-lights
header: merc-ctrl-header
effect: merc-effect
sfx-data: uint128

generic-merc-dcache

generic-merc-dcache: structuresource
Fields
output-a: generic-merc-output
output-b: generic-merc-output
inv-table-1: uint8
inv-table-7: uint8
inv-safety: uint8
effect-data: uint8

generic-merc-input

generic-merc-input: structuresource
Fields
geo-tag: generic-merc-tag
geo-block: uint8
byte-header: merc-byte-header
matrix: merc-matrix
control: generic-merc-ctrl-with-sfx
end-tag: generic-merc-tag
shader: adgif-shader

generic-merc-output

generic-merc-output: structuresource
Fields
info: gsf-info
header: gsf-header
index-kick-table: uint16
index-table: uint8
inverse-table: uint8
vertex-table: gsf-vertex

generic-merc-tag

generic-merc-tag: dma-packetsource
Fields
dma: dma-tag
vif0: vif-tag
vif1: vif-tag
quad: uint128
next-ptr: uint32
size: uint32

generic-merc-work

generic-merc-work: structuresource
Fields
input-a: generic-merc-input
input-b: generic-merc-input
ctrl: generic-merc-ctrl-with-sfx
shadow: gm-shadow
stack: uint128

gm-shadow

gm-shadow: structuresource
Fields
perspective: matrix
isometric: matrix
inv-camera-rot: matrix
envmap-shader: adgif-shader
current-chain: uint32
next-chain: uint32
buf-index: uint32
fragment-count: uint32
write-limit: pointer
indexed-input-base: generic-merc-input
other-input-base: generic-merc-input
indexed-output-base: generic-merc-output
other-output-base: generic-merc-output
p-input: uint32
gsf-buf: generic-merc-dcache
p-fheader: merc-fp-header
mercneric-convert: basic
generic-prepare-dma-single: basic
generic-prepare-dma-double: basic
generic-light-proc: basic
generic-envmap-proc: basic
high-speed-reject: basic
hsr-xmult: vector
hsr-ymult: vector

merc-matrix

merc-matrix: structuresource
Fields
quad: uint128
vector: vector
tag: uint64

merc-blend-shape

source

Types


blerc-block

blerc-block: structuresource
Fields
output: uint8
header: blerc-block-header

blerc-block-header

blerc-block-header: structuresource
Fields
tag: generic-merc-tag
vtx-count: uint32
overlap: uint32
lump-dest: uint32
lump-qwc: uint32

blerc-context

blerc-context: structuresource
Fields
block-a: blerc-block
dummy: uint8
block-b: blerc-block

blerc-dcache

blerc-dcache: structuresource
Fields
repl-mult: vector

blerc-globals

blerc-globals: structuresource
Fields
first: uint32
next: uint32
min-val: int16
max-val: int16
fragment-count: int32
vtx-count: int32
target-vtx-count: int32

Functions


blerc-init

blerc-init() => nonesource

blerc-stats-init

blerc-stats-init() => nonesource

merc-blend-shape

merc-blend-shape(arg0: process-drawable) => objectsource

setup-blerc-chains

setup-blerc-chains(arg0: merc-ctrl, arg1: pointer, arg2: dma-buffer) => nonesource

Variables


*blerc-globals*

*blerc-globals*: blerc-globalssource

*stats-blerc*

*stats-blerc*: symbolsource

merc-death

source

Types


death-info

death-info: basicsource
Fields
type: type
vertex-skip: uint16
timer: uint8
overlap: uint8
effect: uint32
sound: symbol

Functions


birth-func-death-sparks

birth-func-death-sparks() => nonesource

merc-death-spawn

merc-death-spawn(arg0: int, arg1: vector, arg2: vector) => nonesource

Variables


*merc-death-globals*

*merc-death-globals*: vectorsource

death-beach-puppy

const death-beach-puppy: death-infosource

death-default

const death-default: death-infosource

death-jungle-snake

const death-jungle-snake: death-infosource

death-warp-in

death-warp-in: death-infosource

death-warp-out

death-warp-out: death-infosource

merc-h

source

Types


mei-envmap-tint

mei-envmap-tint: structuresource
Fields
fade0: float
fade1: float
tint: uint32
dummy: int32

mei-ripple

mei-ripple: structuresource
Fields
x-base: float
z-base: float
grid-size: float
angle: float

mei-texture-scroll

mei-texture-scroll: structuresource
Fields
max-dist: float
st-int-scale: uint8
time-factor: uint8
scroll-dir: uint8
cached-time: uint8
time-delta: uint8
dummy: uint8

merc-blend-ctrl

merc-blend-ctrl: structuresource
Fields
blend-vtx-count: uint8
nonzero-index-count: uint8
bt-index: uint8

merc-blend-data

merc-blend-data: structuresource
Fields
int8-data: int8

merc-byte-header

merc-byte-header: structuresource
Fields
srcdest-off: uint8
rgba-off: uint8
lump-off: uint8
fp-off: uint8
mat1-cnt: uint8
mat2-cnt: uint8
mat3-cnt: uint8
samecopy-cnt: uint8
crosscopy-cnt: uint8
strip-len: uint8
mm-quadword-fp-off: uint8
mm-quadword-size: uint8
perc-off: uint8
mat-slot: uint8

merc-ctrl

merc-ctrl: art-elementsource
Fields
type: type
name: string
length: int32
extra: res-lump
pad: uint8
num-joints: int32
header: merc-ctrl-header
effect: merc-effect

merc-ctrl-header

merc-ctrl-header: structuresource
Fields
xyz-scale: float
st-magic: uint32
st-out-a: uint32
st-out-b: uint32
st-vif-add: uint32
st-int-off: uint16
st-int-scale: uint16
effect-count: uint32
blend-target-count: uint32
fragment-count: uint16
tri-count: uint16
matrix-count: uint8
shader-count: uint8
transform-vertex-count: uint16
dvert-count: uint16
one-mat-count: uint16
two-mat-count: uint16
two-mat-reuse-count: uint16
three-mat-count: uint16
three-mat-reuse-count: uint16
shader-upload-count: uint8
matrix-upload-count: uint8
same-copy-count: uint16
cross-copy-count: uint16
num-verts: uint16
longest-edge: float
eye-ctrl: merc-eye-ctrl
masks: uint32
dummy-bytes: uint8
envmap-tint: uint32
query: basic
needs-clip: uint8
use-isometric: uint8
use-attached-shader: uint8
display-triangles: uint8
death-vertex-skip: uint16
death-start-vertex: uint16
death-effect: uint32
use-translucent: uint8
display-this-fragment: uint8

merc-effect

merc-effect: structuresource
Fields
frag-geo: merc-fragment
frag-ctrl: merc-fragment-control
blend-data: merc-blend-data
blend-ctrl: merc-blend-ctrl
dummy0: uint8
effect-bits: uint8
frag-count: uint16
blend-frag-count: uint16
tri-count: uint16
dvert-count: uint16
dummy1: uint8
envmap-usage: uint8
extra-info: merc-extra-info
data: uint64
Methods
login-adgifs(obj: merc-effect) => nonesource

Login everything for this merc-effect.

merc-extra-info

merc-extra-info: structuresource
Fields
envmap-tint-offset: uint8
shader-offset: uint8
texture-scroll-offset: uint8
ripple-offset: uint8
dummy: uint8

merc-eye-anim-block

merc-eye-anim-block: structuresource
Fields
max-frame: int16
data: merc-eye-anim-frame

merc-eye-anim-frame

merc-eye-anim-frame: structuresource
Fields
pupil-trans-x: int8
pupil-trans-y: int8
blink: int8
iris-scale: int8
pupil-scale: int8
lid-scale: int8
dword: uint64

merc-eye-ctrl

merc-eye-ctrl: structuresource
Fields
eye-slot: int8
shader-offset: int8
shader-count: int8
iris-shader: adgif-shader
pupil-shader: adgif-shader
lid-shader: adgif-shader
shader: adgif-shader

merc-fp-header

merc-fp-header: structuresource
Fields
x-add: float
y-add: float
z-add: float
shader-cnt: uint8
kick-info-offset: uint8
kick-info-step: uint8
hword-cnt: uint8

merc-fragment

merc-fragment: structuresource
Fields
header: merc-byte-header
rest: uint8
Methods
login-adgifs(obj: merc-fragment) => nonesource

Set up a merc-fragment. Does adgifs and eye stuff

merc-fragment-control

merc-fragment-control: structuresource
Fields
unsigned-four-count: uint8
lump-four-count: uint8
fp-qwc: uint8
mat-xfer-count: uint8
mat-dest-data: merc-mat-dest

merc-mat-dest

merc-mat-dest: structuresource
Fields
matrix-number: uint8
matrix-dest: uint8

merc-vtx

merc-vtx: structuresource
Fields
mat-0: uint8
mat-1: uint8
nrm-x: uint8
pos-x: uint8
dst-0: uint8
dst-1: uint8
nrm-y: uint8
pos-y: uint8
tex-s: uint8
tex-t: uint8
nrm-z: uint8
pos-z: uint8

merc-vu1-low-mem

merc-vu1-low-mem: structuresource
Fields
tri-strip-gif: gs-gif-tag
ad-gif: gs-gif-tag
hvdf-offset: vector
perspective: uint128
fog: vector

ripple-control

ripple-control: basicsource
Fields
type: type
global-scale: float
last-frame-scale: float
close-fade-dist: float
far-fade-dist: float
faded-scale: float
individual-normal-scale: float
waveform: ripple-wave-set
send-query: symbol
query: ripple-merc-query

ripple-merc-query

ripple-merc-query: inline-array-classsource
Fields
type: type
length: int32
allocated-length: int32
_data: uint8
start-vertex: int32
vertex-skip: int32
vertex-count: int32
current-loc: int32
data: vector

ripple-wave

ripple-wave: structuresource
Fields
scale: float
offs: float
xdiv: int16
zdiv: int16
speed: float
xmul: float
zmul: float
delta: float

ripple-wave-set

ripple-wave-set: basicsource
Fields
type: type
count: int32
converted: basic
frame-save: uint32
normal-scale: float
wave: ripple-wave

Functions


merc-fragment-fp-data

merc-fragment-fp-data(arg0: merc-fragment) => merc-fp-headersource

Get the floating-point data of a merc-fragment

merc-vu1

source

Variables


merc-vu1-block

merc-vu1-block: vu-functionsource

Functions


merc-edge-stats

merc-edge-stats() => nonesource

merc-stats

merc-stats() => nonesource

merc-stats-display

merc-stats-display(arg0: merc-ctrl) => nonesource

merc-vu1-add-vu-function

merc-vu1-add-vu-function(dma: dma-packet, func: vu-function, flush-mode: int) => dma-gif-packetsource

Add a function to a dma chain. Return pointer to chain after the upload data.

merc-vu1-init-buffer

merc-vu1-init-buffer(dma-bucket: bucket-id, test: gs-test, arg2: int) => nonesource

Setup merc DMA buffer.

merc-vu1-init-buffers

merc-vu1-init-buffers() => nonesource

Setup merc DMA buffers. Call this after drawing.

merc-vu1-initialize-chain

merc-vu1-initialize-chain(arg0: dma-gif-packet) => dma-packetsource

Initialize a merc chain.

Variables


*merc-ctrl-header*

*merc-ctrl-header*: merc-ctrl-headersource