How to import vanilla custom levels by AndresL64 - dbc60/Render96Wiki GitHub Wiki

Level geolayout importer/exporter by AndresL64 (DECOMP ONLY)

Guide edited by DorfDork

Tools Needed:

LEVEL GEOLAYOUT IMPORTER/EXPORTER

Exporting a level geolayout will not change the collisions or an object's position around the level. This is useful for levels that are a reimagining or simple texture changes

Table of Contents:

Section 1

SETTING UP FAST 64 AND IMPORT A LEVEL MESH

1.) Within the Fast64 addon, set up your file settings like so:

2.) Open the Geolayout pointer list and search the name of the level what you want to import. For example: BOB OMB BATTLEFIELD

3.) Search for OBJ: MAIN GEOMETRY LEVEL (some levels like WDW, have 2 main geometry levels)

4.) Add the ROMBank Address with the offset of the Main Level Geometry then convert the decimal number into hex. In this case it would be 4217440 + 001160 = 4218600 then converted to hex = 405EE8

5.) Back in blender go to the SM64 Geolayout Importer and apply the HEX Number you just got. Make sure the Level is to the level you are going to edit.

If you have done everything right then you'll get a result that looks like this! No textures or objects will be included with the import.

Section 2

EDITING MESH, TEXTURES AND EXPORT

1.) Go ahead to do some edits

2.) The levels mesh has bones as well. Each part of the mesh is assigned to one of the bones and each bone have different properties. To edit them you want to select the armature, go to “Pose Mode”, select the bone and go to “bone properties.”

  • background: The mesh will be billboarded and always look at the camera (like trees)
  • opaque: This is the most use for “solid” objects
  • opaque decal: Mesh decal on other mesh, example: signs on peach castle walls
  • cutout: Mesh with transparency, example: peach's castle windows and fences
  • transparent: Mesh transparency, example: mirror or the bowser 2 blue water painting in the basement.
  • transparent decal: Mesh with transparency on the floor, example: shadows.
  • transparent intersecting: Not tested, like decal?

2.1) Assigning new mesh to a bone: select the mesh, go to edit mode, add and/or select the new mesh

2.2) Go to “object data properties” and assign the mesh to one of the bones (in this case, I will assign it to 004-displaylist)

IMPORTANT

DONT ASSING THE MESH ON 2 OR MORE BONES, every bone must have his own mesh

3.) Time to export. Select the armature, go to edit mode and add a new bone with (SHIFT + A), rename it “root”

4.) Select all the bones and at last, the root bone, press (CTRL + P) and select “keep offset” you will get something like this

5.) Go to SM64 GEOLAYOUT EXPORTER, and in “export” select “c”, in “export type” select level data:

6.) Select the level to replace and choose a name for it (The name can be anything you want it to be. Be sure to remember the name as we will use it later)

Now you can click on “Export Armature Geolayout”, wait until the success logo appears

Section 3

PUTTING THE LEVEL INTO THE GAME

1.) Go to your decomp directory and you will find you folder with the level in it

Open the folder and open the “geo.inc.c” file:

Copy these lines of code:

2.) Now go to this directory and open up the “geo.inc.c”

3.) Delete or comment this lines and paste the lines of the “geo.inc.c” of your level

4.) Save and compile 😊