Repository navigation
RM3.1
If you have all of these done, you can continue!
First thing you should do when opening Blender is save your .blend file in your map folder.
You can name the .blend file anything you want, it doesn't matter.
Then you can start modelling anything you want in Blender! Just make sure to only use cubes, as ReMapper can not import the mesh of objects.
Next after we model something we like and want to import it into Beat Saber, we can export it using the ReMapper Blender Exporter Addon we should've installed earlier.
-
Show Object Color- i forgor, not important right now. -
File Name- Name of the model that we will reference in our code, I'm going to be calling this model "skrunkle" -
Only Selected- Only exports the objects selected in Blender. For example if I had this on, the model would only export the one cube I have selected above instead of all of the cubes. -
Export Animations- Exports animations we made in Blender. I don't have this on since I am only making a static environment, this skrunkle is NOT moving. -
Sample Rate- Basically how accurately the Blender animation should be exported. The lower the number, the more accurate the animation is, but the more events there are too. We don't need to worry about this number for this example, so I just have it set at 1. -
Export- Exports the model to the same place as the .blend file, thats why we saved the .blend file in our map folder!
Alright now we can open our code:
import * as rm from 'https://deno.land/x/remapper@3.1.2/src/mod.ts';
const map = new rm.Difficulty("ExpertPlusLawless", "ExpertPlusStandard");
// ----------- { SCRIPT } -----------
// Example: Run code on every note!
// map.notes.forEach(note => {
// console.log(note.time)
// })
// ----------- { OUTPUT } -----------
map.save();We then can make some lines of code that will make our environment:
import * as rm from 'https://deno.land/x/remapper@3.1.2/src/mod.ts';
const map = new rm.Difficulty("ExpertPlusLawless", "ExpertPlusStandard");
// ----------- { SCRIPT } -----------
// Make a new variable called scene, which is a new ModelScene that is made up of cube geometry
const scene = new rm.ModelScene(new rm.Geometry("Cube"));
// Make a static scene using the model we exported in Blender, "skrunkle"
scene.static("skrunkle");
// ----------- { OUTPUT } -----------
map.require("Chroma"); // Make sure chroma is enabled!
map.save();Then after we run the code and look in Beat Saber, we should see that the model is now in the game!