{"id":13662358,"url":"https://github.com/ManakhovN/FigmaToUnityImporter","last_synced_at":"2025-04-25T07:31:35.922Z","repository":{"id":37599873,"uuid":"365621372","full_name":"ManakhovN/FigmaToUnityImporter","owner":"ManakhovN","description":"The project that imports nodes from Figma into unity.","archived":false,"fork":false,"pushed_at":"2025-01-09T05:25:28.000Z","size":5425,"stargazers_count":521,"open_issues_count":5,"forks_count":63,"subscribers_count":13,"default_branch":"main","last_synced_at":"2025-04-07T23:06:13.786Z","etag":null,"topics":["figma","import","unity"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ManakhovN.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-05-08T22:18:33.000Z","updated_at":"2025-04-07T09:43:51.000Z","dependencies_parsed_at":"2025-01-18T21:42:36.019Z","dependency_job_id":"5053dcc0-8fe6-4d60-a018-c8b5f6fc151a","html_url":"https://github.com/ManakhovN/FigmaToUnityImporter","commit_stats":{"total_commits":38,"total_committers":4,"mean_commits":9.5,"dds":"0.21052631578947367","last_synced_commit":"5a73f9b5b0c6388646c31483f955d92881c4fa88"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ManakhovN%2FFigmaToUnityImporter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ManakhovN%2FFigmaToUnityImporter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ManakhovN%2FFigmaToUnityImporter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ManakhovN%2FFigmaToUnityImporter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ManakhovN","download_url":"https://codeload.github.com/ManakhovN/FigmaToUnityImporter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250774821,"owners_count":21485231,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["figma","import","unity"],"created_at":"2024-08-02T05:01:56.457Z","updated_at":"2025-04-25T07:31:35.916Z","avatar_url":"https://github.com/ManakhovN.png","language":"C#","readme":"# Figma To Unity Importer\n\n## Overall information\nTool that imports nodes from Figma into the Unity.\nBefore using I want u to notice, that the project is raw, and I can't promise you that I will develop it intensively.\nSome features are not ready yet. Some features are impossible to quickly recreate in Unity.\n\n## Contributing\nYou are welcome to contribute. And you are free to use this project for any purpose.\n\n## Install\nyou can add `https://github.com/ManakhovN/FigmaToUnityImporter.git?path=/Assets/FigmaImporter` to Package Manager\n\n## Usage\nFirstly, you need to put FigmaImporter into your project.\nThen new menu option will appear.\n![Figma importer menu option](./ReadmeImages/step0.png)\n\nNow press OpenOauthUrl button.\n\n![Figma importer window](./ReadmeImages/step1.png)\n\nIt will redirect you to the access allowance page. Press \"Allow access there\"\n\n![Figma access](./ReadmeImages/step2.png)\n\nThen the callback page will be opened. Copy ClientCode and State into Figma Editor window. And press \"GetToken\" button. \n\n![Client params](./ReadmeImages/step3.png)\n\nIf token appeared, then you did everything right. If not, repeat the step with access allowance.\n\n![Token](./ReadmeImages/step4.png)\n\nNow you can copy the node link, and put it in the URL field in unity.\n\n![Node link](./ReadmeImages/step5.png)\n\nNow add Canvas to canvas field in the importer editor window.\nAnd press the \"Get Node Data\" button. It will load all data about the node with it's children. Now you can choose the action for every child.\nBy default it will determine the nodes that it can try to generate. Others it will render. \nAlso you can override Sprite, so it will put it instead of rendered node.\nThe actions are: \n- Generate - tries to generate node via UGUI. \n- Render - Loads render of the node via Figma API. \n- Transform - sets only transform for the generated object. \n- None - does nothing. \n\n![Get File](./ReadmeImages/step6.png)\n\nAs you can see there are three additional buttons. That help you to change actions on nodes:\n- To generate - it is default behaviour. Render nodes as raster. Generate nodes that has childs. Generate text nodes.\n- To Transform - set action \"Transform\" to all nodes. It can be useful if you apply changes to existing object.\n- To SVG - if you have installed Unity's Vector Graphics package it will try to load all images as svg.\n\n![Get File](./ReadmeImages/step6_1.png)\nWhen you picked all actions. Press \"Generate nodes\" button. And it will try generating the node in referenced Canvas. That's all!\n\n![Get File](./ReadmeImages/step7.png)\n\nIf you pick already existing object (previously generated node). You can set it as root object. And all changes will be applied to the created gameobjects. It finds appropriate gameobjects by their id's in name in squared braces like [0:329]\n![Get File](./ReadmeImages/step7_1.png)\n\nBy the way, there is an option to scale objects and raster images by changing scale parameter. The maximum scale that you can get is x4. Figma doesnt allow to get bigger scale of rendered image.\n![Get File](./ReadmeImages/step7_2.png)\n\nThere is also one thing with Fonts.\nIf you got the error about Font. You should add it in FontLinks.asset scriptable object.\n\n![Font](./ReadmeImages/step8.png)\n\n## Update 07.10.2021\nChanged position calculating for nodes. Now it doesnt use tricky operations with parents chaniging.\nNow if you choose existing object, instead of canvas, it will apply all changes to it without creating a new one.\nAlso added scale option.\nWill test it and rewrite readme a little bit later.\n##Update 21.11.2021\nSome refactoring.\nAdded SVG support.","funding_links":[],"categories":["C\\#","C#"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FManakhovN%2FFigmaToUnityImporter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FManakhovN%2FFigmaToUnityImporter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FManakhovN%2FFigmaToUnityImporter/lists"}