Jump to content

Mii Studio (nintendo.com): Difference between revisions

From Mii Technical Wiki
add some information about mii studio
Storage Format: add kaitai?
Line 8: Line 8:
[[Mii]]<nowiki/>s are stored in Mii Studio using the browser's local storage. They are encoded in base64.
[[Mii]]<nowiki/>s are stored in Mii Studio using the browser's local storage. They are encoded in base64.


...
Here is a [[Kaitai Struct]] definition:
 
[[Mii Studio Local Storage.ksy]]


=== Rendering ===
=== Rendering ===
Mii Studio appears to render Mii data through layering. It uses WebGL to draw onto a canvas, and then does a series of draw calls with transformations.
Mii Studio appears to render Mii data through layering. It uses WebGL to draw onto a canvas, and then does a series of draw calls with transformations.
[[File:Mii Studio WebGL Debugging.png|alt=A screenshot of Safari's developer tools, showing the steps taken in drawing a Mii head.|left|thumb|432x432px|Debugging Mii Studio's WebGL rendering with Safari]]
[[File:Mii Studio WebGL Debugging.png|alt=A screenshot of Safari's developer tools, showing the steps taken in drawing a Mii head.|left|thumb|432x432px|Debugging Mii Studio's WebGL rendering with Safari]]

Revision as of 20:13, 4 August 2025

Editing a Mii in Mii Studio
Editing a Mii in Mii Studio

Accessed at https://studio.mii.nintendo.com, Mii Studio is a web app for any Nintendo account user to edit their associated Miis.

Implementation

Through "reverse engineering" (lol) we have found out this information about Mii Studio:

Storage Format

Miis are stored in Mii Studio using the browser's local storage. They are encoded in base64.

Here is a Kaitai Struct definition:

Mii Studio Local Storage.ksy

Rendering

Mii Studio appears to render Mii data through layering. It uses WebGL to draw onto a canvas, and then does a series of draw calls with transformations.

A screenshot of Safari's developer tools, showing the steps taken in drawing a Mii head.
Debugging Mii Studio's WebGL rendering with Safari