Software libraries: Difference between revisions

From ZeldaMods (Breath of the Wild)
Jump to navigation Jump to search
imported>Leoetlino
(add information on where to find symbols and on the EventFlow / evfl:: library)
(→‎NintendoSDK: libcurl)
 
(2 intermediate revisions by 2 users not shown)
Line 7: Line 7:
* NintendoSDK nnSdk
* NintendoSDK nnSdk
* NintendoSDK gfx 4.4.0
* NintendoSDK gfx 4.4.0
* NintendoSDK NEX 4.2.1 (only in newer versions; used for PosTrackerUploader and scrapped save transfer functionality)
* NintendoSDK NEX 4.2.1 (only in newer versions; used for [[PosTrackerUploader]] and scrapped save transfer functionality)
* NintendoSDK libcurl 4.4.0 (only in newer versions; used for PosTrackerUploader and scrapped save transfer functionality)
* NintendoSDK libcurl 4.4.0 (only statically linked in newer versions; used for [[PosTrackerUploader]] and scrapped save transfer functionality; dynamically linked in a subsdk in earlier versions of BotW)


Symbols for these libraries can be obtained in early versions of Splatoon 2 (<=3.1.0) or Super Mario Odyssey.
Symbols for these libraries can be obtained in early versions of Splatoon 2 (<=3.1.0) or Super Mario Odyssey.
Line 33: Line 33:
== Nintendo ==
== Nintendo ==
* al::ByamlIter ([[BYML]] library from Super Mario Odyssey)
* al::ByamlIter ([[BYML]] library from Super Mario Odyssey)
* aal:: (audio)
* aal (audio)
* agl:: (graphics, lighting, parameter utils including [[AAMP]])
* agl (graphics, lighting, parameter utils including [[AAMP]])
* eui:: (UI)
* eui (UI)
* gsys:: (graphics, models)
* EventFlow (aka evfl) (event flow library: implements [[BFEVFL]]) and ore:: (utilities for the EventFlow library)
* gsys (graphics, models)
* LinkCommon
* LinkCommon
:* EffectLink (ELink)
:* EffectLink (ELink)
:* SoundLink (SLink)
:* SoundLink (SLink)
* sead:: (framework and core utils)
* NW_Cafe_G3d (aka g3d)
* nw_ptcl (aka ptcl)
* sead (framework and core utils)
* Visualizer (shader debug tools)
* Visualizer (shader debug tools)
* EventFlow/evfl:: (event flow library: implements [[BFEVFL]]) and ore:: (utilities for the EventFlow library)


Symbols for all of these except EventFlow can be found in Splatoon 2 (<= 3.1.0). Symbols for EventFlow are available in Splatoon 2 3.1.0.
Symbols for all of these except EventFlow can be found in Splatoon 2 (<= 3.1.0). Symbols for EventFlow are available in Splatoon 2 3.1.0.
=== Libraries that are not used ===
* elua: event flows are used instead.
* kcol: BotW uses Havok for physics and collision.
* Terrain: BotW's Terrain code is exclusive to BotW and part of ksys.
* AnimationSequence: BotW does have AnimationSequence resources and code, but the AnimationSequence library under the as:: namespace seems to be a separate thing (possibly a standalone version of BotW's AS code?)
* LunchPack: BotW uses its own engine and framework (ksys).


[[Category:Internals]]
[[Category:Internals]]

Latest revision as of 21:26, 12 June 2021

Like many modern games, Breath of the Wild makes heavy use of software libraries to reuse existing code and save development time.

The following list only applies to the Switch 1.5.0 version, even though the Wii U version is likely to share most libraries.

NintendoSDK

  • NintendoSDK multimedia
  • NintendoSDK nnSdk
  • NintendoSDK gfx 4.4.0
  • NintendoSDK NEX 4.2.1 (only in newer versions; used for PosTrackerUploader and scrapped save transfer functionality)
  • NintendoSDK libcurl 4.4.0 (only statically linked in newer versions; used for PosTrackerUploader and scrapped save transfer functionality; dynamically linked in a subsdk in earlier versions of BotW)

Symbols for these libraries can be obtained in early versions of Splatoon 2 (<=3.1.0) or Super Mario Odyssey.

NintendoWare

  • NintendoWare G3d 4.4.0
  • NintendoWare Vfx 4.4.0
  • NintendoWare Font 4.4.0
  • NintendoWare Ui2d 4.4.0
  • NintendoWare Atk 4.4.0
  • NintendoWare ptcl (particle system)

Symbols for these libraries can be obtained in early versions of Splatoon 2 (<=3.1.0) or Super Mario Odyssey.

Havok

  • Havok 2014_2
  • Havok AI 2014_2 (only for NavMesh?)
  • Havok Animation 2014_2
  • Havok Cloth 2014_2
  • Havok Physics2012 2014_2

There are no known titles that shipped with symbols for the Havok library on Switch.

Nintendo

  • al::ByamlIter (BYML library from Super Mario Odyssey)
  • aal (audio)
  • agl (graphics, lighting, parameter utils including AAMP)
  • eui (UI)
  • EventFlow (aka evfl) (event flow library: implements BFEVFL) and ore:: (utilities for the EventFlow library)
  • gsys (graphics, models)
  • LinkCommon
  • EffectLink (ELink)
  • SoundLink (SLink)
  • NW_Cafe_G3d (aka g3d)
  • nw_ptcl (aka ptcl)
  • sead (framework and core utils)
  • Visualizer (shader debug tools)

Symbols for all of these except EventFlow can be found in Splatoon 2 (<= 3.1.0). Symbols for EventFlow are available in Splatoon 2 3.1.0.

Libraries that are not used

  • elua: event flows are used instead.
  • kcol: BotW uses Havok for physics and collision.
  • Terrain: BotW's Terrain code is exclusive to BotW and part of ksys.
  • AnimationSequence: BotW does have AnimationSequence resources and code, but the AnimationSequence library under the as:: namespace seems to be a separate thing (possibly a standalone version of BotW's AS code?)
  • LunchPack: BotW uses its own engine and framework (ksys).