1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-08-06 22:30:15 +00:00
Commit graph

9 commits

Author SHA1 Message Date
Dragorn421
7a816391bb
Remove OutName from xmls (both on File and Texture) (#2596) 2025-06-06 22:07:53 +02:00
Dragorn421
1e556e3a3d
New assets system (#2481)
* wip: New assets system tm

Builds gc-eu-mq-dbg OK from clean after
1) make setup
2) python3 -m tools.assets.extract -j
3) replace 0x80A8E610 with sShadowTex in extracted/gc-eu-mq-dbg/assets/overlays/ovl_En_Jsjutan/sShadowMaterialDL.inc.c
4) make various symbols in extracted data like sTex static

* use variables from config.yml for gMtxClear and sShadowTex addresses

* Write source with static for overlays using `HACK_IS_STATIC_ON` hack

* gc-eu-mq-dbg OK from clean with `make setup && make`

* implement more skeleton-related types, cleanups, fixups

* fix extracted data to no longer produce compilation warnings

* implement more of RoomShapeImage types

* yeet XmlPath from ExternalFile usage

* Implement PlayerAnimationDataResource (link_animetion data)

* fix csdis CS_TIME extra arg

* dmadata file names no longer hardcoded for gc-eu-mq-dbg

* ntsc-1.0 OK

* xml fixes

* slightly improve standard output

* rm extract_assets.py

* generate and use Limb enums (TODO: check Skin skels and implement for Curve skels)

* handle dependencies between xmls

* introduce RawPointers xml attribute to ignore specific pointers and keep them raw

* add tools/extract_assets.sh

* fixups

* only extract if xmls changed or if -f (force) is used

* fixups, gc-eu OK

* all versions OK

* check attributes of xml resources elements

* Implement legacy skelanime resources

* fix ASSET_FILES_BIN_EXTRACTED/COMMITTED: look for .u8.bin specifically instead of just .bin

* implement JFIFResource

* fix png/jpg wildcards: look specifically for .u64.png .u32.png .u64.jpg

* Makefile: Add rules to build .png, .bin and .jpg in assets/ too

* start writing actual docs

* extract sTransCircleDL and sTransWipeDL

* misc cleanup/fixes, pygfxd 1.0.3

* refactor CDataExt.set_write callback args to use a dataclass

* Move {} to in-source

* misc

* more progress on spec

* fix missing braces in n64dd_error_textures.c

* finish xml spec doc

* assets xmls fixes

* some cleanup, use `gNameTex_WIDTH/HEIGHT` macros in dlists

* handle hackmode_syotes_room, fix compile

* C build_from_png

* rm tools/assets/bin2c

* rm ZAPD

* format

* remove rule to generate dmadata_table.py

* CC0 license (and some import cleanup)

* dont try to build zapd (rmd)

* simplify palettes with single user (ci images with a non-shared palette)

* add docs on how images are handled

* bss

* allow -j N

* fix n64texconv python bindings memory management

* move -j at the end of calling extraction script

* with -j, update last_extracts.json as each job completes rather than only if all complete

* make interrupting less jank by making child processes ignore sigint

* use enum names in `SCENE_CMD_SKYBOX_SETTINGS`

* `multiprocessing.get_context("fork")`

* import rich, except ImportError s

* fix optional rich usage

* .bss

* .bss

* .bss

* assets extraction: -j -> -j$(N_THREADS)

* .bss

* change LIMB_NONE/MAX defaults to be FILE_OFFSET instead of SKELNAME

* 0XHEX -> 0xHEX

* fix bss

* Proper includes for assets

mostly proper, some includes like dlists resources always causing a sys_matrix.h include (when not every dlist references gIdentityMtx) could be done better

* rm z64.h

* rm z64.h take two

* bss

* Make .u64 suffix for pngs optional

* fixup: rm .u64 suffix from n64dd image paths

* Remove elemtype suffixes from .bin and .jpg files

* Update images.md

* some build_from_png cleanup, more error handling, comments

* Handle skybox textures

Introduce "sub-format" suffix for pngs, with sub-formats split_lo and split_hi being used for skybox textures

* fixup for older python

* improve collision output some

* fully use SURFACETYPE[01] macros in writing extracted surface types

* use WATERBOX_PROPERTIES in extracted waterboxes

* some SceneCommandsResource cleanup

* format EnvLightSettingsList output
2025-05-18 01:29:09 +02:00
cadmic
9def6f4d0d
Set up multiversion assets with ZAPD and match gc-eu (#1967)
* Add ZAPD hack to deal with extracted/VERSION/ in include paths

* Extract assets to extracted/VERSION

* Add ZAPD flags to override virtual address / start offset / end offset

* Configure offsets for code and overlay assets

* Reorganize ZAPD configs

* Match gc-eu-mq

* Match gc-eu

* Remove old asset dirs during distclean

* Revert "Remove old asset dirs during distclean"

This reverts commit fc8027a75f.

* make zapd addresses globals int64_t so they can store uint32_t addresses and -1

* slight cleanup extract_assets.py

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "0285e11f0"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "0285e11f0"
git-subrepo:
  version:  "0.4.6"
  origin:   "git@github.com:ingydotnet/git-subrepo.git"
  commit:   "110b9eb"

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-06-24 15:22:39 +02:00
Dragorn421
a9526a3354
Fix misc 6 (#1148)
* Fix typo `vertexs` -> `vertices`

* Fix typo `limbMatricies` -> `limbMatrices`

* Fix some `gSPTextureRectangle` usage of fixed point constants

* Run formatter

* `ALIGN8` macro

* `object_skj` cleanup

* sholder -> shoulder

* cleanup `stdbool.h`

* Some function prototypes cleanup

* Use macros in `osVirtualToPhysical`
2022-02-20 14:22:29 +01:00
louist103
781d497264
Extract the assets from most of the overlays (#985)
* remove fake match

* Fire and Ice arrows

* Light arrows

* Ganon otyuka and end title

* Oceff_Spot

* Add missing Vtx to arrows

* Update assets/xml/overlays/ovl_Arrow_Ice.xml

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>

* Update assets/xml/overlays/ovl_Arrow_Light.xml

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>

* Fix fire arrows

* Update assets/xml/overlays/ovl_Arrow_Fire.xml

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Update ovl_Bg_Ganon_Otyuka.xml

* Update src/overlays/actors/ovl_Bg_Ganon_Otyuka/z_bg_ganon_otyuka.c

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Change a comment and rename a DList

* rename DList

* Jya cobra

* shd and elf_msg

* elf msg 2

* En Bili

* Remove extern form ice piece

* remove some externs

* en holl

* kanban

* make

* sda

* ssh and some cleanup

* replace undefined sym in en_kusa

* st

* oceff wipe 3

* oceff wipe

* oceff spot

* oceff spot

* oceff wipe 4

* Update VTXDIS

* update VTXDIS again

* fix sun song

* magic dark

* magic wind and oceff wipe 2

* magic fire and oceff storm

* Update src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Update assets/xml/overlays/ovl_En_Sth.xml.ignore

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Update assets/xml/overlays/ovl_Elf_Msg.xml

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Update assets/xml/overlays/ovl_Magic_Wind.xml

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* fix emptyDL, run formatter on en_ssh

* run formatter

* Update format.sh

* update to VTXDIS

* small change

* textureDL -> materialDL, vtxDL -> modelDL

* upper CASE

* setupDL -> materialDL

* GeometryDL->ModelDL and VisualDL->MaterialDL

* revert rcp.c

* revert holl.c

* another revert in rcp.c

* some u32 DL -> Gfx* DL

* the rest of dragorns comments

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "3e9ed72e2"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "3e9ed72e2"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

* start updating overlays with static

* en sth OK

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "d0cd6b397"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "d0cd6b397"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

* fix names of the overlays

* remove segment 128, add gameplay keep to global config file

* Fix end title and remove hex mode from VTXdis.c

* add code assets

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2021-11-08 20:51:45 -05:00
EllipticEllipsis
fd512f02e9
link_animetion xml, and ExternalFile config (#1011)
* Automatic XML for link_animetion

* Make sure tutorial images are not gitignored

* OK

* Correct ovl_Boss_Sst RangeEnd

* ExternalFiles

* Remove Segment="128"

* Remove segments from place_title_cards

* format, newlines, remove previous xml
2021-11-07 18:13:44 +01:00
Anghelo Carvajal
5c147e5e03
ZAPD update: Gotta go fast! (#877)
* copy over the xml

* Rename anims

* A bunch of renames

* minor extract_assets fixes

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "820678b4e"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "820678b4e"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"

* Change rgb5a1 to rgba16

* eye and eyebrows

* some dlists

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "6be9af65d"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "6be9af65d"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"
2021-07-27 22:16:03 -04:00
Anghelo Carvajal
c94e595dc1
Misc objects problems (#748)
* fix hidan door

Signed-off-by: angie <angheloalf95@gmail.com>

* doors and lens of truth in gameplaykeep

Signed-off-by: angie <angheloalf95@gmail.com>

* other minor fixes

Signed-off-by: angie <angheloalf95@gmail.com>

* Fix a typo

Signed-off-by: Angie <angheloalf95@gmail.com>
2021-04-02 19:30:26 -04:00
Anghelo Carvajal
833dc2928d
ovl_En_Jsjutan with 1 non_matching (#713)
* Init

Signed-off-by: angie <angheloalf95@gmail.com>

* destroy and non_matching update

Signed-off-by: angie <angheloalf95@gmail.com>

* declare externs to data

Signed-off-by: angie <angheloalf95@gmail.com>

* nonmatching draw

Signed-off-by: angie <angheloalf95@gmail.com>

* everything is a disaster

Signed-off-by: angie <angheloalf95@gmail.com>

* import bss

Signed-off-by: angie <angheloalf95@gmail.com>

* first step to extract data

Signed-off-by: angie <angheloalf95@gmail.com>

* import data

Signed-off-by: angie <angheloalf95@gmail.com>

* func_80A89860

Signed-off-by: angie <angheloalf95@gmail.com>

* draw

Signed-off-by: angie <angheloalf95@gmail.com>

* func_80A89A6C is crap

Signed-off-by: angie <angheloalf95@gmail.com>

* EnJsjutan_Update

Signed-off-by: angie <angheloalf95@gmail.com>

* change some hexs into decs

Signed-off-by: angie <angheloalf95@gmail.com>

* convert hexs of D_80A8AA98 into decimals and run format.sh

Signed-off-by: angie <angheloalf95@gmail.com>

* move data to its own file

Signed-off-by: angie <angheloalf95@gmail.com>

* this function is nightmare

Signed-off-by: angie <angheloalf95@gmail.com>

* i'm really trying

Signed-off-by: angie <angheloalf95@gmail.com>

* i think i am finally doing it

Signed-off-by: angie <angheloalf95@gmail.com>

* move the temps to where they are used

Signed-off-by: angie <angheloalf95@gmail.com>

* rename distance

Signed-off-by: Angie <angheloalf95@gmail.com>

* rename a few variables

Signed-off-by: Angie <angheloalf95@gmail.com>

* unclamp stuff :s

Signed-off-by: Angie <angheloalf95@gmail.com>

* i tried to see if i'm going better that older way

Signed-off-by: Angie <angheloalf95@gmail.com>

* moving stuff around

Signed-off-by: Angie <angheloalf95@gmail.com>

* this is the third try

Signed-off-by: angie <angheloalf95@gmail.com>

* changing bit by bit

Signed-off-by: angie <angheloalf95@gmail.com>

* step by step

Signed-off-by: angie <angheloalf95@gmail.com>

* more stuff

Signed-off-by: angie <angheloalf95@gmail.com>

* slow

Signed-off-by: angie <angheloalf95@gmail.com>

* a few small changes

Signed-off-by: angie <angheloalf95@gmail.com>

* go back to second try

Signed-off-by: Angie <angheloalf95@gmail.com>

* changing a s8 to u8 made a bigger difference than expected

Signed-off-by: Angie <angheloalf95@gmail.com>

* i am slowly doing it

Signed-off-by: Angie <angheloalf95@gmail.com>

* some problems are so dumb

Signed-off-by: Angie <angheloalf95@gmail.com>

* it is improving slowly again

Signed-off-by: Angie <angheloalf95@gmail.com>

* erase the old tries

Signed-off-by: Angie <angheloalf95@gmail.com>

* remove four variables

Signed-off-by: Angie <angheloalf95@gmail.com>

* fix the missing instructions at the end

Signed-off-by: angie <angheloalf95@gmail.com>

* theres only regalloc problems left

Signed-off-by: angie <angheloalf95@gmail.com>

* fix stack

Signed-off-by: angie <angheloalf95@gmail.com>

* add ifdef non_matching

Signed-off-by: Angie <angheloalf95@gmail.com>

* i'm getting desesperate

Signed-off-by: Angie <angheloalf95@gmail.com>

* Remove unnecessary casts

Signed-off-by: Angie <angheloalf95@gmail.com>

* random stuff that improves codegen

Signed-off-by: angie <angheloalf95@gmail.com>

* dumb is dumb

Signed-off-by: angie <angheloalf95@gmail.com>

* erase stuff

Signed-off-by: angie <angheloalf95@gmail.com>

* add some comments

Signed-off-by: Angie <angheloalf95@gmail.com>

* use bomb_explosion param and add some comments

Signed-off-by: angie <angheloalf95@gmail.com>

* add a few comments in about stuff

Signed-off-by: Angie <angheloalf95@gmail.com>

* extract carpet's texture instead of hardcode it

Signed-off-by: Angie <angheloalf95@gmail.com>

* set segment 128 in the xml

Signed-off-by: Angie <angheloalf95@gmail.com>

* Add baseaddress, which fixes dlist in xml

Signed-off-by: Angie <angheloalf95@gmail.com>

* fix the second dlist

Signed-off-by: Angie <angheloalf95@gmail.com>

* compiler complain that the symbol doesn't exists

Signed-off-by: angie <angheloalf95@gmail.com>

* last cleanup

Signed-off-by: angie <angheloalf95@gmail.com>

* format and delete unused asm

Signed-off-by: angie <angheloalf95@gmail.com>

* Cleanup and add a few comments

Signed-off-by: Angie <angheloalf95@gmail.com>

* add non matching to spec

Signed-off-by: angie <angheloalf95@gmail.com>

* update xml and add a note to future people

Signed-off-by: angie <angheloalf95@gmail.com>

* Finally remove z_en_jsjutan_data.c

Signed-off-by: angie <angheloalf95@gmail.com>

* Rename extracted variables

Signed-off-by: angie <angheloalf95@gmail.com>

* Update src/overlays/actors/ovl_En_Jsjutan/z_en_jsjutan.h

Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>

* Update src/overlays/actors/ovl_En_Jsjutan/z_en_jsjutan.c

Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>

Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
2021-03-27 22:47:25 -04:00