The Camera & sharing

Export a .glb

Export a fig as a 3D file that game engines and 3D apps can open.

In the fig editor, open Share in the menu bar. The menu has three groups. For a game: Roblox, .glb, sprites… has Roblox and Game development (on iPhone and iPad it reads For a game: .glb, sprites… and has only Game development). Into a photo, or AR… has A photo of yours and Your real table. To the community, or a friend… has Community and A friend with Ünflat. Select a group to open the share card. Selecting a row on the card shows its page. A photo of yours starts a photo scene with the fig placed in it; Community opens the share sheet .

The .glb export is on the Game development page, next to the sprite sheet and .stl exports.

Cards taller than the screen scroll. Dragging across buttons scrolls without pressing them. If an export fails, a note shows: Couldn’t make that file: nothing was saved.

↗ Share it
RobloxA game prop or accessory (.lowpoly file).
Game developmentExport for Unity, Godot, or Unreal (.glb, sprite sheets, .stl).
A photo of yoursIt stands right inside the picture.
Your real tableStand it in the room in AR (.usdz)
CommunityShare to the community so others can view and remix.
A friend with ÜnflatFull .fig source file.
Every row of the fig's share card. A group from the Share menu shows only its own rows. Select a row and the card flips over.

Game development

The page is titled Game engine. The .glb settings are at the top, with two toggle chips for the file’s contents:

Game engine
Game model (.glb)
Colors & paintClips: Idle, Walk
Animations play stop-motion at 6 a second, as the fig does.
Download .glb
The .glb section on the Game engine page. The second chip names the fig's clips.
  • Colors & paint: Bakes fills and pixel paint into one texture. Pixels stay sharp at any size. See-through pixels export as holes (alphaMode MASK).
  • Animation toggle: Exports the fig’s moves. A part, a part group or Everything holding a pose stands in that stance in the file, as the fig editor shows it, with or without the toggle. Makes one animation clip per move set, named after the set. Has the moves of every part that moves, and their idle moves. Figs with no move sets export one clip named after the fig. Each move set with steps becomes its own clip, steps in order, named after the set. Moves on a part group bake into the fig’s own clip and every move set clip without steps, playing along with each part’s own moves. A move set with steps has the group moves its steps set. Each part group is its own node in the file, with its parts under it. A group whose parts move All together about The group’s middle plays its move on that node, so a game can move the group. A loop on Everything (see Preset moves ) plays on one node named Everything that contains the whole fig. A move a tap starts (On tap, Once, Open) is left out of those clips and gets a clip of its own, named after the part (e.g., Arm L on tap). In a move set’s clips, the set’s name comes first (e.g., Walk Arm L on tap). Bends curl in the file too, including Wiggle and a Sway that bends. All clips follow the fig’s Frame rate and easing (held frames for stop-motion rates; in-between frames for Smooth). A clip of looping moves is one exact loop of them, so it plays round with no jump. One move loops at its own length, and moves of different lengths loop at the shortest length they all come round in. Moves that never line up in a clip of usable length each play up to 1% faster or slower so the clip still closes. The chip shows the clip names (e.g., Clips: Idle, Walk, Run, Wave). If there are no moves, the chip reads Animations and is greyed out.

The note under the chips gives the frame rate: Animations play smooth, 24 a second, as the fig does. for Smooth, or, for example, Animations play stop-motion at 6 a second, as the fig does. for stop-motion rates. Figs with no moves and a single still skin show Opens in Godot, Unity, Blender, or three.js. Pixel textures stay crisp.

Paper animations (Ripple, Breathe, Curl) are left out of the file. The note reads: Paper animations do not export to .glb format.

A lone face (a Sheet, or any part that is open on one side) gets a back in the .glb, the skins .zip, the .usdz, and the Roblox .lowpoly. It shows from both sides, its paint mirrored from behind, as in the fig editor. Closed parts are written as before.

The skin the fig has on now bakes into the file. Animated skins export the frame showing now. Figs with several skins have a Game skins (.zip) export: it makes the base model.glb wearing the first skin, plus a skins folder with a .png for every skin and a README file. You swap skins in the game engine by changing the material’s texture.

Sprite sheet (.png + .json)

The sprite sheet settings come after the .glb section (and after Game skins (.zip) on a fig with several skins). This draws the fig from set camera angles, turning it by a set step each time. You get a see-through .png sheet and a .json file in the Aseprite format. It uses the fig’s current look. The files are named after the fig.

Game engine
Sprite sheet (.png + .json)
ViewsStrip48
AngleTop-downHighDown
Cell128256
FramesStill48
CameraFlatReal
GapNone2 px
RowsClockwiseRPG
Download
The sprite sheet form on the Game engine page.
  • Views: Strip draws one angle. 4 or 8 draws several angles, one per row of the sheet.
  • Angle: Sets the camera height. Top-down is a 2:1 isometric view (26.6°). High is a 45° view. Down looks almost straight down.
  • Cell: Sets each cell’s size in pixels (128 or 256).
  • Frames: Still draws one frame per view. 4 or 8 splits one full cycle of the fig’s moves (idles, looping pose chains, animated skins) across several columns. The cycle is a length every move closes on (the longest move, when one exists), else the length most of the fig moves to. Part group moves count as loops; a part set to Paused or holding a pose does not. The frames are spread evenly through the loop on the move’s own beat, not the fig’s Frame rate, so every column is a different picture and each export uses the same moments. Figs with no loops make a single column.
  • Camera: Flat is nearly flat, with almost no perspective (a narrow 6° lens). Real uses true perspective, from the editor’s view. Both frame the whole fig in every cell, in every frame’s pose: when the fig would not fit, the camera aims at the fig’s middle and moves back until it fits. Real keeps its height and lens.
  • Gap: None places cells edge to edge. 2 px adds 2px of padding filled with copies of the edge pixels, so colors don’t bleed when the engine smooths textures.
  • Rows: Clockwise orders the turns starting from the front. RPG orders them the RPG Maker way (down, left, right, up).

Sprite sheets have no watermark. 3D print (.stl) settings are below the sprite sheet section.

Opening it

The .glb opens in Godot, Unreal Engine, and Blender. Unity needs the glTFast package. In the engine, turn off mipmaps and set texture filtering to ‘Point’ (Nearest Neighbor) to keep pixels sharp.

The app makes .glb files but can’t open them. To send someone a fig they can edit, use the A friend with Ünflat row. This page is titled Ünflat file. Select Download .fig to make the Ünflat file. The file name is the fig’s name in lowercase, with hyphens for spaces and accents removed (e.g., Ünflat Incorporated makes unflat-incorporated.fig).

Figs remixed from community pieces that block .glb export can’t export files. The piece’s page shows remix only (no game file), and your share card notes it too. See Remixing .

The other rows

  • Your real table (Into a photo, or AR…) makes a .usdz file. Opening it on a supported iOS/iPadOS device places the fig in AR. Pinch to resize the fig. See-through paint exports as holes, as in the .glb.

Photos, loops, and videos come only from the Camera tab. Scenes export from their own page: Export a scene .

Newsletter

Don’t miss the next fig

New features, walkthroughs, and community picks, a few times a month, straight to your inbox. No spam, unsubscribe anytime.