Test version · Viewer · macOS · Windows · Linux
SkinTokens
This is a test version. It is not a released version.
The viewer shows the meshes, materials, textures and animations in a 3D character file. It opens .glb, .gltf and .vrm files, and OpenUSD files (.usd, .usda, .usdc and .usdz). Press R to rig a .glb or OpenUSD file on your GPU, or to put a .vrm file in a T-pose. The viewer saves the result as <name>.rigged.glb or <name>.tpose.vrm in the folder of your file, and shows that path. When the new rig has the shape of a person, the viewer also saves it as <name>.vrm. Each file contains the program, skintokens-viewer.pck, the godot-sandbox file and the weights in the folder w. The program does not connect to other computers. Keep the files in one folder.
macOS
Apple silicon · 1.3 GB
Download for macOS
Apple did not notarize this program. Unzip the file. Remove the quarantine flag one time. Then start the program:
cd skintokens-viewer-macos-arm64
xattr -dr com.apple.quarantine .
./skintokens-viewer
SHA-256 007c5969084e68924495003da7687753e7fc652e2b6de6bc8e8e1d37af197d1b
Windows
x86-64 · 1.3 GB
Download for Windows
Unzip the file. Start skintokens-viewer.exe. The program has no signature. If SmartScreen stops it, click “More info”. Then click “Run anyway”.
SHA-256 15061401795b18161f22e4c7d052817c289620282e85ace09461e83368f30f8b
Linux
x86-64 · 1.4 GB
Download for Linux
mkdir skintokens-viewer
tar xf skintokens-viewer-linux-x86_64.tar -C skintokens-viewer
cd skintokens-viewer
./skintokens-viewer
SHA-256 a571116b53c0e3b408f2e98f77e7ae8086b0e2f527f97ba99a57b582b273ab01
All three checksums: SHA256SUMS. The files are in chibifire/interactor-skintokens-viewer. A preview of the viewer and of the auto-rig in your browser is on slide 4.
Open a model
Drag and drop a file, or type its path
Drag and drop
Drag and drop a .glb, .gltf, .vrm, .usd, .usda, .usdc or .usdz file on the window. The viewer replaces the model on the screen with the new file.
From a terminal
Type the file path after the program name.
skintokens-viewer /path/to/model.vrm
Information
The left panel shows all the meshes, materials, textures and animations in the file. Double-click a texture to see a large view of it.
Keys
Press W to show the wireframe. Press E to explode the model at its joints. Press G to remove the grid from the view.
Controls
The controls card shows all the controls
The viewer shows the controls card in the bottom-right corner when it starts. Press H to close the card. Press H again to show it.
| Right-drag | Orbit |
| Middle-drag | Pan |
| Scroll | Zoom |
| Click a mesh | Mesh details |
| W | Wireframe |
| E | Explode |
| G | Hide grid |
| R | Auto-rig a .glb or OpenUSD file, or put a .vrm in a T-pose (desktop viewers) |
| Esc | Close a popup |
| H | Show or close the controls card |
Preview · in the browser
Look at a model, and rig it on your GPU
This preview can download more than 1 GB of data. This can be slow. The auto-rig downloads the 1.25 GB model. The desktop viewers on slide 1 do not download data.
Drag and drop a .glb, .gltf, .vrm, .usd, .usda, .usdc or .usdz file on this viewer. Press R to save a .glb file that has a rig, or a .vrm file, as a VRM 1.0 file. Your browser downloads the .vrm file. The first time, the viewer starts in approximately 12 seconds because Godot compiles its shaders. To change slides with the arrow keys, click the slide area adjacent to the viewer. To load a guest .elf file, use the console.
Status
Test version: the viewer and the auto-rig are on the desktop
- The desktop viewers rig a .glb file when you press R. On an NVIDIA RTX 4090 (Vulkan), the Windows file on this page gave a test character a rig. The time was 109 s. On an Apple M2 Pro (Metal), the macOS program and data file gave the same character a rig. The time was 159 s.
- When the new rig has the shape of a person, the viewer also saves it as a .vrm file. The test character is a person. Thus the viewer saved a .vrm file. The .vrm file has only the 52 joints of the new rig.
- When you press R on a .vrm file, the viewer keeps the skeleton of the file. It saves the file as VRM 1.0 in a T-pose, and turns each joint to point to the next joint. The previous version did this for seven test files on macOS and two test files on Windows.
- The viewer opens OpenUSD files with OpenUSD in a RISC-V guest program. It changes the meshes, materials, skeletons and animations to a .glb file. Press R to rig the model. On Windows, this version gave a rig to a .usdz character that has Z up. It saved the character as a .vrm file. The previous version opened a .usdz character with 24 animations, and gave .usda characters a rig.
- There is no test result for the Linux viewer of this version.
- At this time, the viewer does not save .usdz files.
- To add an animation to a character with a rig, use the Kimodo motion viewer.
- The auto-rig in the browser is a previous version of the rig program. On an Apple M2 Pro, it gave the same 34 joints to one test character in Chrome 152 and in Firefox 158. After the browser downloaded the model, that rig used 132 seconds in Chrome and 182 seconds in Firefox.
- The web viewer uses the Godot Mobile renderer. In Firefox 158 on an Apple M2 Pro, it opened two OpenUSD files. It saved a .glb file that has a rig as a .vrm file with the same 22 VRM joints as the macOS viewer.
Credits
Parts and licenses
- interactor-skintokens-guest is the rig program
skintokens.elf. Its license gives all rights to K. S. Ernest (iFire) Lee only. At this time, the rig program does not have a free license. Thus the desktop files do not have a free license.
- skin-tokens-ggml (Apache License 2.0) is the rig code in the rig program. It follows the SkinTokens code (MIT License). The rig code uses ggml and ggml-rd (MIT License) on the GPU. The rig program uses nlohmann/json (MIT License) to read and write glTF data.
- SkinTokens by VAST-AI (MIT License) is the rig model. The weights in the desktop files are its BF16 GGUF files from chibifire/SkinTokens-GGUF-BF16.
- Model Explorer (MIT License) is the viewer. Godot Engine (MIT License) is the engine of the program.
- godot-sandbox and libriscv (BSD 3-Clause License) operate the viewer scripts and the rig program as RISC-V guest programs.
- godot-vrm and Godot-MToon-Shader (V-Sekai, MIT License) load VRM files and supply the toon shader.
- interactor-motion-guest (MIT License) is the animation program of the Kimodo motion viewer. The two viewers have the same program file. Thus this viewer also contains it. It uses kimodo-ggml, motion-bricks-ggml and Kimodo by NVIDIA (Apache License 2.0).
- The program file also contains 18 inputs for the animation program. An LLM2Vec encoder from chibifire/Llama-3-Kimodo-GGML made them. These inputs are the output of a program. No person wrote them. The viewer does not contain the encoder. “Built with Meta Llama 3” (Meta Llama 3 Community License).
- OpenUSD by Pixar (Tomorrow Open Source Technology License 1.0) reads OpenUSD files. OpenUSD uses oneTBB (Apache License 2.0). interactor-usd-guest (MIT License) operates them as a RISC-V guest program.
- LICENSE.md contains each license in full. CITATION.cff tells you how to refer to each part. Each desktop file contains these two files and the NOTICE file.
- The sample character in the web viewer is Mille "Mire" Feuille by Mohka Noir. Its license is the Apache License 2.0. The chibifire project made this GLB file from MireQuest.blend, the source file of the author. The desktop files do not contain it.
- The browser preview reads the same BF16 GGUF files from chibifire/SkinTokens-GGUF-BF16 and operates the rig on the GPU with WebGPU.