work in progress
The SketchApp Import is a minimalistic plugin for Unity, bringing UI components and UI prototypes designed in Sketch into your Unity projects.
The plugin is currently based and dependent on the export files provided by either Framer Generator (free) or Framer Classic (trial/paid), loading PNG assets as sprite images and position them according to your design.
Framer Generator (and perhaps Framer Classic too) supports exporting from Photshop and Flinto, soo this plugin can also be used to import Photoshop and Flinto designs into Unity.
(Import/usage instructions last updated 11/19/2019)
If you never used the Sketch Framer workflow checkout some of guides on Medium like Sketch Framer Bridge and Framer Sketch Workflow, especially on how to best prepare your design in Sketch for the export workflow. Most of it will also be true for later importing to Unity. This primarily regards formatting and naming conventions for easier navigation in all platforms.
- Open Sketch with the relevant file open
- Open Framer Generator, and click Sketch > Import
- Check the location of the original .sketch file to now see an identically named .framer file next to it.
- Proceed to
Layers and Images Extraction from Framer File
section.
- Open Framer Classic, navigate to the Code tab, and click Import in the bottom left (third option up from the bottom)
- Select the Sketch file from here that you saved in Sketch earlier - this is the most formal way to import from Sketch to Framer
- Now choose File > Save to create the Framer file
- Proceed to
Layers and Images Extraction from Framer File
section.
- View that exported framer file's contents (in Mac by right click, Show Package Contents) to show a folder structure that includes the
imported
subfolder. - Navigate into the
imported
subfolder, then into the[appName@Resolution]
folder, eg. MyAppName@1x. - Copy the
images
folder andlayers.json
file from here into somewhere directly accessible, like the Unity Assets folder. - Proceed to Unity Import section.
- Inside Unity make sure that
Editor Settings/Default Behavior Mode
is set to 2D, so the assets will be imported as sprites. - Open the plugin via `Window/Sketch Import
- Select the
layers.json
from your Sketch Export (inside theimported
subfolder as mentioned above). - Select an UI component (like Canvas,Panel,...) inside your scene as the Root for your imported UI layers.
- Note: Selecting Canvas allows you to use "Scale With Screen Size" as the UI scale mode, where the reference resolution can be adjusted so the Sketch file resolution matches the Unity resolution.
- Framer Generator - for exporting from Sketch (osx only)
- Framer Classic - a paid alternative to Framer Generator
- Json.Net.Unity3D 9.0.1 - for parsing the json file provided by Framer Generator