To create a panorama, do the following:
- Open Minecraft.
- Set your FOV to
90.00. - Disable the
FOV Can Be Altered By Gameplaytoggle. - Put Minecraft in fullscreen.
- Choose the direction you want it to start out facing (find the y vector of that rotation (should be between
-180and180), this will be referenced asrotY). - Take screenshots in the following directions in this order (the order matters because the script uses the creation date of the file to determine the order).
{ x: 0, y: rotY }{ x: 0, y: rotY + 90 }{ x: 0, y: rotY + 180 }{ x: 0, y: rotY + 270 }{ x: -90, y: rotY }{ x: 90, y: rotY }
- Create a panoramas folder inside the folder containing this README file if the folder does not already exist.
- Create a folder inside the panoramas folder with the name of your panorama.
- Create an
inputfolder inside of the folder with the name of your panorama. - Paste the screenshots into the
inputfolder. - (OPTIONAL) Add a
manifest.jsonand (OPTIONAL)pack_icon.pnginto the folder with the name of your panorama if you would like an.mcpackfile to be generated for your panorama. - Run the script with
npm run start. - The output will be inside the folder with the name of your panorama.
- There will be a folder called
outputinside of the folder, which will contain the images named correctly to be put into thetextures/uifolder on a resource pack. - There will be a folder called
named_outputinside of the folder, which will contain the images named based on which side of the panorama they are. - There will be a file called
${panoramaName}Panorama.mcpackinside of the folder if you have amanifest.jsonin the folder, which is the resource pack for the panorama.
- There will be a folder called
This is an example set of commands to use for positioning yourself correctly to take the screenshots for the panorama.
/tp ~~~ 0 0
/tp ~~~ 90 0
/tp ~~~ 180 0
/tp ~~~ 270 0
/tp ~~~ -90 0
/tp ~~~ 90 0This is an example set of commands and scripts to use for positioning yourself correctly to take the screenshots for the panorama.
/tp 48183.0 118 31372.0 0 0Note: The script in this example uses 8Crafter's Server Utilities & Debug Sticks add-on (you give yourself the canUseScriptEval tag and then paste it into chat).
Run the below script 6 times, each time incrementing the 0 at the end, taking a screenshot after running it each time.
${ase}function setPanoramaCamera(location, rotY, screenshotIndex = 0) {player.camera.setCamera("minecraft:free", { location, rotation: { x: screenshotIndex < 4 ? 0 : -90 * (-1) ** screenshotIndex, y: rotY + (screenshotIndex < 4 ? screenshotIndex * 90 : 0) } })}; setPanoramaCamera({ x: 48183, y: 118 + (player.getHeadLocation().y - player.location.y), z: 31377 }, 180, 0);