Skip to content

Expression Icon Capture ​

A tool that applies an expression AnimationClip to an avatar for preview, captures a screenshot of the face directly from that preview, and saves it as an icon PNG for the VRChat expression menu.

Window: main menu さたにあしょっぴんぐ/エディタカスタマイザー/表情アイコン撮影 (Satania Shopping / Editor Customizer / Expression Icon Capture)

Workflow ​

  1. Specify the avatar and an expression clip, and a preview appears with the face framed automatically
  2. Adjust Yaw / Pitch / distance / FOV / lighting with the sliders (the preview updates immediately)
  3. Press "撮影" (Capture) to save the icon PNG. Register multiple clips and you can export them all at once with batch capture

Highlights ​

  • Does not touch your real scene — An isolated preview scene is created behind the scenes, and a copy of the avatar is captured inside it
  • Automatic face framing — Estimates the position and size of the face from the Humanoid Eye / Head bones. Fine-tuning with the arrow pad is also possible
  • Transparent background support — Two shots are taken on black and white backgrounds and composited, so you get a clean transparent PNG regardless of shader
  • Any resolution — Arbitrary size + presets (128–2048) + supersampling (1×/2×/4×)
  • Batch capture — Resets before every shot so that expressions and poses do not carry over between clips
  • Output can be switched between sRGB / Linear, with automated Sprite import settings
Implementation Notes (for Developers)
  • Renders with Camera.Render() inside an isolated scene from EditorSceneManager.NewPreviewScene(). Because this uses the same rendering path as a real scene rather than PreviewRenderUtility, skybox-derived ambient light and reflections behave the same as in a normal scene
  • Transparency restores straight alpha from the black and white shots with α = 1 − mean(white−black), RGB = black / α
  • Ambient light has three options: "Skybox から (推奨)" (From Skybox (recommended)) / a specified Flat value / taken from the current scene

MIT License