mirror of
https://gitlab.com/ryandwyer/perfect-dark
synced 2026-08-04 00:49:17 -04:00
Decompile quaternion0f097044
This commit is contained in:
+4
-4
@@ -1696,8 +1696,8 @@ void bbikeTick(void)
|
||||
mtx3ToMtx4(obj->realrot, &sp124);
|
||||
mtx00015f04(1.0f / obj->model->scale, &sp124);
|
||||
mtx4LoadYRotation(hoverpropGetTurnAngle(obj), &spe4);
|
||||
func0f097044(&spe4, spd4);
|
||||
func0f097044(&sp124, spc4);
|
||||
quaternion0f097044(&spe4, spd4);
|
||||
quaternion0f097044(&sp124, spc4);
|
||||
quaternion0f0976c0(spc4, spd4);
|
||||
func0f0972b8(spd4, spc4, 0.8f, spb4);
|
||||
quaternionToMtx(spb4, &sp124);
|
||||
@@ -1727,8 +1727,8 @@ void bbikeTick(void)
|
||||
-1, 0, 0, 0, NULL, -1, NULL, -1, -1, -1, -1);
|
||||
}
|
||||
|
||||
func0f097044(&g_Vars.currentplayer->bondentermtx, spa4);
|
||||
func0f097044(&sp164, sp94);
|
||||
quaternion0f097044(&g_Vars.currentplayer->bondentermtx, spa4);
|
||||
quaternion0f097044(&sp164, sp94);
|
||||
quaternion0f0976c0(sp94, spa4);
|
||||
func0f0972b8(spa4, sp94, 1.0f - g_Vars.currentplayer->bondentert2, sp84);
|
||||
quaternionToMtx(sp84, &sp164);
|
||||
|
||||
+10
-10
@@ -11355,10 +11355,10 @@ glabel var7f1ac72c
|
||||
/* f09f494: 0c005ad6 */ jal mtx00016b58
|
||||
/* f09f498: e7a60018 */ swc1 $f6,0x18($sp)
|
||||
/* f09f49c: 27a400f8 */ addiu $a0,$sp,0xf8
|
||||
/* f09f4a0: 0fc25c11 */ jal func0f097044
|
||||
/* f09f4a0: 0fc25c11 */ jal quaternion0f097044
|
||||
/* f09f4a4: 27a50068 */ addiu $a1,$sp,0x68
|
||||
/* f09f4a8: 27a400b8 */ addiu $a0,$sp,0xb8
|
||||
/* f09f4ac: 0fc25c11 */ jal func0f097044
|
||||
/* f09f4ac: 0fc25c11 */ jal quaternion0f097044
|
||||
/* f09f4b0: 27a50058 */ addiu $a1,$sp,0x58
|
||||
/* f09f4b4: 27a40068 */ addiu $a0,$sp,0x68
|
||||
/* f09f4b8: 0fc25db0 */ jal quaternion0f0976c0
|
||||
@@ -11871,10 +11871,10 @@ glabel var7f1ac72c
|
||||
/* f09f494: 0c005ad6 */ jal mtx00016b58
|
||||
/* f09f498: e7a60018 */ swc1 $f6,0x18($sp)
|
||||
/* f09f49c: 27a400f8 */ addiu $a0,$sp,0xf8
|
||||
/* f09f4a0: 0fc25c11 */ jal func0f097044
|
||||
/* f09f4a0: 0fc25c11 */ jal quaternion0f097044
|
||||
/* f09f4a4: 27a50068 */ addiu $a1,$sp,0x68
|
||||
/* f09f4a8: 27a400b8 */ addiu $a0,$sp,0xb8
|
||||
/* f09f4ac: 0fc25c11 */ jal func0f097044
|
||||
/* f09f4ac: 0fc25c11 */ jal quaternion0f097044
|
||||
/* f09f4b0: 27a50058 */ addiu $a1,$sp,0x58
|
||||
/* f09f4b4: 27a40068 */ addiu $a0,$sp,0x68
|
||||
/* f09f4b8: 0fc25db0 */ jal quaternion0f0976c0
|
||||
@@ -12396,11 +12396,11 @@ glabel var7f1ac740
|
||||
/* f0a0050: 0c005a3a */ jal mtx00016b58
|
||||
/* f0a0054: e7b00018 */ swc1 $f16,0x18($sp)
|
||||
/* f0a0058: 02002025 */ move $a0,$s0
|
||||
/* f0a005c: 0fc25bd9 */ jal func0f097044
|
||||
/* f0a005c: 0fc25bd9 */ jal quaternion0f097044
|
||||
/* f0a0060: 27a500e4 */ addiu $a1,$sp,0xe4
|
||||
/* f0a0064: 27b000d4 */ addiu $s0,$sp,0xd4
|
||||
/* f0a0068: 02002825 */ move $a1,$s0
|
||||
/* f0a006c: 0fc25bd9 */ jal func0f097044
|
||||
/* f0a006c: 0fc25bd9 */ jal quaternion0f097044
|
||||
/* f0a0070: 27a40134 */ addiu $a0,$sp,0x134
|
||||
/* f0a0074: 27a400e4 */ addiu $a0,$sp,0xe4
|
||||
/* f0a0078: 0fc25d78 */ jal quaternion0f0976c0
|
||||
@@ -13031,11 +13031,11 @@ glabel var7f1ac740
|
||||
/* f09fd4c: 0c005ad6 */ jal mtx00016b58
|
||||
/* f09fd50: e7b00018 */ swc1 $f16,0x18($sp)
|
||||
/* f09fd54: 02002025 */ or $a0,$s0,$zero
|
||||
/* f09fd58: 0fc25c11 */ jal func0f097044
|
||||
/* f09fd58: 0fc25c11 */ jal quaternion0f097044
|
||||
/* f09fd5c: 27a500e4 */ addiu $a1,$sp,0xe4
|
||||
/* f09fd60: 27b000d4 */ addiu $s0,$sp,0xd4
|
||||
/* f09fd64: 02002825 */ or $a1,$s0,$zero
|
||||
/* f09fd68: 0fc25c11 */ jal func0f097044
|
||||
/* f09fd68: 0fc25c11 */ jal quaternion0f097044
|
||||
/* f09fd6c: 27a40134 */ addiu $a0,$sp,0x134
|
||||
/* f09fd70: 27a400e4 */ addiu $a0,$sp,0xe4
|
||||
/* f09fd74: 0fc25db0 */ jal quaternion0f0976c0
|
||||
@@ -13657,11 +13657,11 @@ glabel var7f1ac740
|
||||
/* f09dbc0: 0c005eba */ jal mtx00016b58
|
||||
/* f09dbc4: e7b00018 */ swc1 $f16,0x18($sp)
|
||||
/* f09dbc8: 02002025 */ or $a0,$s0,$zero
|
||||
/* f09dbcc: 0fc253f5 */ jal func0f097044
|
||||
/* f09dbcc: 0fc253f5 */ jal quaternion0f097044
|
||||
/* f09dbd0: 27a500e4 */ addiu $a1,$sp,0xe4
|
||||
/* f09dbd4: 27b000d4 */ addiu $s0,$sp,0xd4
|
||||
/* f09dbd8: 02002825 */ or $a1,$s0,$zero
|
||||
/* f09dbdc: 0fc253f5 */ jal func0f097044
|
||||
/* f09dbdc: 0fc253f5 */ jal quaternion0f097044
|
||||
/* f09dbe0: 27a40134 */ addiu $a0,$sp,0x134
|
||||
/* f09dbe4: 27a400e4 */ addiu $a0,$sp,0xe4
|
||||
/* f09dbe8: 0fc25594 */ jal quaternion0f0976c0
|
||||
|
||||
+2
-2
@@ -2104,8 +2104,8 @@ void bmoveUpdateHead(f32 arg0, f32 arg1, f32 arg2, Mtxf *arg3, f32 arg4)
|
||||
mtx4MultMtx4InPlace(&sp116, &sp180);
|
||||
|
||||
if (arg3) {
|
||||
func0f097044(&sp180, sp100);
|
||||
func0f097044(arg3, sp84);
|
||||
quaternion0f097044(&sp180, sp100);
|
||||
quaternion0f097044(arg3, sp84);
|
||||
quaternion0f0976c0(sp100, sp84);
|
||||
func0f0972b8(sp100, sp84, arg4, sp68);
|
||||
quaternionToMtx(sp68, &sp180);
|
||||
|
||||
+54
-155
@@ -7,18 +7,6 @@
|
||||
#include "data.h"
|
||||
#include "types.h"
|
||||
|
||||
const u32 var7f1ab870[] = {0x3c23d70a};
|
||||
const u32 var7f1ab874[] = {0xbf7fff58};
|
||||
const u32 var7f1ab878[] = {0x3f7fff58};
|
||||
const u32 var7f1ab87c[] = {0xbf7fff58};
|
||||
const u32 var7f1ab880[] = {0x3f7fff58};
|
||||
const u32 var7f1ab884[] = {0x00000000};
|
||||
const u32 var7f1ab888[] = {0x00000000};
|
||||
const u32 var7f1ab88c[] = {0x00000000};
|
||||
|
||||
u32 var8006afa0 = 0x00000001;
|
||||
u32 var8006afa4 = 0x00000002;
|
||||
|
||||
void quaternion0f096ca0(struct coord *angle, f32 quat[4])
|
||||
{
|
||||
f32 cosx = cosf(angle->f[0] * 0.5f);
|
||||
@@ -102,149 +90,48 @@ void quaternionToMtx(f32 quat[4], Mtxf *mtx)
|
||||
mtx->m[3][3] = 1.0f;
|
||||
}
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f097044
|
||||
/* f097044: 27bdffa0 */ addiu $sp,$sp,-96
|
||||
/* f097048: afbf001c */ sw $ra,0x1c($sp)
|
||||
/* f09704c: afb00018 */ sw $s0,0x18($sp)
|
||||
/* f097050: c4860014 */ lwc1 $f6,0x14($a0)
|
||||
/* f097054: c4840000 */ lwc1 $f4,0x0($a0)
|
||||
/* f097058: c48a0028 */ lwc1 $f10,0x28($a0)
|
||||
/* f09705c: 3c013f80 */ lui $at,0x3f80
|
||||
/* f097060: 46062200 */ add.s $f8,$f4,$f6
|
||||
/* f097064: 44811000 */ mtc1 $at,$f2
|
||||
/* f097068: 3c017f1b */ lui $at,%hi(var7f1ab870)
|
||||
/* f09706c: c432b870 */ lwc1 $f18,%lo(var7f1ab870)($at)
|
||||
/* f097070: 46085400 */ add.s $f16,$f10,$f8
|
||||
/* f097074: 3c0e8007 */ lui $t6,%hi(var8006afa0)
|
||||
/* f097078: 00a08025 */ or $s0,$a1,$zero
|
||||
/* f09707c: 25ceafa0 */ addiu $t6,$t6,%lo(var8006afa0)
|
||||
/* f097080: 46028300 */ add.s $f12,$f16,$f2
|
||||
/* f097084: 460c903c */ c.lt.s $f18,$f12
|
||||
/* f097088: 00000000 */ nop
|
||||
/* f09708c: 4502001a */ bc1fl .L0f0970f8
|
||||
/* f097090: 8dc10000 */ lw $at,0x0($t6)
|
||||
/* f097094: 0c012974 */ jal sqrtf
|
||||
/* f097098: afa40060 */ sw $a0,0x60($sp)
|
||||
/* f09709c: 3c013f00 */ lui $at,0x3f00
|
||||
/* f0970a0: 44816000 */ mtc1 $at,$f12
|
||||
/* f0970a4: 8fa40060 */ lw $a0,0x60($sp)
|
||||
/* f0970a8: 46006083 */ div.s $f2,$f12,$f0
|
||||
/* f0970ac: 460c0102 */ mul.s $f4,$f0,$f12
|
||||
/* f0970b0: e6040000 */ swc1 $f4,0x0($s0)
|
||||
/* f0970b4: c48a0024 */ lwc1 $f10,0x24($a0)
|
||||
/* f0970b8: c4860018 */ lwc1 $f6,0x18($a0)
|
||||
/* f0970bc: 460a3201 */ sub.s $f8,$f6,$f10
|
||||
/* f0970c0: 46024402 */ mul.s $f16,$f8,$f2
|
||||
/* f0970c4: e6100004 */ swc1 $f16,0x4($s0)
|
||||
/* f0970c8: c4840008 */ lwc1 $f4,0x8($a0)
|
||||
/* f0970cc: c4920020 */ lwc1 $f18,0x20($a0)
|
||||
/* f0970d0: 46049181 */ sub.s $f6,$f18,$f4
|
||||
/* f0970d4: 46023282 */ mul.s $f10,$f6,$f2
|
||||
/* f0970d8: e60a0008 */ swc1 $f10,0x8($s0)
|
||||
/* f0970dc: c4900010 */ lwc1 $f16,0x10($a0)
|
||||
/* f0970e0: c4880004 */ lwc1 $f8,0x4($a0)
|
||||
/* f0970e4: 46104481 */ sub.s $f18,$f8,$f16
|
||||
/* f0970e8: 46029102 */ mul.s $f4,$f18,$f2
|
||||
/* f0970ec: 10000058 */ b .L0f097250
|
||||
/* f0970f0: e604000c */ swc1 $f4,0xc($s0)
|
||||
/* f0970f4: 8dc10000 */ lw $at,0x0($t6)
|
||||
.L0f0970f8:
|
||||
/* f0970f8: 27ab0040 */ addiu $t3,$sp,0x40
|
||||
/* f0970fc: 00002825 */ or $a1,$zero,$zero
|
||||
/* f097100: ad610000 */ sw $at,0x0($t3)
|
||||
/* f097104: 8dd80004 */ lw $t8,0x4($t6)
|
||||
/* f097108: ad780004 */ sw $t8,0x4($t3)
|
||||
/* f09710c: 8dc10008 */ lw $at,0x8($t6)
|
||||
/* f097110: ad610008 */ sw $at,0x8($t3)
|
||||
/* f097114: c48a0014 */ lwc1 $f10,0x14($a0)
|
||||
/* f097118: c4860000 */ lwc1 $f6,0x0($a0)
|
||||
/* f09711c: 460a303c */ c.lt.s $f6,$f10
|
||||
/* f097120: 00000000 */ nop
|
||||
/* f097124: 45020003 */ bc1fl .L0f097134
|
||||
/* f097128: 0005c900 */ sll $t9,$a1,0x4
|
||||
/* f09712c: 24050001 */ addiu $a1,$zero,0x1
|
||||
/* f097130: 0005c900 */ sll $t9,$a1,0x4
|
||||
.L0f097134:
|
||||
/* f097134: 00991821 */ addu $v1,$a0,$t9
|
||||
/* f097138: 00051080 */ sll $v0,$a1,0x2
|
||||
/* f09713c: 00626021 */ addu $t4,$v1,$v0
|
||||
/* f097140: c5800000 */ lwc1 $f0,0x0($t4)
|
||||
/* f097144: c4880028 */ lwc1 $f8,0x28($a0)
|
||||
/* f097148: 4608003c */ c.lt.s $f0,$f8
|
||||
/* f09714c: 00000000 */ nop
|
||||
/* f097150: 45020005 */ bc1fl .L0f097168
|
||||
/* f097154: 01626821 */ addu $t5,$t3,$v0
|
||||
/* f097158: 24830020 */ addiu $v1,$a0,0x20
|
||||
/* f09715c: c4600008 */ lwc1 $f0,0x8($v1)
|
||||
/* f097160: 24020008 */ addiu $v0,$zero,0x8
|
||||
/* f097164: 01626821 */ addu $t5,$t3,$v0
|
||||
.L0f097168:
|
||||
/* f097168: 8da50000 */ lw $a1,0x0($t5)
|
||||
/* f09716c: 00053880 */ sll $a3,$a1,0x2
|
||||
/* f097170: 01677821 */ addu $t7,$t3,$a3
|
||||
/* f097174: 8de60000 */ lw $a2,0x0($t7)
|
||||
/* f097178: 0005c100 */ sll $t8,$a1,0x4
|
||||
/* f09717c: 00985021 */ addu $t2,$a0,$t8
|
||||
/* f097180: 00067100 */ sll $t6,$a2,0x4
|
||||
/* f097184: 008e4821 */ addu $t1,$a0,$t6
|
||||
/* f097188: 00064080 */ sll $t0,$a2,0x2
|
||||
/* f09718c: 0128c821 */ addu $t9,$t1,$t0
|
||||
/* f097190: 01476021 */ addu $t4,$t2,$a3
|
||||
/* f097194: c5920000 */ lwc1 $f18,0x0($t4)
|
||||
/* f097198: c7300000 */ lwc1 $f16,0x0($t9)
|
||||
/* f09719c: afaa0020 */ sw $t2,0x20($sp)
|
||||
/* f0971a0: afa90028 */ sw $t1,0x28($sp)
|
||||
/* f0971a4: 46128100 */ add.s $f4,$f16,$f18
|
||||
/* f0971a8: afa80024 */ sw $t0,0x24($sp)
|
||||
/* f0971ac: afa7002c */ sw $a3,0x2c($sp)
|
||||
/* f0971b0: afa30038 */ sw $v1,0x38($sp)
|
||||
/* f0971b4: 46040181 */ sub.s $f6,$f0,$f4
|
||||
/* f0971b8: afa20034 */ sw $v0,0x34($sp)
|
||||
/* f0971bc: 0c012974 */ jal sqrtf
|
||||
/* f0971c0: 46023300 */ add.s $f12,$f6,$f2
|
||||
/* f0971c4: 3c013f00 */ lui $at,0x3f00
|
||||
/* f0971c8: 44816000 */ mtc1 $at,$f12
|
||||
/* f0971cc: 8fa20034 */ lw $v0,0x34($sp)
|
||||
/* f0971d0: 8fa7002c */ lw $a3,0x2c($sp)
|
||||
/* f0971d4: 46006083 */ div.s $f2,$f12,$f0
|
||||
/* f0971d8: 8fa80024 */ lw $t0,0x24($sp)
|
||||
/* f0971dc: 8fa90028 */ lw $t1,0x28($sp)
|
||||
/* f0971e0: 8faa0020 */ lw $t2,0x20($sp)
|
||||
/* f0971e4: 460c0282 */ mul.s $f10,$f0,$f12
|
||||
/* f0971e8: 8fa30038 */ lw $v1,0x38($sp)
|
||||
/* f0971ec: 02026821 */ addu $t5,$s0,$v0
|
||||
/* f0971f0: 01277021 */ addu $t6,$t1,$a3
|
||||
/* f0971f4: 01487821 */ addu $t7,$t2,$t0
|
||||
/* f0971f8: 0142c021 */ addu $t8,$t2,$v0
|
||||
/* f0971fc: 0067c821 */ addu $t9,$v1,$a3
|
||||
/* f097200: e5aa0004 */ swc1 $f10,0x4($t5)
|
||||
/* f097204: c5e80000 */ lwc1 $f8,0x0($t7)
|
||||
/* f097208: c5d00000 */ lwc1 $f16,0x0($t6)
|
||||
/* f09720c: 02076021 */ addu $t4,$s0,$a3
|
||||
/* f097210: 01226821 */ addu $t5,$t1,$v0
|
||||
/* f097214: 00687821 */ addu $t7,$v1,$t0
|
||||
/* f097218: 02087021 */ addu $t6,$s0,$t0
|
||||
/* f09721c: 46104481 */ sub.s $f18,$f8,$f16
|
||||
/* f097220: 46029102 */ mul.s $f4,$f18,$f2
|
||||
/* f097224: e6040000 */ swc1 $f4,0x0($s0)
|
||||
/* f097228: c72a0000 */ lwc1 $f10,0x0($t9)
|
||||
/* f09722c: c7060000 */ lwc1 $f6,0x0($t8)
|
||||
/* f097230: 460a3200 */ add.s $f8,$f6,$f10
|
||||
/* f097234: 46024402 */ mul.s $f16,$f8,$f2
|
||||
/* f097238: e5900004 */ swc1 $f16,0x4($t4)
|
||||
/* f09723c: c5e40000 */ lwc1 $f4,0x0($t7)
|
||||
/* f097240: c5b20000 */ lwc1 $f18,0x0($t5)
|
||||
/* f097244: 46049180 */ add.s $f6,$f18,$f4
|
||||
/* f097248: 46023282 */ mul.s $f10,$f6,$f2
|
||||
/* f09724c: e5ca0004 */ swc1 $f10,0x4($t6)
|
||||
.L0f097250:
|
||||
/* f097250: 8fbf001c */ lw $ra,0x1c($sp)
|
||||
/* f097254: 8fb00018 */ lw $s0,0x18($sp)
|
||||
/* f097258: 27bd0060 */ addiu $sp,$sp,0x60
|
||||
/* f09725c: 03e00008 */ jr $ra
|
||||
/* f097260: 00000000 */ nop
|
||||
);
|
||||
void quaternion0f097044(Mtxf *mtx, f32 arg1[4])
|
||||
{
|
||||
f32 var1;
|
||||
f32 var2;
|
||||
f32 trace = mtx->m[0][0] + mtx->m[1][1] + mtx->m[2][2] + 1.0f;
|
||||
|
||||
if (trace > 0.01f) {
|
||||
var1 = sqrtf(trace);
|
||||
var2 = 0.5f / var1;
|
||||
|
||||
arg1[0] = var1 * 0.5f;
|
||||
arg1[1] = (mtx->m[1][2] - mtx->m[2][1]) * var2;
|
||||
arg1[2] = (mtx->m[2][0] - mtx->m[0][2]) * var2;
|
||||
arg1[3] = (mtx->m[0][1] - mtx->m[1][0]) * var2;
|
||||
} else {
|
||||
s32 i;
|
||||
s32 j;
|
||||
s32 indices[3] = {1, 2, 0};
|
||||
s32 k;
|
||||
|
||||
i = 0;
|
||||
|
||||
if (mtx->m[0][0] < mtx->m[1][1]) {
|
||||
i = 1;
|
||||
}
|
||||
|
||||
if (mtx->m[i][i] < mtx->m[2][2]) {
|
||||
i = 2;
|
||||
}
|
||||
|
||||
j = indices[i];
|
||||
k = indices[j];
|
||||
|
||||
var1 = sqrtf(mtx->m[i][i] - (mtx->m[j][j] + mtx->m[k][k]) + 1.0f);
|
||||
var2 = 0.5f / var1;
|
||||
|
||||
arg1[i + 1] = var1 * 0.5f;
|
||||
arg1[ 0] = (mtx->m[j][k] - mtx->m[k][j]) * var2;
|
||||
arg1[j + 1] = (mtx->m[i][j] + mtx->m[j][i]) * var2;
|
||||
arg1[k + 1] = (mtx->m[i][k] + mtx->m[k][i]) * var2;
|
||||
}
|
||||
}
|
||||
|
||||
void quaternionToTransformMtx(struct coord *pos, f32 rot[4], Mtxf *mtx)
|
||||
{
|
||||
@@ -257,6 +144,12 @@ void quaternionToTransformMtx(struct coord *pos, f32 rot[4], Mtxf *mtx)
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f0972b8
|
||||
.late_rodata
|
||||
glabel var7f1ab874
|
||||
.word 0xbf7fff58
|
||||
glabel var7f1ab878
|
||||
.word 0x3f7fff58
|
||||
.text
|
||||
/* f0972b8: 27bdffd0 */ addiu $sp,$sp,-48
|
||||
/* f0972bc: afbf0014 */ sw $ra,0x14($sp)
|
||||
/* f0972c0: c4a60004 */ lwc1 $f6,0x4($a1)
|
||||
@@ -416,6 +309,12 @@ glabel func0f0972b8
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f097518
|
||||
.late_rodata
|
||||
glabel var7f1ab87c
|
||||
.word 0xbf7fff58
|
||||
glabel var7f1ab880
|
||||
.word 0x3f7fff58
|
||||
.text
|
||||
/* f097518: 27bdffc8 */ addiu $sp,$sp,-56
|
||||
/* f09751c: afbf0014 */ sw $ra,0x14($sp)
|
||||
/* f097520: c4800000 */ lwc1 $f0,0x0($a0)
|
||||
|
||||
+3
-3
@@ -2207,8 +2207,8 @@ void playerTickCutscene(bool arg0)
|
||||
mtx00016d58(&sp84, 0, 0, 0,
|
||||
-g_Vars.bond->bond2.unk1c.x, -g_Vars.bond->bond2.unk1c.y, -g_Vars.bond->bond2.unk1c.z,
|
||||
g_Vars.bond->bond2.unk28.x, g_Vars.bond->bond2.unk28.y, g_Vars.bond->bond2.unk28.z);
|
||||
func0f097044(&spc4, sp74);
|
||||
func0f097044(&sp84, sp64);
|
||||
quaternion0f097044(&spc4, sp74);
|
||||
quaternion0f097044(&sp84, sp64);
|
||||
quaternion0f0976c0(sp64, sp74);
|
||||
func0f0972b8(sp74, sp64, sp104, sp54);
|
||||
quaternionToMtx(sp54, &sp11c);
|
||||
@@ -4152,7 +4152,7 @@ void playerTick(bool arg0)
|
||||
projectile->speed.z = (projectile->speed.z * newspeed) / prevspeed;
|
||||
|
||||
mtx3ToMtx4(sp2b8, &sp1bc);
|
||||
func0f097044(&sp1bc, sp12c);
|
||||
quaternion0f097044(&sp1bc, sp12c);
|
||||
quaternionMultQuaternion(sp13c, sp12c, sp11c);
|
||||
quaternionToMtx(sp11c, &sp17c);
|
||||
mtx4ToMtx3(&sp17c, sp2b8);
|
||||
|
||||
+3
-3
@@ -24130,7 +24130,7 @@ glabel var7f1ab6dcpf
|
||||
/* f075428: 0c005628 */ jal mtx4RotateVecInPlace
|
||||
/* f07542c: 26050004 */ addiu $a1,$s0,0x4
|
||||
/* f075430: 27a402a0 */ addiu $a0,$sp,0x2a0
|
||||
/* f075434: 0fc25bd9 */ jal func0f097044
|
||||
/* f075434: 0fc25bd9 */ jal quaternion0f097044
|
||||
/* f075438: 27a50270 */ addiu $a1,$sp,0x270
|
||||
/* f07543c: 27a40270 */ addiu $a0,$sp,0x270
|
||||
/* f075440: 27a50260 */ addiu $a1,$sp,0x260
|
||||
@@ -27668,7 +27668,7 @@ glabel var7f1aa438
|
||||
/* f0751a4: 0c0056c4 */ jal mtx4RotateVecInPlace
|
||||
/* f0751a8: 26050004 */ addiu $a1,$s0,0x4
|
||||
/* f0751ac: 27a402a0 */ addiu $a0,$sp,0x2a0
|
||||
/* f0751b0: 0fc25c11 */ jal func0f097044
|
||||
/* f0751b0: 0fc25c11 */ jal quaternion0f097044
|
||||
/* f0751b4: 27a50270 */ addiu $a1,$sp,0x270
|
||||
/* f0751b8: 27a40270 */ addiu $a0,$sp,0x270
|
||||
/* f0751bc: 27a50260 */ addiu $a1,$sp,0x260
|
||||
@@ -31193,7 +31193,7 @@ glabel var7f1aa438
|
||||
/* f073f20: 0c005a80 */ jal mtx4RotateVecInPlace
|
||||
/* f073f24: 26050004 */ addiu $a1,$s0,0x4
|
||||
/* f073f28: 27a402a0 */ addiu $a0,$sp,0x2a0
|
||||
/* f073f2c: 0fc253f5 */ jal func0f097044
|
||||
/* f073f2c: 0fc253f5 */ jal quaternion0f097044
|
||||
/* f073f30: 27a50270 */ addiu $a1,$sp,0x270
|
||||
/* f073f34: 27a40270 */ addiu $a0,$sp,0x270
|
||||
/* f073f38: 27a50260 */ addiu $a1,$sp,0x260
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
void quaternion0f096ca0(struct coord *arg0, f32 quat[4]);
|
||||
void quaternionToMtx(f32 *arg0, Mtxf *arg1);
|
||||
void func0f097044(Mtxf *matrix, f32 arg1[4]);
|
||||
void quaternion0f097044(Mtxf *matrix, f32 arg1[4]);
|
||||
void quaternionToTransformMtx(struct coord *pos, f32 rot[4], Mtxf *matrix);
|
||||
void func0f0972b8(f32 arg0[4], f32 arg1[4], f32 arg2, f32 *arg3);
|
||||
u32 func0f097518(void);
|
||||
|
||||
+1
-1
@@ -728,7 +728,7 @@ void model0001b400(struct modelrenderdata *arg0, struct model *model, struct mod
|
||||
mtx4LoadYRotation(rwdata->chrinfo.unk14, &sp78);
|
||||
mtx4LoadRotation(&sp124, &sp38);
|
||||
mtx00015be0(&sp78, &sp38);
|
||||
func0f097044(&sp38, spec);
|
||||
quaternion0f097044(&sp38, spec);
|
||||
} else {
|
||||
quaternion0f096ca0(&sp124, spec);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user