Docs/Stage Info

From Sunshine Wiki
Jump to navigation Jump to search

Warps & Rendering[edit | edit source]

There are two types of stage warps in Sunshine, Map Warps & Render Warps. Both are designed around certain parts of the stage model being rendered when interacted with.

Map Warps are about warping Mario to a designated area

Render Warps are not necessarily warps, but more about rendering parts of the map that are yet to be rendered

Map Warps are used in Delfino Plaza for the enterable buildings and Render Warps are used in Hotel Delfino to render the different floors. They function based on collision types with both having a solid and pass-through variant. However, Render Warps also have their own actor that does the same function as the pass-through collision called WarpArea.

Warpvtx.png

When the game loads the stage model, the first joint's vertex group(s) are loaded whilst the rest are unloaded. 00dpt, the main stage model, is the first joint or ID 0 respectively. 01house, 02house, and test are the rooms above the stage such as the boathouse and cafe.

Mapinfo.png

To render the rooms and set up the map warps, the Map actor must be edited. The Map actor contains the setup info for Map Warps such as warp count, ???, vertex rendering, and warp point info. The maximum number of warp groups that are available are 9, Warp Groups A through I. Each of these groups are made up of two points that Mario spawns from when warping. It is best to keep the points parallel to each other to not cause issues. The vertex rendering choices choose which vertex groups are rendered when warping out of the specific warp point. Since the most used amount of warp groups in-game is 2, editing the parameters and adding 2 new integers for each warp must be done in order to accommodate the vertex rendering.

In terms of objects loading and unloading when interacting with these warps, this is controlled by Room Cubes. Room Cubes are stored in tables.bin under the group エリアキューブテーブル.