From ffafd065619c1950d3e51a857f4c6ff90985ddd9 Mon Sep 17 00:00:00 2001 From: roeming Date: Sun, 20 Jul 2025 15:17:45 -0400 Subject: [PATCH] matching and linking new dataobjects --- config/GAFE01_00/config.yml | 464 +++++++++++++++++++++++++++- config/GAFE01_00/foresta/splits.txt | 250 ++++++++++++++- configure.py | 125 ++++++++ src/data/model/mFM_obj_01_zassou.c | 8 + src/data/model/obj_a_01_flower.c | 8 + src/data/model/obj_cedar3.c | 22 ++ src/data/model/obj_cedar4.c | 22 ++ src/data/model/obj_cedar5.c | 24 ++ src/data/model/obj_crack.c | 24 ++ src/data/model/obj_cstump3.c | 22 ++ src/data/model/obj_cstump4.c | 22 ++ src/data/model/obj_cstump5.c | 26 ++ src/data/model/obj_fenceL_shadow.c | 24 ++ src/data/model/obj_fenceS_shadow.c | 22 ++ src/data/model/obj_gold_01.c | 8 + src/data/model/obj_hole.c | 297 ++++++++++++++++++ src/data/model/obj_hole_pal.c | 14 + src/data/model/obj_melody.c | 20 ++ src/data/model/obj_notice.c | 26 ++ src/data/model/obj_s_cedar2.c | 24 ++ src/data/model/obj_s_cedar3.c | 45 +++ src/data/model/obj_s_cedar4.c | 47 +++ src/data/model/obj_s_cedar5.c | 49 +++ src/data/model/obj_s_cedar_baby.c | 27 ++ src/data/model/obj_s_cedar_dead.c | 27 ++ src/data/model/obj_s_cstump2.c | 24 ++ src/data/model/obj_s_cstump3.c | 24 ++ src/data/model/obj_s_cstump4.c | 28 ++ src/data/model/obj_s_cstump5.c | 24 ++ src/data/model/obj_s_fenceL.c | 30 ++ src/data/model/obj_s_fenceS.c | 24 ++ src/data/model/obj_s_honeycomb.c | 42 +++ src/data/model/obj_s_melody.c | 31 ++ src/data/model/obj_s_notice.c | 31 ++ src/data/model/obj_zassou_a.c | 25 ++ src/data/model/obj_zassou_b.c | 16 + src/data/model/obj_zassou_c.c | 16 + tools/converters/assetdis.py | 15 +- tools/converters/gfxdis.py | 7 +- 39 files changed, 1974 insertions(+), 10 deletions(-) create mode 100644 src/data/model/mFM_obj_01_zassou.c create mode 100644 src/data/model/obj_a_01_flower.c create mode 100644 src/data/model/obj_cedar3.c create mode 100644 src/data/model/obj_cedar4.c create mode 100644 src/data/model/obj_cedar5.c create mode 100644 src/data/model/obj_crack.c create mode 100644 src/data/model/obj_cstump3.c create mode 100644 src/data/model/obj_cstump4.c create mode 100644 src/data/model/obj_cstump5.c create mode 100644 src/data/model/obj_fenceL_shadow.c create mode 100644 src/data/model/obj_fenceS_shadow.c create mode 100644 src/data/model/obj_gold_01.c create mode 100644 src/data/model/obj_hole.c create mode 100644 src/data/model/obj_hole_pal.c create mode 100644 src/data/model/obj_melody.c create mode 100644 src/data/model/obj_notice.c create mode 100644 src/data/model/obj_s_cedar2.c create mode 100644 src/data/model/obj_s_cedar3.c create mode 100644 src/data/model/obj_s_cedar4.c create mode 100644 src/data/model/obj_s_cedar5.c create mode 100644 src/data/model/obj_s_cedar_baby.c create mode 100644 src/data/model/obj_s_cedar_dead.c create mode 100644 src/data/model/obj_s_cstump2.c create mode 100644 src/data/model/obj_s_cstump3.c create mode 100644 src/data/model/obj_s_cstump4.c create mode 100644 src/data/model/obj_s_cstump5.c create mode 100644 src/data/model/obj_s_fenceL.c create mode 100644 src/data/model/obj_s_fenceS.c create mode 100644 src/data/model/obj_s_honeycomb.c create mode 100644 src/data/model/obj_s_melody.c create mode 100644 src/data/model/obj_s_notice.c create mode 100644 src/data/model/obj_zassou_a.c create mode 100644 src/data/model/obj_zassou_b.c create mode 100644 src/data/model/obj_zassou_c.c diff --git a/config/GAFE01_00/config.yml b/config/GAFE01_00/config.yml index 9f78c812..1cf0476e 100644 --- a/config/GAFE01_00/config.yml +++ b/config/GAFE01_00/config.yml @@ -25543,4 +25543,466 @@ modules: binary: assets/obj_f_tree5_v.bin header: assets/obj_f_tree5_v.inc header_type: none - custom_type: vtx \ No newline at end of file + custom_type: vtx + + - symbol: mFM_obj_a_01_flower_pal + binary: assets/mFM_obj_a_01_flower_pal.bin + header: assets/mFM_obj_a_01_flower_pal.inc + header_type: none + custom_type: pal16 + + - symbol: mFM_obj_gold_01_pal_dol + binary: assets/mFM_obj_gold_01_pal_dol.bin + header: assets/mFM_obj_gold_01_pal_dol.inc + header_type: none + custom_type: pal16 + + - symbol: mFM_obj_01_zassou_pal + binary: assets/mFM_obj_01_zassou_pal.bin + header: assets/mFM_obj_01_zassou_pal.inc + header_type: none + custom_type: pal16 + + - symbol: obj_cedar3_shadow_v + binary: assets/obj_cedar3_shadow_v.bin + header: assets/obj_cedar3_shadow_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_cedar4_shadow_v + binary: assets/obj_cedar4_shadow_v.bin + header: assets/obj_cedar4_shadow_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_cstump3_shadow_v + binary: assets/obj_cstump3_shadow_v.bin + header: assets/obj_cstump3_shadow_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_cedar5_shadow_v + binary: assets/obj_cedar5_shadow_v.bin + header: assets/obj_cedar5_shadow_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_cedar_shadow_tex + binary: assets/obj_cedar_shadow_tex.bin + header: assets/obj_cedar_shadow_tex.inc + header_type: raw + + - symbol: obj_cstump4_shadow_v + binary: assets/obj_cstump4_shadow_v.bin + header: assets/obj_cstump4_shadow_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_cstump_shadow_tex + binary: assets/obj_cstump_shadow_tex.bin + header: assets/obj_cstump_shadow_tex.inc + header_type: raw + + - symbol: obj_cstump5_shadow_v + binary: assets/obj_cstump5_shadow_v.bin + header: assets/obj_cstump5_shadow_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_s_cedar_baby_tex + binary: assets/obj_s_cedar_baby_tex.bin + header: assets/obj_s_cedar_baby_tex.inc + header_type: raw + + - symbol: obj_s_cedar1_v + binary: assets/obj_s_cedar1_v.bin + header: assets/obj_s_cedar1_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_s_cedar_dead_tex + binary: assets/obj_s_cedar_dead_tex.bin + header: assets/obj_s_cedar_dead_tex.inc + header_type: raw + + - symbol: obj_s_cedar1_dead_v + binary: assets/obj_s_cedar1_dead_v.bin + header: assets/obj_s_cedar1_dead_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_s_cedar2_v + binary: assets/obj_s_cedar2_v.bin + header: assets/obj_s_cedar2_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_s_cedar_leaf_tex + binary: assets/obj_s_cedar_leaf_tex.bin + header: assets/obj_s_cedar_leaf_tex.inc + header_type: raw + + - symbol: obj_s_cedar_young_tex + binary: assets/obj_s_cedar_young_tex.bin + header: assets/obj_s_cedar_young_tex.inc + header_type: raw + + - symbol: obj_s_cedar3_v + binary: assets/obj_s_cedar3_v.bin + header: assets/obj_s_cedar3_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_s_cedar_trunk_tex + binary: assets/obj_s_cedar_trunk_tex.bin + header: assets/obj_s_cedar_trunk_tex.inc + header_type: raw + + - symbol: obj_s_cedar4_v + binary: assets/obj_s_cedar4_v.bin + header: assets/obj_s_cedar4_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_s_cedar5_v + binary: assets/obj_s_cedar5_v.bin + header: assets/obj_s_cedar5_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_s_cstump2_v + binary: assets/obj_s_cstump2_v.bin + header: assets/obj_s_cstump2_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_s_cstump3_v + binary: assets/obj_s_cstump3_v.bin + header: assets/obj_s_cstump3_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_s_cedar_stump_tex + binary: assets/obj_s_cedar_stump_tex.bin + header: assets/obj_s_cedar_stump_tex.inc + header_type: raw + + - symbol: obj_s_cstump4_v + binary: assets/obj_s_cstump4_v.bin + header: assets/obj_s_cstump4_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_s_cstump5_v + binary: assets/obj_s_cstump5_v.bin + header: assets/obj_s_cstump5_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_crack_tex + binary: assets/obj_crack_tex.bin + header: assets/obj_crack_tex.inc + header_type: raw + + - symbol: obj_fence_pal + binary: assets/obj_fence_pal.bin + header: assets/obj_fence_pal.inc + header_type: none + custom_type: pal16 + + - symbol: obj_s_fence_tex + binary: assets/obj_s_fence_tex.bin + header: assets/obj_s_fence_tex.inc + header_type: raw + + - symbol: obj_s_fenceL_v + binary: assets/obj_s_fenceL_v.bin + header: assets/obj_s_fenceL_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_fence_shadow_tex + binary: assets/obj_fence_shadow_tex.bin + header: assets/obj_fence_shadow_tex.inc + header_type: raw + + - symbol: obj_fenceL_shadow_v + binary: assets/obj_fenceL_shadow_v.bin + header: assets/obj_fenceL_shadow_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_s_fenceS_v + binary: assets/obj_s_fenceS_v.bin + header: assets/obj_s_fenceS_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_fenceS_shadow_v + binary: assets/obj_fenceS_shadow_v.bin + header: assets/obj_fenceS_shadow_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_zassou_tex + binary: assets/obj_zassou_tex.bin + header: assets/obj_zassou_tex.inc + header_type: raw + + - symbol: obj_zassou_a_v + binary: assets/obj_zassou_a_v.bin + header: assets/obj_zassou_a_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_zassou_b_v + binary: assets/obj_zassou_b_v.bin + header: assets/obj_zassou_b_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_zassou_c_v + binary: assets/obj_zassou_c_v.bin + header: assets/obj_zassou_c_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole_tex + binary: assets/obj_hole_tex.bin + header: assets/obj_hole_tex.inc + header_type: raw + + - symbol: obj_hole0_v + binary: assets/obj_hole0_v.bin + header: assets/obj_hole0_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole1_v + binary: assets/obj_hole1_v.bin + header: assets/obj_hole1_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole2_v + binary: assets/obj_hole2_v.bin + header: assets/obj_hole2_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole3_v + binary: assets/obj_hole3_v.bin + header: assets/obj_hole3_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole4_v + binary: assets/obj_hole4_v.bin + header: assets/obj_hole4_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole5_v + binary: assets/obj_hole5_v.bin + header: assets/obj_hole5_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole6_v + binary: assets/obj_hole6_v.bin + header: assets/obj_hole6_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole7_v + binary: assets/obj_hole7_v.bin + header: assets/obj_hole7_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole8_v + binary: assets/obj_hole8_v.bin + header: assets/obj_hole8_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole9_v + binary: assets/obj_hole9_v.bin + header: assets/obj_hole9_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole10_v + binary: assets/obj_hole10_v.bin + header: assets/obj_hole10_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole11_v + binary: assets/obj_hole11_v.bin + header: assets/obj_hole11_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole12_v + binary: assets/obj_hole12_v.bin + header: assets/obj_hole12_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole13_v + binary: assets/obj_hole13_v.bin + header: assets/obj_hole13_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole14_v + binary: assets/obj_hole14_v.bin + header: assets/obj_hole14_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole15_v + binary: assets/obj_hole15_v.bin + header: assets/obj_hole15_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole16_v + binary: assets/obj_hole16_v.bin + header: assets/obj_hole16_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole17_v + binary: assets/obj_hole17_v.bin + header: assets/obj_hole17_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole18_v + binary: assets/obj_hole18_v.bin + header: assets/obj_hole18_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole19_v + binary: assets/obj_hole19_v.bin + header: assets/obj_hole19_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole20_v + binary: assets/obj_hole20_v.bin + header: assets/obj_hole20_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole21_v + binary: assets/obj_hole21_v.bin + header: assets/obj_hole21_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole22_v + binary: assets/obj_hole22_v.bin + header: assets/obj_hole22_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole23_v + binary: assets/obj_hole23_v.bin + header: assets/obj_hole23_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_hole24_v + binary: assets/obj_hole24_v.bin + header: assets/obj_hole24_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_b_hole_pal + binary: assets/obj_b_hole_pal.bin + header: assets/obj_b_hole_pal.inc + header_type: none + custom_type: pal16 + + - symbol: obj_g_hole_pal + binary: assets/obj_g_hole_pal.bin + header: assets/obj_g_hole_pal.inc + header_type: none + custom_type: pal16 + + - symbol: obj_s_honeycomb_pal + binary: assets/obj_s_honeycomb_pal.bin + header: assets/obj_s_honeycomb_pal.inc + header_type: none + custom_type: pal16 + + - symbol: obj_s_honeycomb_tex + binary: assets/obj_s_honeycomb_tex.bin + header: assets/obj_s_honeycomb_tex.inc + header_type: raw + + - symbol: obj_s_honeycomb_v + binary: assets/obj_s_honeycomb_v.bin + header: assets/obj_s_honeycomb_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_melody_pal!.data:0x105200 + binary: assets/obj_s_melody/obj_melody_pal.bin + header: assets/obj_s_melody/obj_melody_pal.inc + header_type: none + custom_type: pal16 + + - symbol: obj_s_melody_tex + binary: assets/obj_s_melody_tex.bin + header: assets/obj_s_melody_tex.inc + header_type: raw + + - symbol: obj_s_melody_v + binary: assets/obj_s_melody_v.bin + header: assets/obj_s_melody_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_melody_shadow_tex + binary: assets/obj_melody_shadow_tex.bin + header: assets/obj_melody_shadow_tex.inc + header_type: raw + + - symbol: obj_melody_shadow_v + binary: assets/obj_melody_shadow_v.bin + header: assets/obj_melody_shadow_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_notice_pal!.data:0x105d80 + binary: assets/obj_s_notice/obj_notice_pal.bin + header: assets/obj_s_notice/obj_notice_pal.inc + header_type: none + custom_type: pal16 + + - symbol: obj_s_notice_tex + binary: assets/obj_s_notice_tex.bin + header: assets/obj_s_notice_tex.inc + header_type: raw + + - symbol: obj_s_notice_v + binary: assets/obj_s_notice_v.bin + header: assets/obj_s_notice_v.inc + header_type: none + custom_type: vtx + + - symbol: obj_notice_shadow_tex + binary: assets/obj_notice_shadow_tex.bin + header: assets/obj_notice_shadow_tex.inc + header_type: raw + + - symbol: obj_notice_shadow_v + binary: assets/obj_notice_shadow_v.bin + header: assets/obj_notice_shadow_v.inc + header_type: none + custom_type: vtx diff --git a/config/GAFE01_00/foresta/splits.txt b/config/GAFE01_00/foresta/splits.txt index b7061eec..545ce852 100644 --- a/config/GAFE01_00/foresta/splits.txt +++ b/config/GAFE01_00/foresta/splits.txt @@ -3747,30 +3747,76 @@ data/model/f_tree5.c: data/field/bg/acre/bg_data.c: .data start:0x000B0B48 end:0x000FE340 -data/dataobject/dataobject_FE340: +data/model/obj_a_01_flower.c: .data start:0x000FE340 end:0x000FE6A0 + +data/model/obj_gold_01.c: .data start:0x000FE6A0 end:0x000FE860 + +data/model/mFM_obj_01_zassou.c: .data start:0x000FE860 end:0x000FE980 + +data/model/obj_cedar3.c: .data start:0x000FE980 end:0x000FE9F0 + +data/model/obj_cedar4.c: .data start:0x000FE9F0 end:0x000FEA60 + +data/model/obj_cedar5.c: .data start:0x000FEA60 end:0x000FECD0 + +data/model/obj_cstump3.c: .data start:0x000FECD0 end:0x000FED40 + +data/model/obj_cstump4.c: .data start:0x000FED40 end:0x000FEDC0 + +data/model/obj_cstump5.c: .data start:0x000FEDC0 end:0x000FF040 + +data/model/obj_s_cedar_baby.c: .data start:0x000FF040 end:0x000FF240 + +data/model/obj_s_cedar_dead.c: .data start:0x000FF240 end:0x000FF3B8 + +data/model/obj_s_cedar2.c: .data start:0x000FF3B8 end:0x000FF480 + +data/model/obj_s_cedar3.c: .data start:0x000FF480 end:0x00100700 + +data/model/obj_s_cedar4.c: .data start:0x00100700 end:0x00101308 + +data/model/obj_s_cedar5.c: .data start:0x00101308 end:0x00101880 + +data/model/obj_s_cstump2.c: .data start:0x00101880 end:0x00101930 + +data/model/obj_s_cstump3.c: .data start:0x00101930 end:0x001019E0 + +data/model/obj_s_cstump4.c: .data start:0x001019E0 end:0x00101E90 + +data/model/obj_s_cstump5.c: .data start:0x00101E90 end:0x00101F40 + +data/model/obj_crack.c: .data start:0x00101F40 end:0x00102180 + +data/model/obj_s_fenceL.c: .data start:0x00102180 end:0x00102620 + +data/model/obj_fenceL_shadow.c: .data start:0x00102620 end:0x00102890 + +data/model/obj_s_fenceS.c: .data start:0x00102890 end:0x00102910 + +data/model/obj_fenceS_shadow.c: .data start:0x00102910 end:0x00102980 data/field/bg/flower/obj_flower.c: @@ -3779,107 +3825,307 @@ data/field/bg/flower/obj_flower.c: data/field/bg/flower/obj_flower_leaf.c: .data start:0x001033C0 end:0x00103C40 -data/dataobject/dataobject_103C40: +data/model/obj_zassou_a.c: .data start:0x00103C40 end:0x001040B8 + +data/model/obj_zassou_b.c: .data start:0x001040B8 end:0x00104110 + +data/model/obj_zassou_c.c: .data start:0x00104110 end:0x00104180 + +data/model/obj_hole.c: .data start:0x00104180 end:0x00104EC0 + +data/model/obj_hole_pal.c: .data start:0x00104EC0 end:0x00104F00 + +data/model/obj_s_honeycomb.c: .data start:0x00104F00 end:0x00105200 + +data/model/obj_s_melody.c: .data start:0x00105200 end:0x00105B00 + +data/model/obj_melody.c: .data start:0x00105B00 end:0x00105D80 + +data/model/obj_s_notice.c: .data start:0x00105D80 end:0x00106680 + +data/model/obj_notice.c: .data start:0x00106680 end:0x00106900 + +data/model/obj_palm3.c: .data start:0x00106900 end:0x00106B70 + +data/model/obj_palm4.c: .data start:0x00106B70 end:0x00106BE0 + +data/model/obj_palm5.c: .data start:0x00106BE0 end:0x00106C60 + +data/model/obj_pstump3.c: .data start:0x00106C60 end:0x00106EE0 + +data/model/obj_pstump4.c: .data start:0x00106EE0 end:0x00107160 + +data/model/obj_pstump5.c: .data start:0x00107160 end:0x001073E0 + +data/model/obj_w_palm.c: .data start:0x001073E0 end:0x001075E0 + +data/model/obj_w_palm1.c: .data start:0x001075E0 end:0x00107760 + +data/model/obj_s_palm2.c: .data start:0x00107760 end:0x00108020 + +data/model/obj_s_palm3.c: .data start:0x00108020 end:0x00109220 + +data/model/obj_s_palm4.c: .data start:0x00109220 end:0x0010A520 + +data/model/obj_s_palm5.c: .data start:0x0010A520 end:0x0010B960 + +data/model/obj_s_palm5_coco.c: .data start:0x0010B960 end:0x0010BA00 + +data/model/obj_s_pstump2.c: .data start:0x0010BA00 end:0x0010C2C0 + +data/model/obj_s_pstump3.c: .data start:0x0010C2C0 end:0x0010CB80 + +data/model/obj_s_pstump4.c: .data start:0x0010CB80 end:0x0010D040 + +data/model/obj_s_pstump5.c: .data start:0x0010D040 end:0x0010D500 + +data/model/obj_s_sightmap.c: .data start:0x0010D500 end:0x0010DE00 + +data/model/obj_sightmap_shadow.c: .data start:0x0010DE00 end:0x0010E080 + +data/model/obj_s_stoneA.c: .data start:0x0010E080 end:0x0010E3A0 + +data/model/obj_stoneA_shadow.c: .data start:0x0010E3A0 end:0x0010E500 + +data/model/obj_s_stoneB.c: .data start:0x0010E500 end:0x0010E5F0 + +data/model/obj_stoneB_shadow.c: .data start:0x0010E5F0 end:0x0010E6D0 + +data/model/obj_s_stoneC.c: .data start:0x0010E6D0 end:0x0010E7C0 + +data/model/obj_stoneC_shadow.c: .data start:0x0010E7C0 end:0x0010E8A0 + +data/model/obj_s_stoneD.c: .data start:0x0010E8A0 end:0x0010E9C8 + +data/model/obj_stoneD_shadow.c: .data start:0x0010E9C8 end:0x0010EA60 + +data/model/obj_s_stoneE.c: .data start:0x0010EA60 end:0x0010EB88 + +data/model/obj_stoneE_shadow.c: .data start:0x0010EB88 end:0x0010EC48 + +data/model/obj_s_stump2.c: .data start:0x0010EC48 end:0x0010ED18 + +data/model/obj_s_stump3.c: .data start:0x0010ED18 end:0x0010EE00 + +data/model/obj_stump3_shadow.c: .data start:0x0010EE00 end:0x0010F080 + +data/model/obj_s_stump4.c: .data start:0x0010F080 end:0x0010F550 + +data/model/obj_stump4_shadow.c: .data start:0x0010F550 end:0x0010F5C0 + +data/model/obj_s_stump5.c: .data start:0x0010F5C0 end:0x0010F690 + +data/model/obj_stump5_shadow.c: .data start:0x0010F690 end:0x0010F700 + +data/model/obj_item_tane.c: .data start:0x0010F700 end:0x0010F820 + +data/model/obj_s_tree1.c: .data start:0x0010F820 end:0x0010FA40 + +data/model/obj_s_tree_dead.c: .data start:0x0010FA40 end:0x0010FBE0 + +data/model/obj_s_tree2.c: .data start:0x0010FBE0 end:0x001104A0 + +data/model/obj_s_tree3.c: .data start:0x001104A0 end:0x00110E00 + +data/model/obj_tree_shadow.c: .data start:0x00110E00 end:0x00111080 + +data/model/obj_s_tree4.c: .data start:0x00111080 end:0x00111A18 + +data/model/obj_tree4_shadow.c: .data start:0x00111A18 end:0x00111AA0 + +data/model/obj_s_tree5.c: .data start:0x00111AA0 end:0x00111CD0 + +data/model/obj_s_tree5_apple.c: .data start:0x00111CD0 end:0x00111DB0 + +data/model/obj_tree5_shadow.c: .data start:0x00111DB0 end:0x00111E20 + +data/model/mFm_obj_palm_01.c: .data start:0x00111E20 end:0x00111FE0 + +data/model/mFm_obj_tree_01.c: .data start:0x00111FE0 end:0x001121A0 + +data/model/mFm_obj_tree_01_dol.c: .data start:0x001121A0 end:0x00112360 + +data/model/obj_w_cedar1.c: .data start:0x00112360 end:0x00112560 + +data/model/obj_w_cedar1_dead.c: .data start:0x00112560 end:0x001126D8 + +data/model/obj_w_cedar2.c: .data start:0x001126D8 end:0x001127A0 + +data/model/obj_w_cedar3.c: .data start:0x001127A0 end:0x00113A20 + +data/model/obj_w_cedar4.c: .data start:0x00113A20 end:0x00114628 + +data/model/obj_w_cedar5.c: .data start:0x00114628 end:0x00114BA0 + +data/model/obj_w_cstump2.c: .data start:0x00114BA0 end:0x00114C50 + +data/model/obj_w_cstump3.c: .data start:0x00114C50 end:0x00114D00 + +data/model/obj_w_cstump4.c: .data start:0x00114D00 end:0x001151B0 + +data/model/obj_w_cstump5.c: .data start:0x001151B0 end:0x00115260 + +data/model/obj_w_fenceL.c: .data start:0x00115260 end:0x001156E0 + +data/model/obj_w_fenceS.c: .data start:0x001156E0 end:0x00115760 + +data/model/obj_w_honeycomb.c: .data start:0x00115760 end:0x00115A60 + +data/model/obj_w_melody.c: .data start:0x00115A60 end:0x00116360 + +data/model/obj_w_notice.c: .data start:0x00116360 end:0x00116C60 + +data/model/obj_s_palm1.c: .data start:0x00116C60 end:0x00116E60 + +data/model/obj_w_palm1_dead.c: .data start:0x00116E60 end:0x00116FE0 + +data/model/obj_w_palm2.c: .data start:0x00116FE0 end:0x001178A0 + +data/model/obj_w_palm3.c: .data start:0x001178A0 end:0x00118AA0 + +data/model/obj_w_palm4.c: .data start:0x00118AA0 end:0x00119DC0 + +data/model/obj_w_palm5.c: .data start:0x00119DC0 end:0x0011B200 + +data/model/obj_w_palm5_coco.c: .data start:0x0011B200 end:0x0011B2A0 + +data/model/obj_w_pstump2.c: .data start:0x0011B2A0 end:0x0011BB60 + +data/model/obj_w_pstump3.c: .data start:0x0011BB60 end:0x0011C420 + +data/model/obj_w_pstump4.c: .data start:0x0011C420 end:0x0011C8E0 + +data/model/obj_w_pstump5.c: .data start:0x0011C8E0 end:0x0011CDA0 + +data/model/obj_w_sightmap.c: .data start:0x0011CDA0 end:0x0011D6A0 + +data/model/obj_w_stoneA.c: .data start:0x0011D6A0 end:0x0011D9B0 + +data/model/obj_w_stoneB.c: .data start:0x0011D9B0 end:0x0011DAA0 + +data/model/obj_w_stoneC.c: .data start:0x0011DAA0 end:0x0011DB90 + +data/model/obj_w_stoneD.c: .data start:0x0011DB90 end:0x0011DCB8 + +data/model/obj_w_stoneE.c: .data start:0x0011DCB8 end:0x0011DDE0 + +data/model/obj_w_tree1.c: .data start:0x0011DDE0 end:0x0011E000 + +data/model/obj_w_tree1_dead.c: .data start:0x0011E000 end:0x0011E1A0 + +data/model/obj_w_tree2.c: .data start:0x0011E1A0 end:0x0011EA80 + +data/model/obj_w_tree3.c: .data start:0x0011EA80 end:0x0011F400 + +data/model/obj_w_tree4.c: .data start:0x0011F400 end:0x0011FDD8 + +data/model/obj_w_tree5.c: .data start:0x0011FDD8 end:0x00120020 + +data/model/obj_x_cedar5.c: .data start:0x00120020 end:0x00120488 + +data/model/obj_x_honeycomb.c: .data start:0x00120488 end:0x00120780 + +data/model/obj_x_tree5.c: .data start:0x00120780 end:0x00120AA8 data/npc/model/mdl/pbr_1.c: diff --git a/configure.py b/configure.py index 764bc6b7..4856f14e 100644 --- a/configure.py +++ b/configure.py @@ -2646,6 +2646,131 @@ config.libs = [ Object(Matching, "data/model/f_tree3.c"), Object(Matching, "data/model/f_tree4.c"), Object(Matching, "data/model/f_tree5.c"), + Object(Matching, "data/model/obj_a_01_flower.c"), + Object(Matching, "data/model/obj_gold_01.c"), + Object(Matching, "data/model/mFM_obj_01_zassou.c"), + Object(Matching, "data/model/obj_cedar3.c"), + Object(Matching, "data/model/obj_cedar4.c"), + Object(Matching, "data/model/obj_cstump3.c"), + Object(Matching, "data/model/obj_cedar5.c"), + Object(Matching, "data/model/obj_cstump4.c"), + Object(Matching, "data/model/obj_cstump5.c"), + Object(Matching, "data/model/obj_s_cedar_baby.c"), + Object(Matching, "data/model/obj_s_cedar_dead.c"), + Object(Matching, "data/model/obj_s_cedar2.c"), + Object(Matching, "data/model/obj_s_cedar3.c"), + Object(Matching, "data/model/obj_s_cedar4.c"), + Object(Matching, "data/model/obj_s_cedar5.c"), + Object(Matching, "data/model/obj_s_cstump2.c"), + Object(Matching, "data/model/obj_s_cstump3.c"), + Object(Matching, "data/model/obj_s_cstump4.c"), + Object(Matching, "data/model/obj_s_cstump5.c"), + Object(Matching, "data/model/obj_crack.c"), + Object(Matching, "data/model/obj_s_fenceL.c"), + Object(Matching, "data/model/obj_fenceL_shadow.c"), + Object(Matching, "data/model/obj_s_fenceS.c"), + Object(Matching, "data/model/obj_fenceS_shadow.c"), + Object(Matching, "data/model/obj_zassou_a.c"), + Object(Matching, "data/model/obj_zassou_b.c"), + Object(Matching, "data/model/obj_zassou_c.c"), + Object(Matching, "data/model/obj_hole.c"), + Object(Matching, "data/model/obj_hole_pal.c"), + Object(Matching, "data/model/obj_s_honeycomb.c"), + Object(Matching, "data/model/obj_s_melody.c"), + Object(Matching, "data/model/obj_melody.c"), + Object(Matching, "data/model/obj_s_notice.c"), + Object(Matching, "data/model/obj_notice.c"), + Object(NonMatching, "data/model/obj_palm3.c"), + Object(NonMatching, "data/model/obj_palm4.c"), + Object(NonMatching, "data/model/obj_palm5.c"), + Object(NonMatching, "data/model/obj_pstump3.c"), + Object(NonMatching, "data/model/obj_pstump4.c"), + Object(NonMatching, "data/model/obj_pstump5.c"), + Object(NonMatching, "data/model/obj_w_palm.c"), + Object(NonMatching, "data/model/obj_w_palm1.c"), + Object(NonMatching, "data/model/obj_s_palm2.c"), + Object(NonMatching, "data/model/obj_s_palm3.c"), + Object(NonMatching, "data/model/obj_s_palm4.c"), + Object(NonMatching, "data/model/obj_s_palm5.c"), + Object(NonMatching, "data/model/obj_s_palm5_coco.c"), + Object(NonMatching, "data/model/obj_s_pstump2.c"), + Object(NonMatching, "data/model/obj_s_pstump3.c"), + Object(NonMatching, "data/model/obj_s_pstump4.c"), + Object(NonMatching, "data/model/obj_s_pstump5.c"), + Object(NonMatching, "data/model/obj_s_sightmap.c"), + Object(NonMatching, "data/model/obj_sightmap_shadow.c"), + Object(NonMatching, "data/model/obj_s_stoneA.c"), + Object(NonMatching, "data/model/obj_stoneA_shadow.c"), + Object(NonMatching, "data/model/obj_s_stoneB.c"), + Object(NonMatching, "data/model/obj_stoneB_shadow.c"), + Object(NonMatching, "data/model/obj_s_stoneC.c"), + Object(NonMatching, "data/model/obj_stoneC_shadow.c"), + Object(NonMatching, "data/model/obj_s_stoneD.c"), + Object(NonMatching, "data/model/obj_stoneD_shadow.c"), + Object(NonMatching, "data/model/obj_s_stoneE.c"), + Object(NonMatching, "data/model/obj_stoneE_shadow.c"), + Object(NonMatching, "data/model/obj_s_stump2.c"), + Object(NonMatching, "data/model/obj_s_stump3.c"), + Object(NonMatching, "data/model/obj_stump3_shadow.c"), + Object(NonMatching, "data/model/obj_s_stump4.c"), + Object(NonMatching, "data/model/obj_stump4_shadow.c"), + Object(NonMatching, "data/model/obj_s_stump5.c"), + Object(NonMatching, "data/model/obj_stump5_shadow.c"), + Object(NonMatching, "data/model/obj_item_tane.c"), + Object(NonMatching, "data/model/obj_s_tree1.c"), + Object(NonMatching, "data/model/obj_s_tree_dead.c"), + Object(NonMatching, "data/model/obj_s_tree2.c"), + Object(NonMatching, "data/model/obj_s_tree3.c"), + Object(NonMatching, "data/model/obj_tree_shadow.c"), + Object(NonMatching, "data/model/obj_s_tree4.c"), + Object(NonMatching, "data/model/obj_tree4_shadow.c"), + Object(NonMatching, "data/model/obj_s_tree5.c"), + Object(NonMatching, "data/model/obj_s_tree5_apple.c"), + Object(NonMatching, "data/model/obj_tree5_shadow.c"), + Object(NonMatching, "data/model/mFm_obj_palm_01.c"), + Object(NonMatching, "data/model/mFm_obj_tree_01.c"), + Object(NonMatching, "data/model/mFm_obj_tree_01_dol.c"), + Object(NonMatching, "data/model/obj_w_cedar1.c"), + Object(NonMatching, "data/model/obj_w_cedar1_dead.c"), + Object(NonMatching, "data/model/obj_w_cedar2.c"), + Object(NonMatching, "data/model/obj_w_cedar3.c"), + Object(NonMatching, "data/model/obj_w_cedar4.c"), + Object(NonMatching, "data/model/obj_w_cedar5.c"), + Object(NonMatching, "data/model/obj_w_cstump2.c"), + Object(NonMatching, "data/model/obj_w_cstump3.c"), + Object(NonMatching, "data/model/obj_w_cstump4.c"), + Object(NonMatching, "data/model/obj_w_cstump5.c"), + Object(NonMatching, "data/model/obj_w_fenceL.c"), + Object(NonMatching, "data/model/obj_w_fenceS.c"), + Object(NonMatching, "data/model/obj_w_honeycomb.c"), + Object(NonMatching, "data/model/obj_w_melody.c"), + Object(NonMatching, "data/model/obj_w_notice.c"), + Object(NonMatching, "data/model/obj_s_palm1.c"), + Object(NonMatching, "data/model/obj_w_palm1_dead.c"), + Object(NonMatching, "data/model/obj_w_palm2.c"), + Object(NonMatching, "data/model/obj_w_palm3.c"), + Object(NonMatching, "data/model/obj_w_palm4.c"), + Object(NonMatching, "data/model/obj_w_palm5.c"), + Object(NonMatching, "data/model/obj_w_palm5_coco.c"), + Object(NonMatching, "data/model/obj_w_pstump2.c"), + Object(NonMatching, "data/model/obj_w_pstump3.c"), + Object(NonMatching, "data/model/obj_w_pstump4.c"), + Object(NonMatching, "data/model/obj_w_pstump5.c"), + Object(NonMatching, "data/model/obj_w_sightmap.c"), + Object(NonMatching, "data/model/obj_w_stoneA.c"), + Object(NonMatching, "data/model/obj_w_stoneB.c"), + Object(NonMatching, "data/model/obj_w_stoneC.c"), + Object(NonMatching, "data/model/obj_w_stoneD.c"), + Object(NonMatching, "data/model/obj_w_stoneE.c"), + Object(NonMatching, "data/model/obj_w_tree1.c"), + Object(NonMatching, "data/model/obj_w_tree1_dead.c"), + Object(NonMatching, "data/model/obj_w_tree2.c"), + Object(NonMatching, "data/model/obj_w_tree3.c"), + Object(NonMatching, "data/model/obj_w_tree4.c"), + Object(NonMatching, "data/model/obj_w_tree5.c"), + Object(NonMatching, "data/model/obj_x_cedar5.c"), + Object(NonMatching, "data/model/obj_x_honeycomb.c"), + Object(NonMatching, "data/model/obj_x_tree5.c"), ], ), ] diff --git a/src/data/model/mFM_obj_01_zassou.c b/src/data/model/mFM_obj_01_zassou.c new file mode 100644 index 00000000..12f9d790 --- /dev/null +++ b/src/data/model/mFM_obj_01_zassou.c @@ -0,0 +1,8 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +u16 mFM_obj_01_zassou_pal[] ATTRIBUTE_ALIGN(32) = { +#include "assets/mFM_obj_01_zassou_pal.inc" +}; diff --git a/src/data/model/obj_a_01_flower.c b/src/data/model/obj_a_01_flower.c new file mode 100644 index 00000000..6c7328fc --- /dev/null +++ b/src/data/model/obj_a_01_flower.c @@ -0,0 +1,8 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +u16 mFM_obj_a_01_flower_pal[] ATTRIBUTE_ALIGN(32) = { +#include "assets/mFM_obj_a_01_flower_pal.inc" +}; diff --git a/src/data/model/obj_cedar3.c b/src/data/model/obj_cedar3.c new file mode 100644 index 00000000..59389ed2 --- /dev/null +++ b/src/data/model/obj_cedar3.c @@ -0,0 +1,22 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +Vtx obj_cedar3_shadow_v[] = { +#include "assets/obj_cedar3_shadow_v.inc" +}; + +extern u8 obj_cedar_shadow_tex[]; + +Gfx obj_cedar3_shadowT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_I, G_IM_SIZ_4b, 32, 32, obj_cedar_shadow_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_cedar3_shadowT_gfx_model[] = { + gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_cedar4.c b/src/data/model/obj_cedar4.c new file mode 100644 index 00000000..31841400 --- /dev/null +++ b/src/data/model/obj_cedar4.c @@ -0,0 +1,22 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +Vtx obj_cedar4_shadow_v[] = { +#include "assets/obj_cedar4_shadow_v.inc" +}; + +extern u8 obj_cedar_shadow_tex[]; + +Gfx obj_cedar4_shadowT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_I, G_IM_SIZ_4b, 32, 32, obj_cedar_shadow_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_cedar4_shadowT_gfx_model[] = { + gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_cedar5.c b/src/data/model/obj_cedar5.c new file mode 100644 index 00000000..3ddfd10f --- /dev/null +++ b/src/data/model/obj_cedar5.c @@ -0,0 +1,24 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +u8 obj_cedar_shadow_tex[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_cedar_shadow_tex.inc" +}; + +Vtx obj_cedar5_shadow_v[] = { +#include "assets/obj_cedar5_shadow_v.inc" +}; + +Gfx obj_cedar5_shadowT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_I, G_IM_SIZ_4b, 32, 32, obj_cedar_shadow_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_cedar5_shadowT_gfx_model[] = { + gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_crack.c b/src/data/model/obj_crack.c new file mode 100644 index 00000000..8c039d2b --- /dev/null +++ b/src/data/model/obj_crack.c @@ -0,0 +1,24 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + + +u8 obj_crack_tex[] ATTRIBUTE_ALIGN(32)= { +#include "assets/obj_crack_tex.inc" +}; + +Gfx obj_crack0T_g_mat_model[] = { +gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), +gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 32, 32, obj_crack_tex), +gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 4, GX_CLAMP, GX_CLAMP, 0, 0), +gsSPEndDisplayList() +}; + +Gfx obj_crack0T_s_mat_model[] = { +gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), +gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 32, 32, obj_crack_tex), +gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 5, GX_CLAMP, GX_CLAMP, 0, 0), +gsSPEndDisplayList() +}; + diff --git a/src/data/model/obj_cstump3.c b/src/data/model/obj_cstump3.c new file mode 100644 index 00000000..ee4a4b0e --- /dev/null +++ b/src/data/model/obj_cstump3.c @@ -0,0 +1,22 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +Vtx obj_cstump3_shadow_v[] = { +#include "assets/obj_cstump3_shadow_v.inc" +}; + +extern u8 obj_cstump_shadow_tex[]; + +Gfx obj_cstump3_shadowT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_I, G_IM_SIZ_4b, 32, 32, obj_cstump_shadow_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_cstump3_shadowT_gfx_model[] = { + gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_cstump4.c b/src/data/model/obj_cstump4.c new file mode 100644 index 00000000..2854579c --- /dev/null +++ b/src/data/model/obj_cstump4.c @@ -0,0 +1,22 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +Vtx obj_cstump4_shadow_v[] = { +#include "assets/obj_cstump4_shadow_v.inc" +}; + +extern u8 obj_cstump_shadow_tex[]; + +Gfx obj_cstump4_shadowT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_I, G_IM_SIZ_4b, 32, 32, obj_cstump_shadow_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_cstump4_shadowT_gfx_model[] = { + gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_cstump5.c b/src/data/model/obj_cstump5.c new file mode 100644 index 00000000..3ee0c414 --- /dev/null +++ b/src/data/model/obj_cstump5.c @@ -0,0 +1,26 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + + +u8 obj_cstump_shadow_tex[] ATTRIBUTE_ALIGN(32)= { +#include "assets/obj_cstump_shadow_tex.inc" +}; + +Vtx obj_cstump5_shadow_v[] = { +#include "assets/obj_cstump5_shadow_v.inc" +}; + +Gfx obj_cstump5_shadowT_mat_model[] = { +gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), +gsDPSetTextureImage_Dolphin(G_IM_FMT_I, G_IM_SIZ_4b, 32, 32, obj_cstump_shadow_tex), +gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_CLAMP, 0, 0), +gsSPEndDisplayList() +}; + +Gfx obj_cstump5_shadowT_gfx_model[] = { +gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), +gsSPEndDisplayList() +}; + diff --git a/src/data/model/obj_fenceL_shadow.c b/src/data/model/obj_fenceL_shadow.c new file mode 100644 index 00000000..92685c61 --- /dev/null +++ b/src/data/model/obj_fenceL_shadow.c @@ -0,0 +1,24 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +u8 obj_fence_shadow_tex[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_fence_shadow_tex.inc" +}; + +Vtx obj_fenceL_shadow_v[] = { +#include "assets/obj_fenceL_shadow_v.inc" +}; + +Gfx obj_fenceL_shadowT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_I, G_IM_SIZ_4b, 32, 32, obj_fence_shadow_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_MIRROR, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_fenceL_shadowT_gfx_model[] = { + gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_fenceS_shadow.c b/src/data/model/obj_fenceS_shadow.c new file mode 100644 index 00000000..96101bf2 --- /dev/null +++ b/src/data/model/obj_fenceS_shadow.c @@ -0,0 +1,22 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +Vtx obj_fenceS_shadow_v[] = { +#include "assets/obj_fenceS_shadow_v.inc" +}; + +extern u8 obj_fence_shadow_tex[]; + +Gfx obj_fenceS_shadowT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_I, G_IM_SIZ_4b, 32, 32, obj_fence_shadow_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_MIRROR, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_fenceS_shadowT_gfx_model[] = { + gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_gold_01.c b/src/data/model/obj_gold_01.c new file mode 100644 index 00000000..5fb55d01 --- /dev/null +++ b/src/data/model/obj_gold_01.c @@ -0,0 +1,8 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +u16 mFM_obj_gold_01_pal_dol[] ATTRIBUTE_ALIGN(32) = { +#include "assets/mFM_obj_gold_01_pal_dol.inc" +}; diff --git a/src/data/model/obj_hole.c b/src/data/model/obj_hole.c new file mode 100644 index 00000000..85f6498e --- /dev/null +++ b/src/data/model/obj_hole.c @@ -0,0 +1,297 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +u8 obj_hole_tex[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_hole_tex.inc" +}; + +Vtx obj_hole0_v[] = { +#include "assets/obj_hole0_v.inc" +}; + +Vtx obj_hole1_v[] = { +#include "assets/obj_hole1_v.inc" +}; + +Vtx obj_hole2_v[] = { +#include "assets/obj_hole2_v.inc" +}; + +Vtx obj_hole3_v[] = { +#include "assets/obj_hole3_v.inc" +}; + +Vtx obj_hole4_v[] = { +#include "assets/obj_hole4_v.inc" +}; + +Vtx obj_hole5_v[] = { +#include "assets/obj_hole5_v.inc" +}; + +Vtx obj_hole6_v[] = { +#include "assets/obj_hole6_v.inc" +}; + +Vtx obj_hole7_v[] = { +#include "assets/obj_hole7_v.inc" +}; + +Vtx obj_hole8_v[] = { +#include "assets/obj_hole8_v.inc" +}; + +Vtx obj_hole9_v[] = { +#include "assets/obj_hole9_v.inc" +}; + +Vtx obj_hole10_v[] = { +#include "assets/obj_hole10_v.inc" +}; + +Vtx obj_hole11_v[] = { +#include "assets/obj_hole11_v.inc" +}; + +Vtx obj_hole12_v[] = { +#include "assets/obj_hole12_v.inc" +}; + +Vtx obj_hole13_v[] = { +#include "assets/obj_hole13_v.inc" +}; + +Vtx obj_hole14_v[] = { +#include "assets/obj_hole14_v.inc" +}; + +Vtx obj_hole15_v[] = { +#include "assets/obj_hole15_v.inc" +}; + +Vtx obj_hole16_v[] = { +#include "assets/obj_hole16_v.inc" +}; + +Vtx obj_hole17_v[] = { +#include "assets/obj_hole17_v.inc" +}; + +Vtx obj_hole18_v[] = { +#include "assets/obj_hole18_v.inc" +}; + +Vtx obj_hole19_v[] = { +#include "assets/obj_hole19_v.inc" +}; + +Vtx obj_hole20_v[] = { +#include "assets/obj_hole20_v.inc" +}; + +Vtx obj_hole21_v[] = { +#include "assets/obj_hole21_v.inc" +}; + +Vtx obj_hole22_v[] = { +#include "assets/obj_hole22_v.inc" +}; + +Vtx obj_hole23_v[] = { +#include "assets/obj_hole23_v.inc" +}; + +Vtx obj_hole24_v[] = { +#include "assets/obj_hole24_v.inc" +}; + +Gfx obj_hole0T_g_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 32, 32, obj_hole_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 4, GX_CLAMP, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole0T_s_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 32, 32, obj_hole_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 5, GX_CLAMP, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole0T_gfx_model[] = { + gsSPVertex(obj_hole0_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole1T_gfx_model[] = { + gsSPVertex(obj_hole1_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole2T_gfx_model[] = { + gsSPVertex(obj_hole2_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole3T_gfx_model[] = { + gsSPVertex(obj_hole3_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole4T_gfx_model[] = { + gsSPVertex(obj_hole4_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole5T_gfx_model[] = { + gsSPVertex(obj_hole5_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole6T_gfx_model[] = { + gsSPVertex(obj_hole6_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole7T_gfx_model[] = { + gsSPVertex(obj_hole7_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole8T_gfx_model[] = { + gsSPVertex(obj_hole8_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole9T_gfx_model[] = { + gsSPVertex(obj_hole9_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole10T_gfx_model[] = { + gsSPVertex(obj_hole10_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole11T_gfx_model[] = { + gsSPVertex(obj_hole11_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole12T_gfx_model[] = { + gsSPVertex(obj_hole12_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole13T_gfx_model[] = { + gsSPVertex(obj_hole13_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole14T_gfx_model[] = { + gsSPVertex(obj_hole14_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole15T_gfx_model[] = { + gsSPVertex(obj_hole15_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole16T_gfx_model[] = { + gsSPVertex(obj_hole16_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole17T_gfx_model[] = { + gsSPVertex(obj_hole17_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole18T_gfx_model[] = { + gsSPVertex(obj_hole18_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole19T_gfx_model[] = { + gsSPVertex(obj_hole19_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole20T_gfx_model[] = { + gsSPVertex(obj_hole20_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole21T_gfx_model[] = { + gsSPVertex(obj_hole21_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole22T_gfx_model[] = { + gsSPVertex(obj_hole22_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole23T_gfx_model[] = { + gsSPVertex(obj_hole23_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_hole24T_gfx_model[] = { + gsSPVertex(obj_hole24_v, 5, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 2, 3, 4, 2, 1, 3), + gsSPNTriangles_5b(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_hole_pal.c b/src/data/model/obj_hole_pal.c new file mode 100644 index 00000000..bb8833a3 --- /dev/null +++ b/src/data/model/obj_hole_pal.c @@ -0,0 +1,14 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + + +u16 obj_b_hole_pal[] ATTRIBUTE_ALIGN(32)= { +#include "assets/obj_b_hole_pal.inc" +}; + +u16 obj_g_hole_pal[] ATTRIBUTE_ALIGN(32)= { +#include "assets/obj_g_hole_pal.inc" +}; + diff --git a/src/data/model/obj_melody.c b/src/data/model/obj_melody.c new file mode 100644 index 00000000..26125774 --- /dev/null +++ b/src/data/model/obj_melody.c @@ -0,0 +1,20 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +u8 obj_melody_shadow_tex[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_melody_shadow_tex.inc" +}; + +Vtx obj_melody_shadow_v[] = { +#include "assets/obj_melody_shadow_v.inc" +}; + +Gfx obj_melody_shadowT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_I, G_IM_SIZ_4b, 32, 32, obj_melody_shadow_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_MIRROR, 0, 0), gsSPEndDisplayList() +}; + +Gfx obj_melody_shadowT_gfx_model[] = { gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), gsSPEndDisplayList() }; diff --git a/src/data/model/obj_notice.c b/src/data/model/obj_notice.c new file mode 100644 index 00000000..42265a58 --- /dev/null +++ b/src/data/model/obj_notice.c @@ -0,0 +1,26 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + + +u8 obj_notice_shadow_tex[] ATTRIBUTE_ALIGN(32)= { +#include "assets/obj_notice_shadow_tex.inc" +}; + +Vtx obj_notice_shadow_v[] = { +#include "assets/obj_notice_shadow_v.inc" +}; + +Gfx obj_notice_shadowT_mat_model[] = { +gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), +gsDPSetTextureImage_Dolphin(G_IM_FMT_I, G_IM_SIZ_4b, 32, 32, obj_notice_shadow_tex), +gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_MIRROR, 0, 0), +gsSPEndDisplayList() +}; + +Gfx obj_notice_shadowT_gfx_model[] = { +gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), +gsSPEndDisplayList() +}; + diff --git a/src/data/model/obj_s_cedar2.c b/src/data/model/obj_s_cedar2.c new file mode 100644 index 00000000..d6c27dc2 --- /dev/null +++ b/src/data/model/obj_s_cedar2.c @@ -0,0 +1,24 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +Vtx obj_s_cedar2_v[] = { +#include "assets/obj_s_cedar2_v.inc" +}; + +extern u8 obj_s_cedar_young_tex[]; + +Gfx obj_s_cedar2T_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 64, obj_s_cedar_young_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_CLAMP, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_cedar2T_gfx_model[] = { + gsSPVertex(obj_s_cedar2_v, 7, 0), + gsSPNTrianglesInit_5b(7, 0, 1, 2, 2, 3, 0, 3, 4, 0), + gsSPNTriangles_5b(0, 5, 1, 0, 4, 5, 3, 6, 4, 4, 6, 5), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_s_cedar3.c b/src/data/model/obj_s_cedar3.c new file mode 100644 index 00000000..f1dba50c --- /dev/null +++ b/src/data/model/obj_s_cedar3.c @@ -0,0 +1,45 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +u8 obj_s_cedar_leaf_tex[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_s_cedar_leaf_tex.inc" +}; + +u8 obj_s_cedar_young_tex[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_s_cedar_young_tex.inc" +}; + +Vtx obj_s_cedar3_v[] = { +#include "assets/obj_s_cedar3_v.inc" +}; + +Gfx obj_s_cedar3_leafT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 64, obj_s_cedar_leaf_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_REPEAT, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_cedar3_leafT_gfx_model[] = { + gsSPVertex(obj_s_cedar3_v, 23, 0), + gsSPNTrianglesInit_5b(9, 0, 1, 2, 2, 3, 4, 5, 6, 0), + gsSPNTriangles_5b(7, 8, 5, 9, 10, 11, 12, 13, 7, 14, 15, 16), + gsSPNTriangles_5b(17, 18, 19, 20, 21, 22, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_cedar3_trunkT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 64, obj_s_cedar_young_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_CLAMP, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_cedar3_trunkT_gfx_model[] = { + gsSPVertex(&obj_s_cedar3_v[23], 7, 0), + gsSPNTrianglesInit_5b(6, 0, 1, 2, 0, 3, 1, 2, 1, 4), + gsSPNTriangles_5b(1, 5, 4, 3, 6, 1, 1, 6, 5, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_s_cedar4.c b/src/data/model/obj_s_cedar4.c new file mode 100644 index 00000000..0703905d --- /dev/null +++ b/src/data/model/obj_s_cedar4.c @@ -0,0 +1,47 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +u8 obj_s_cedar_trunk_tex[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_s_cedar_trunk_tex.inc" +}; + +Vtx obj_s_cedar4_v[] = { +#include "assets/obj_s_cedar4_v.inc" +}; + +Gfx obj_s_cedar4_trunkT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 64, obj_s_cedar_trunk_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_CLAMP, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_cedar4_trunkT_gfx_model[] = { + gsSPVertex(obj_s_cedar4_v, 7, 0), + gsSPNTrianglesInit_5b(6, 0, 1, 2, 1, 3, 2, 4, 2, 5), + gsSPNTriangles_5b(4, 0, 2, 5, 2, 6, 2, 3, 6, 0, 0, 0), + gsSPEndDisplayList(), +}; + +extern u8 obj_s_cedar_leaf_tex[]; + +Gfx obj_s_cedar4_leafT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 64, obj_s_cedar_leaf_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_REPEAT, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_cedar4_leafT_gfx_model[] = { + gsSPVertex(&obj_s_cedar4_v[7], 32, 0), + gsSPNTrianglesInit_5b(13, 0, 1, 2, 2, 3, 4, 5, 6, 0), + gsSPNTriangles_5b(7, 8, 5, 9, 10, 11, 11, 12, 13, 14, 15, 9), + gsSPNTriangles_5b(16, 17, 14, 18, 19, 20, 21, 22, 23, 23, 24, 16), + gsSPNTriangles_5b(25, 26, 7, 27, 28, 29, 0, 0, 0, 0, 0, 0), + gsSPVertex(&obj_s_cedar4_v[37], 17, 0), + gsSPNTrianglesInit_5b(7, 0, 1, 2, 3, 4, 5, 6, 7, 8), + gsSPNTriangles_5b(8, 9, 10, 10, 11, 12, 13, 14, 15, 12, 16, 13), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_s_cedar5.c b/src/data/model/obj_s_cedar5.c new file mode 100644 index 00000000..c2f93db4 --- /dev/null +++ b/src/data/model/obj_s_cedar5.c @@ -0,0 +1,49 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +Vtx obj_s_cedar5_v[] = { +#include "assets/obj_s_cedar5_v.inc" +}; + +extern u8 obj_s_cedar_leaf_tex[]; + +Gfx obj_s_cedar5_leafT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 64, obj_s_cedar_leaf_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_REPEAT, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_cedar5_leafT_gfx_model[] = { + gsSPVertex(obj_s_cedar5_v, 32, 0), + gsSPNTrianglesInit_5b(14, 0, 1, 2, 2, 3, 4, 5, 6, 0), + gsSPNTriangles_5b(7, 8, 5, 9, 10, 11, 11, 12, 13, 14, 15, 9), + gsSPNTriangles_5b(16, 17, 14, 18, 19, 20, 20, 21, 22, 23, 24, 18), + gsSPNTriangles_5b(25, 26, 23, 27, 28, 29, 29, 30, 31, 0, 0, 0), + gsSPVertex(&obj_s_cedar5_v[32], 32, 0), + gsSPNTrianglesInit_5b(12, 0, 1, 2, 3, 4, 0, 5, 6, 7), + gsSPNTriangles_5b(8, 9, 10, 10, 11, 3, 12, 13, 14, 14, 15, 16), + gsSPNTriangles_5b(16, 17, 18, 19, 20, 21, 21, 22, 23, 24, 25, 26), + gsSPNTriangles_5b(27, 28, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPVertex(&obj_s_cedar5_v[62], 6, 0), + gsSPNTrianglesInit_5b(2, 0, 1, 2, 3, 4, 5, 0, 0, 0), + gsSPEndDisplayList(), +}; + +extern u8 obj_s_cedar_trunk_tex[]; + +Gfx obj_s_cedar5_trunkT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 64, obj_s_cedar_trunk_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_CLAMP, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_cedar5_trunkT_gfx_model[] = { + gsSPVertex(&obj_s_cedar5_v[68], 7, 0), + gsSPNTrianglesInit_5b(6, 0, 1, 2, 1, 3, 2, 4, 2, 5), + gsSPNTriangles_5b(4, 0, 2, 5, 2, 6, 2, 3, 6, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_s_cedar_baby.c b/src/data/model/obj_s_cedar_baby.c new file mode 100644 index 00000000..fda85f9d --- /dev/null +++ b/src/data/model/obj_s_cedar_baby.c @@ -0,0 +1,27 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + + +u8 obj_s_cedar_baby_tex[] ATTRIBUTE_ALIGN(32)= { +#include "assets/obj_s_cedar_baby_tex.inc" +}; + +Vtx obj_s_cedar1_v[] = { +#include "assets/obj_s_cedar1_v.inc" +}; + +Gfx obj_s_cedar1T_mat_model[] = { +gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), +gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 32, 24, obj_s_cedar_baby_tex), +gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_CLAMP, GX_CLAMP, 0, 0), +gsSPEndDisplayList() +}; + +Gfx obj_s_cedar1T_gfx_model[] = { +gsSPVertex(obj_s_cedar1_v, 4, 0), +gsSPNTrianglesInit_5b(2, 0, 1, 2, 1, 3, 2, 0, 0, 0), +gsSPEndDisplayList() +}; + diff --git a/src/data/model/obj_s_cedar_dead.c b/src/data/model/obj_s_cedar_dead.c new file mode 100644 index 00000000..26e5795a --- /dev/null +++ b/src/data/model/obj_s_cedar_dead.c @@ -0,0 +1,27 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + + +u8 obj_s_cedar_dead_tex[] ATTRIBUTE_ALIGN(32)= { +#include "assets/obj_s_cedar_dead_tex.inc" +}; + +Vtx obj_s_cedar1_dead_v[] = { +#include "assets/obj_s_cedar1_dead_v.inc" +}; + +Gfx obj_s_cedar1_deadT_mat_model[] = { +gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), +gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 32, 16, obj_s_cedar_dead_tex), +gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_CLAMP, GX_CLAMP, 0, 0), +gsSPEndDisplayList() +}; + +Gfx obj_s_cedar1_deadT_gfx_model[] = { +gsSPVertex(obj_s_cedar1_dead_v, 4, 0), +gsSPNTrianglesInit_5b(2, 0, 1, 2, 1, 3, 2, 0, 0, 0), +gsSPEndDisplayList() +}; + diff --git a/src/data/model/obj_s_cstump2.c b/src/data/model/obj_s_cstump2.c new file mode 100644 index 00000000..4dee392e --- /dev/null +++ b/src/data/model/obj_s_cstump2.c @@ -0,0 +1,24 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +Vtx obj_s_cstump2_v[] = { +#include "assets/obj_s_cstump2_v.inc" +}; + +extern u8 obj_s_cedar_young_tex[]; + +Gfx obj_s_cstump2T_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 64, obj_s_cedar_young_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_CLAMP, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_cstump2T_gfx_model[] = { + gsSPVertex(obj_s_cstump2_v, 7, 0), + gsSPNTrianglesInit_5b(7, 0, 1, 2, 3, 4, 5, 4, 6, 5), + gsSPNTriangles_5b(0, 3, 1, 3, 5, 1, 1, 6, 2, 1, 5, 6), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_s_cstump3.c b/src/data/model/obj_s_cstump3.c new file mode 100644 index 00000000..fd987b7d --- /dev/null +++ b/src/data/model/obj_s_cstump3.c @@ -0,0 +1,24 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +Vtx obj_s_cstump3_v[] = { +#include "assets/obj_s_cstump3_v.inc" +}; + +extern u8 obj_s_cedar_young_tex[]; + +Gfx obj_s_cstump3T_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 64, obj_s_cedar_young_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_CLAMP, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_cstump3T_gfx_model[] = { + gsSPVertex(obj_s_cstump3_v, 7, 0), + gsSPNTrianglesInit_5b(7, 0, 1, 2, 3, 4, 2, 2, 5, 3), + gsSPNTriangles_5b(1, 5, 2, 1, 6, 5, 5, 6, 3, 2, 4, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_s_cstump4.c b/src/data/model/obj_s_cstump4.c new file mode 100644 index 00000000..1025a66f --- /dev/null +++ b/src/data/model/obj_s_cstump4.c @@ -0,0 +1,28 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + + +u8 obj_s_cedar_stump_tex[] ATTRIBUTE_ALIGN(32)= { +#include "assets/obj_s_cedar_stump_tex.inc" +}; + +Vtx obj_s_cstump4_v[] = { +#include "assets/obj_s_cstump4_v.inc" +}; + +Gfx obj_s_cstump4T_mat_model[] = { +gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), +gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 32, obj_s_cedar_stump_tex), +gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_CLAMP, GX_CLAMP, 0, 0), +gsSPEndDisplayList() +}; + +Gfx obj_s_cstump4T_gfx_model[] = { +gsSPVertex(obj_s_cstump4_v, 7, 0), +gsSPNTrianglesInit_5b(7, 0, 1, 2, 3, 4, 2, 2, 4, 0), +gsSPNTriangles_5b(1, 5, 2, 2, 5, 3, 1, 6, 5, 5, 6, 3), +gsSPEndDisplayList() +}; + diff --git a/src/data/model/obj_s_cstump5.c b/src/data/model/obj_s_cstump5.c new file mode 100644 index 00000000..d0a1395d --- /dev/null +++ b/src/data/model/obj_s_cstump5.c @@ -0,0 +1,24 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +Vtx obj_s_cstump5_v[] = { +#include "assets/obj_s_cstump5_v.inc" +}; + +extern u8 obj_s_cedar_stump_tex[]; + +Gfx obj_s_cstump5T_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 32, obj_s_cedar_stump_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 7, GX_CLAMP, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_cstump5T_gfx_model[] = { + gsSPVertex(obj_s_cstump5_v, 7, 0), + gsSPNTrianglesInit_5b(7, 0, 1, 2, 3, 4, 2, 2, 4, 0), + gsSPNTriangles_5b(1, 5, 2, 2, 5, 3, 1, 6, 5, 5, 6, 3), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_s_fenceL.c b/src/data/model/obj_s_fenceL.c new file mode 100644 index 00000000..0265e1c2 --- /dev/null +++ b/src/data/model/obj_s_fenceL.c @@ -0,0 +1,30 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +u16 obj_fence_pal[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_fence_pal.inc" +}; + +u8 obj_s_fence_tex[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_s_fence_tex.inc" +}; + +Vtx obj_s_fenceL_v[] = { +#include "assets/obj_s_fenceL_v.inc" +}; + +Gfx obj_s_fenceLT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPLoadTLUT_Dolphin(15, 16, 1, obj_fence_pal), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 32, obj_s_fence_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_REPEAT, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_fenceLT_gfx_model[] = { + gsSPVertex(obj_s_fenceL_v, 4, 0), + gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_s_fenceS.c b/src/data/model/obj_s_fenceS.c new file mode 100644 index 00000000..3abedde7 --- /dev/null +++ b/src/data/model/obj_s_fenceS.c @@ -0,0 +1,24 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +Vtx obj_s_fenceS_v[] = { +#include "assets/obj_s_fenceS_v.inc" +}; +extern u16 obj_fence_pal[]; +extern u8 obj_s_fence_tex[]; + +Gfx obj_s_fenceST_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPLoadTLUT_Dolphin(15, 16, 1, obj_fence_pal), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 32, obj_s_fence_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_REPEAT, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_fenceST_gfx_model[] = { + gsSPVertex(obj_s_fenceS_v, 4, 0), + gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_s_honeycomb.c b/src/data/model/obj_s_honeycomb.c new file mode 100644 index 00000000..e122c6bb --- /dev/null +++ b/src/data/model/obj_s_honeycomb.c @@ -0,0 +1,42 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + + +u16 obj_s_honeycomb_pal[] ATTRIBUTE_ALIGN(32)= { +#include "assets/obj_s_honeycomb_pal.inc" +}; + +u8 obj_s_honeycomb_tex[] ATTRIBUTE_ALIGN(32)= { +#include "assets/obj_s_honeycomb_tex.inc" +}; + +Vtx obj_s_honeycomb_v[] = { +#include "assets/obj_s_honeycomb_v.inc" +}; + +Gfx obj_s_honeycombT_mat_model[] = { +gsDPPipeSync(), +gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, obj_s_honeycomb_pal), +gsDPTileSync(), +gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_4b, 0, 496, G_TX_LOADTILE, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOLOD), +gsDPLoadSync(), +gsDPLoadTLUTCmd(G_TX_LOADTILE, 15), +gsDPPipeSync(), +gsDPSetTextureImage(G_IM_FMT_CI, G_IM_SIZ_16b, 1, obj_s_honeycomb_tex), +gsDPSetTile(G_IM_FMT_CI, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_NOMIRROR | G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_NOMIRROR | G_TX_CLAMP, 5, G_TX_NOLOD), +gsDPLoadSync(), +gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 255, 1024), +gsDPPipeSync(), +gsDPSetTile(G_IM_FMT_CI, G_IM_SIZ_4b, 2, 0, G_TX_RENDERTILE, 15, G_TX_NOMIRROR | G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_NOMIRROR | G_TX_CLAMP, 5, G_TX_NOLOD), +gsDPSetTileSize(G_TX_RENDERTILE, 0, 0, 124, 124), +gsSPEndDisplayList() +}; + +Gfx obj_s_honeycombT_gfx_model[] = { +gsSPVertex(obj_s_honeycomb_v, 4, 0), +gsSP2Triangles(0, 1, 2, 0, 0, 2, 3, 0), +gsSPEndDisplayList() +}; + diff --git a/src/data/model/obj_s_melody.c b/src/data/model/obj_s_melody.c new file mode 100644 index 00000000..c87b5608 --- /dev/null +++ b/src/data/model/obj_s_melody.c @@ -0,0 +1,31 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +static u16 obj_melody_pal[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_s_melody/obj_melody_pal.inc" +}; + +u8 obj_s_melody_tex[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_s_melody_tex.inc" +}; + +Vtx obj_s_melody_v[] = { +#include "assets/obj_s_melody_v.inc" +}; + +Gfx obj_s_melodyT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPLoadTLUT_Dolphin(15, 16, 1, obj_melody_pal), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 64, obj_s_melody_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_MIRROR, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_melodyT_gfx_model[] = { + gsSPVertex(obj_s_melody_v, 8, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 0, 2, 3, 4, 5, 6), + gsSPNTriangles_5b(4, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_s_notice.c b/src/data/model/obj_s_notice.c new file mode 100644 index 00000000..c646b975 --- /dev/null +++ b/src/data/model/obj_s_notice.c @@ -0,0 +1,31 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +static u16 obj_notice_pal[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_s_notice/obj_notice_pal.inc" +}; + +u8 obj_s_notice_tex[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_s_notice_tex.inc" +}; + +Vtx obj_s_notice_v[] = { +#include "assets/obj_s_notice_v.inc" +}; + +Gfx obj_s_noticeT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPLoadTLUT_Dolphin(15, 16, 1, obj_notice_pal), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 64, obj_s_notice_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 15, GX_MIRROR, GX_MIRROR, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_s_noticeT_gfx_model[] = { + gsSPVertex(obj_s_notice_v, 8, 0), + gsSPNTrianglesInit_5b(4, 0, 1, 2, 0, 2, 3, 4, 5, 6), + gsSPNTriangles_5b(4, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_zassou_a.c b/src/data/model/obj_zassou_a.c new file mode 100644 index 00000000..c7a1f6ad --- /dev/null +++ b/src/data/model/obj_zassou_a.c @@ -0,0 +1,25 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + +u8 obj_zassou_tex[] ATTRIBUTE_ALIGN(32) = { +#include "assets/obj_zassou_tex.inc" +}; + +Vtx obj_zassou_a_v[] = { +#include "assets/obj_zassou_a_v.inc" +}; + +Gfx obj_zassou_aT_mat_model[] = { + gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_ON), + gsDPSetTextureImage_Dolphin(G_IM_FMT_CI, G_IM_SIZ_4b, 64, 32, obj_zassou_tex), + gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, 3, GX_CLAMP, GX_CLAMP, 0, 0), + gsSPEndDisplayList(), +}; + +Gfx obj_zassou_aT_gfx_model[] = { + gsSPVertex(obj_zassou_a_v, 4, 0), + gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), + gsSPEndDisplayList(), +}; diff --git a/src/data/model/obj_zassou_b.c b/src/data/model/obj_zassou_b.c new file mode 100644 index 00000000..1c94c602 --- /dev/null +++ b/src/data/model/obj_zassou_b.c @@ -0,0 +1,16 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + + +Vtx obj_zassou_b_v[] = { +#include "assets/obj_zassou_b_v.inc" +}; + +Gfx obj_zassou_bT_gfx_model[] = { +gsSPVertex(obj_zassou_b_v, 4, 0), +gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), +gsSPEndDisplayList() +}; + diff --git a/src/data/model/obj_zassou_c.c b/src/data/model/obj_zassou_c.c new file mode 100644 index 00000000..01f61928 --- /dev/null +++ b/src/data/model/obj_zassou_c.c @@ -0,0 +1,16 @@ +#include "libforest/gbi_extensions.h" +#include "PR/gbi.h" +#include "evw_anime.h" +#include "c_keyframe.h" + + +Vtx obj_zassou_c_v[] = { +#include "assets/obj_zassou_c_v.inc" +}; + +Gfx obj_zassou_cT_gfx_model[] = { +gsSPVertex(obj_zassou_c_v, 4, 0), +gsSPNTrianglesInit_5b(2, 0, 1, 2, 0, 2, 3, 0, 0, 0), +gsSPEndDisplayList() +}; + diff --git a/tools/converters/assetdis.py b/tools/converters/assetdis.py index 461f12b8..94c65f5d 100644 --- a/tools/converters/assetdis.py +++ b/tools/converters/assetdis.py @@ -3,6 +3,9 @@ from gfxdis import convert_binary_to_gfx from dataclasses import dataclass import struct +ASSET_ALIGN = "ATTRIBUTE_ALIGN(32)" +NO_ALIGN = "" + @dataclass class struct_ref: @@ -347,23 +350,23 @@ def convert_source_to_gfx_c_source(src_file, dest_path): continue if type == "Vtx": data = f'#include "assets/{obj_name}.inc"' - converted_types[obj_name] = (type, data, "") + converted_types[obj_name] = (type, data, NO_ALIGN) elif type == "Gfx": data = convert_binary_to_gfx( *lookup_bins_and_symbols(lines, obj_name)) - converted_types[obj_name] = (type, data, "") + converted_types[obj_name] = (type, data, NO_ALIGN) elif type == "PAL": data = f'#include "assets/{obj_name}.inc"' - converted_types[obj_name] = ("u16", data, "") + converted_types[obj_name] = ("u16", data, ASSET_ALIGN) elif type == "TEX": data = f'#include "assets/{obj_name}.inc"' - converted_types[obj_name] = ("u8", data, "") + converted_types[obj_name] = ("u8", data, ASSET_ALIGN) elif type in lookup_table: res: struct_parse_result = lookup_table[type]( *lookup_bins_and_symbols2(lines, obj_name)) data = res.formatted_str - converted_types[obj_name] = (type, data, "") + converted_types[obj_name] = (type, data, NO_ALIGN) if len(res.referenced_objects) > 0: found_types = [(ref.symbol_name, ref.symbol_type) for ref in res.referenced_objects] + found_types @@ -371,7 +374,7 @@ def convert_source_to_gfx_c_source(src_file, dest_path): out = header + "\n\n" for obj in all_objs: this_type, out_data, align = converted_types.get( - obj, ("u8", f'#include "assets/{obj}.inc"', "")) + obj, ("u8", f'#include "assets/{obj}.inc"', NO_ALIGN)) out += f"{this_type} {obj}[] {align}= {{ \n{out_data}\n}};\n\n" # print(out) with open(dest_path, "w") as f: diff --git a/tools/converters/gfxdis.py b/tools/converters/gfxdis.py index 9b8c4f8a..c7eb60f6 100644 --- a/tools/converters/gfxdis.py +++ b/tools/converters/gfxdis.py @@ -324,6 +324,8 @@ G_CYC_FILL = (3 << G_MDSFT_CYCLETYPE) G_PM_1PRIMITIVE = (1 << G_MDSFT_PIPELINE) G_PM_NPRIMITIVE = (0 << G_MDSFT_PIPELINE) +G_TLUT_DOLPHIN = 2 + def GBL_c1(m1a, m1b, m2a, m2b): return (m1a) << 30 | ( m1b) << 26 | (m2a) << 22 | (m2b) << 18 @@ -1573,7 +1575,10 @@ def gfx_gsDPLoadSync(data): def gfx_gsDPLoadTLUTCmd(data): - return gf_call("gsDPLoadTLUTCmd", data, B2A(24, 3, DL, strarg_tile), B2A(14, 10, DL)) + if extract_data_upper(data, 22, 2) == G_TLUT_DOLPHIN: + return gf_call("gsDPLoadTLUT_Dolphin", data, B2A(16, 4, DU), B2A(0, 14, DU), B2A(14, 2, DU), GFX_SYMBOL) + else: + return gf_call("gsDPLoadTLUTCmd", data, B2A(24, 3, DL, strarg_tile), B2A(14, 10, DL)) def gfx_SetCombineLERP(data):