{"id":8437,"date":"2024-02-22T09:46:51","date_gmt":"2024-02-22T09:46:51","guid":{"rendered":"https:\/\/www.katsbits.com\/codex\/?p=8437"},"modified":"2024-02-22T09:46:51","modified_gmt":"2024-02-22T09:46:51","slug":"fbx-scale-roblox","status":"publish","type":"post","link":"https:\/\/www.katsbits.com\/codex\/fbx-scale-roblox\/","title":{"rendered":"Roblox &#038; Blender &#8211; FBX Export\/Import Object Scale"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-light-blue ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-69fe1c2c684a3\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-69fe1c2c684a3\"  aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.katsbits.com\/codex\/fbx-scale-roblox\/#description\" >Description<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.katsbits.com\/codex\/fbx-scale-roblox\/#fbx-export-scale\" >FBX Export Scale<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.katsbits.com\/codex\/fbx-scale-roblox\/#why-do-we-need-to-know-scale\" >Why do we need to know Scale?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.katsbits.com\/codex\/fbx-scale-roblox\/#object-scale-test\" >Object Scale Test<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.katsbits.com\/codex\/fbx-scale-roblox\/#timestamps\" >Timestamps<\/a><\/li><\/ul><\/nav><\/div>\n<div style=\"background-color: black; position: relative; padding-bottom: 56.25%; padding-top: 25px; height: 0; overflow: hidden; max-width: 100%;\"><center><iframe style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%;\" src=\"https:\/\/rumble.com\/embed\/v4c86th\/?pub=d3lcu\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/center><\/div>\n<h3><span class=\"ez-toc-section\" id=\"description\"><\/span>Description<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Although Roblox Studio and Blender 3D use the same <a href=\"https:\/\/www.katsbits.com\/codex\/units\/\">unit of measurement<\/a>, <em>metres<\/em>, object scaling, how big models appear to be in-game, differs; essentially <strong><em>Blenders default scene scaling is 100x larger than Roblox defaults<\/em><\/strong> so 3D meshes appear much larger in Studio. While this can be addressed in Roblox Studio by editing the <strong>Size<\/strong> property of the <strong>MeshPart<\/strong>, a better option might be to correct scale during export from Blender to FBX. <\/p>\n<p><b>Duration<\/b>: total c. 4 mins (00:04:00).<br \/>\n<b>Info<\/b>: 1080p.<br \/>\n<b>Suitability<\/b>: Beginner+.<br \/>\n<b>Source<\/b>: n\/a.<br \/>\n<b>Product ID<\/b>: n\/a.<\/p>\n<blockquote><p><strong>Design note<\/strong>: some additional considerations exporting FBX models from Blender for import into Roblox Studio;<\/p>\n<h4><span class=\"ez-toc-section\" id=\"fbx-export-scale\"><\/span>FBX Export Scale<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Once the object is prepped and scaled relative to Blender, export as normal &#8211; <strong><em>File \u00bb Export \u00bb FBX<\/em><\/strong>. In the Blender File View window that opens, under <strong>Transform<\/strong> change <strong>Scale<\/strong> [1] from 1.00 to  <strong>0.01<\/strong> &#8211; <strong>Scale: 0.01<\/strong> &#8211; then click <strong>Export FBX<\/strong> to finish.<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/roblox\/blender-fbx-export-scale.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/roblox\/blender-fbx-export-scale.jpg\" alt=\"FBX export scale\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Changing object Scale [1] during export to FBX also means any further models will use the same value.<\/i><\/p>\n<h4><span class=\"ez-toc-section\" id=\"why-do-we-need-to-know-scale\"><\/span>Why do we need to know Scale?<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>There are couple of reasons we might want to establish scale between Roblox and Blender;<\/p>\n<ul>\n<li><strong>Saves time<\/strong>: in the long run it saves time because objects can be imported without having to undergo, per-instance, readjusted in Roblox Studio.<\/li>\n<li><strong>Workflow<\/strong>: similarly, although scale may differ, object dimensions don&#8217;t, notwithstanding scale differences Roblox is interpreting FBX files 1:1. In Blender this means models can be made as normal without need for confusing conversion metrics, especially when using the <a href=\"https:\/\/www.katsbits.com\/codex\/roblox-grid-blender\/\">Roblox grid setup<\/a>.\n<li><strong>Physics behaviour<\/strong>: how objects interact and collide with one another depends on their being correctly scaled, disparities between object dimensions and object scaling alter how the engine processes those objects, and how they then might be treated by the collision system.<\/li>\n<\/ul>\n<h4><span class=\"ez-toc-section\" id=\"object-scale-test\"><\/span>Object Scale Test<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>A simple exercise to test scaling is; export from Blender a 1 x 1 x 1 metre\/unit cube and import that in to Roblox Studio to see how big it is. Or alternatively, create and export a simple shape using Roblox Studio e.g. a 4 x 4 x 8 unit block (this is roughly the volume occupied by the player), and import that into Blender to see what scale differences there may be. To do the latter, highlight the reference object in the project <strong>Explorer<\/strong> [2] and right-click. In the context menu select <strong>Export Selection&#8230;<\/strong> [3]. This opens another window. Type a file name, change the save location, then click <strong>Save<\/strong> for Studio to generate an OBJ file.<\/p>\n<div style=\"background-color: #fc0; color: #000; width:98.5%; padding: 1.0em;\"><strong>Important<\/strong>: Roblox Studio exports content as <strong>*.OBJ<\/strong> models (mesh and material data only). When importing these, OBJ files, into Blender they will appear correctly scaled relative to the default scene. If this same object is then (re)exported from Blender as an *.fbx, it will be subject to the (re)scaling requirement. Both OBJ and FBX files (confusingly) handle scale differently.<\/div>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/roblox\/roblox-reference-object-export.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/roblox\/roblox-reference-object-export.jpg\" alt=\"Roblox Object Export\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Exporting a reference object from Roblox can be done from the project <strong>Explorer<\/strong> [2]; right-click the highlighted object [1] then click <strong>Export Selection&#8230;<\/strong> [3] in the menu&#8230;<\/i><\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/roblox\/roblox-reference-object-blender.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/roblox\/roblox-reference-object-blender.jpg\" alt=\"Roblox reference in Blender\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>&#8230; imported into Blender the Roblox Studio reference is much smaller than the default cube, providing a scale comparison between the two applications.<\/i><\/p>\n<\/blockquote>\n<h3><span class=\"ez-toc-section\" id=\"timestamps\"><\/span>Timestamps<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Times are approximate;<br \/>\n &#8211; 00:00<br \/>\n &#8211; 00:00<\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":8482,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[34,1072,230],"tags":[120,72,203,401,79,1030,289,400,1074,1075,208,286,393],"class_list":["post-8437","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blender","category-roblox","category-tutorials","tag-blender","tag-export","tag-fbx","tag-grid-scale","tag-import","tag-meters","tag-metric","tag-none","tag-roblox","tag-roblox-studio","tag-scale","tag-units","tag-units-of-measurement"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/8437","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/comments?post=8437"}],"version-history":[{"count":24,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/8437\/revisions"}],"predecessor-version":[{"id":8494,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/8437\/revisions\/8494"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media\/8482"}],"wp:attachment":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media?parent=8437"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/categories?post=8437"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/tags?post=8437"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}