{"id":9247,"date":"2024-08-16T19:40:12","date_gmt":"2024-08-16T18:40:12","guid":{"rendered":"https:\/\/www.katsbits.com\/codex\/?p=9247"},"modified":"2024-08-16T19:40:12","modified_gmt":"2024-08-16T18:40:12","slug":"atelier-weight-painting-blender","status":"publish","type":"post","link":"https:\/\/www.katsbits.com\/codex\/atelier-weight-painting-blender\/","title":{"rendered":"Style3D Atelier &#8211; Weight Painting in Blender"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_84 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-6a245d4801020\" 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-6a245d4801020\"  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\/atelier-weight-painting-blender\/#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\/atelier-weight-painting-blender\/#vertex-groups\" >Vertex Groups<\/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\/atelier-weight-painting-blender\/#weight-distribution\" >Weight Distribution<\/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\/atelier-weight-painting-blender\/#weight-transfer\" >Weight Transfer<\/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\/atelier-weight-painting-blender\/#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:\/\/www.youtube.com\/embed\/w6nnB8kodPM?rel=0\" 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>In this exercise we take a look at <a href=\"https:\/\/www.katsbits.com\/codex\/tag\/weight-paint\/\">weight painting<\/a> a simple clothing item, a sash made in <a href=\"https:\/\/www.katsbits.com\/codex\/category\/tutorials\/atelier\/\">Atelier<\/a>, using the <a href=\"https:\/\/www.katsbits.com\/codex\/tag\/imvu-studio-toolkit\/\">IMVU Toolkit for Blender<\/a>. Once the garment has been exported from Atelier to FBX, then imported into Blender for prep, its brought into a <a href=\"https:\/\/www.katsbits.com\/codex\/tag\/clothing\/\">Clothing Tool<\/a> project for weight painting and export for IMVU. Here, using the tools options, the sash has to be attached to the avatars armature using <strong>Bind to Armature<\/strong>) before <strong>Vertex Groups<\/strong> selections are made for colour\/weight adjustment. Once done the sash and avatar body parts, torso and hips, are exported for import and assembly in IMVU Studio.<\/p>\n<p><b>Duration<\/b>: total c. 25 mins (00:25:00).<br \/>\n<b>Info<\/b>: 1080p.<br \/>\n<b>Suitability<\/b>: Beginner+.<br \/>\n<b>Source<\/b>: <a href=\"https:\/\/www.katsbits.com\/files\/imvu\/katsbits - atelier weight painting.zip\">KatsBits \u2013 Sash Weight Painting<\/a> (c. 13 MB | *.blend, *.fbx, *.png).<br \/>\n<b>Product ID<\/b>: <a href=\"https:\/\/www.imvu.com\/shop\/product.php?products_id=68519582\" rel=\"noopener\" target=\"_blank\">Sash United (68519582)<\/a>.<\/p>\n<blockquote><p><strong>Design note<\/strong>: fgdfgdf<\/p>\n<h4><span class=\"ez-toc-section\" id=\"vertex-groups\"><\/span>Vertex Groups<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>When binding a mesh to the avatars skeleton (Bind To Armature) the Toolkit will generate vertex groups based on all the available bones, useable included, i.e. the various &#8216;<em>xTip<\/em>&#8216; bones that sit at the end of each bone chain (fingers, legs and head). Typically these should not cause issues but can be removed out of hand before weighting. They are;<\/p>\n<ul>\n<li>xTipBone66 (right thumb)<\/li>\n<li>xTipBone70 (right index)<\/li>\n<li>xTipBone74 (right middle)<\/li>\n<li>xTipBone78 (right ring)<\/li>\n<li>xTiprtFingerne82 (right little)<\/li>\n<li>xTipBone87 (left middle)<\/li>\n<li>xTipBone88 (left thumb)<\/li>\n<li>xTipBone89 (left index)<\/li>\n<li>xTipBone90 (left ring)<\/li>\n<li>xTiprtFingerne83 (left little)<\/li>\n<li>xTipBone38 (right foot)<\/li>\n<li>xTipBone86 (left foot)<\/li>\n<li>xTipBone33 (head)<\/li>\n<\/ul>\n<p>To remove, with mesh selection made in Object Mode, and the <strong>Vertex Groups<\/strong> aperture visible in <strong>Object Data Properties<\/strong>, click an entry to highlight a group to be removed [1], then click the <strong>&#8211;<\/strong> [2] <em>Remove Vertex Group<\/em> (minus) button upper right of the sub-panel. The group will be deleted alongside any weighting or influence it has on the mesh.<\/p>\n<div style=\"background-color: #efefef; color: #000; width:98.5%; padding: 1.0em;\"><strong>Aside<\/strong>: this same procedure can also then be used to remove other unwanted or unused vertex groups as weighting is finalised.<\/div>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/atelier\/atelier-delete-vertex-group.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/atelier\/atelier-delete-vertex-group.jpg\" alt=\"Delete vertex groups\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>A number of vertex groups can&#8217;t be used and can be remove out-of-hand. In <strong>Object Data Properties<\/strong> select and entry in <strong>Vertex Groups<\/strong> [1] and click the <strong>Remove Vertex Groups<\/strong> [2] button (&#8220;-&#8220;).<\/i><\/p>\n<h4><span class=\"ez-toc-section\" id=\"weight-distribution\"><\/span>Weight Distribution<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Typically, when a mesh is bound to the avatars skeleton the Toolkit automatically generates or transfers weight values based on the proximity of mesh structure to a given bone. It does this by approximation, so placement and groupings may not be exact, an effort that may be compounded by the clothing&#8217;s mesh density or topology. In other words, a structure that differs (more\/less) [3] from the underlying avatar [4] will affect weight fidelity.<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/atelier\/atelier-weight-distribution.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/atelier\/atelier-weight-distribution.jpg\" alt=\"Weight Distribution\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>The difference in structure between clothing [3] and avatar [4] may affect how well weight values are transferred between skeleton\/Armature and the clothing mesh &#8211; denser meshes do not immediately equate to better deformation or articulation when animated.<\/i><\/p>\n<h4><span class=\"ez-toc-section\" id=\"weight-transfer\"><\/span>Weight Transfer<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Generally speaking vertex groups and weight values transfer without issue when Bind to Armature is used. Where they don&#8217;t, for example on multi-layered or complex clothing meshes, influences can be transferred directly from the avatars body parts or another mesh that might carry more accurate or detailed mapping. To do this, select the mesh weight values are to be copied <em>from<\/em>, then select the mesh this data is to be copied <em>to<\/em>, e.g. avatar torso <em>then<\/em> shift-click the sash. Change the editing context to <strong>Weight Paint<\/strong> [5] &#8211; the active mesh, the sash, will turn blue confirming the mode switch &#8211; then in the <strong>Weights<\/strong> [6] menu click <strong>Transfer Weights<\/strong>. In the <strong>Transfer Mesh Data<\/strong> [7] popup that appears lower left make sure;<\/p>\n<ul>\n<li><strong>Data Type<\/strong> is set to <strong>Vertex Group(s)<\/strong><\/li>\n<li><strong>Create Data<\/strong> is checked<\/li>\n<li><strong>Vertex Mapping<\/strong> is set to <strong>Nearest Vertex<\/strong><\/li>\n<li>The remaining settings use the defaults<\/li>\n<\/ul>\n<p>When switch back to editing the clothing item a set of vertex groups should then be available in Object Data Properties.<\/p>\n<div style=\"background-color: #efefef; color: #000; width:98.5%; padding: 1.0em;\"><strong>Aside<\/strong>: when using the approach to generating vertex groups assignments groups will be assigned relative to the source mesh, in other words, a clothing item that&#8217;s longer than the avatar torso will be missing group assignments from the legs. Unfortunately groups can only be transferred from one source and will be overridden if another one is selected and its data is copied. The workaround for this situation is to duplicate all the body parts that weights should be transferred from, <a href=\"https:\/\/www.katsbits.com\/codex\/join-meshes\/\">join<\/a> them together forming a single mesh (perform a <a href=\"https:\/\/www.katsbits.com\/codex\/remove-doubles\/\">Merge by Distance<\/a>), and then use transfer as described above.<\/div>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/atelier\/atelier-transfer-weights.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/atelier\/atelier-transfer-weights.jpg\" alt=\"Transfer Weights\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>An alternative to <strong>Bind to Armature<\/strong> is to use <strong>Transfer Weights<\/strong>. Select the source and destination mesh, switch to <strong>Weight Paint<\/strong> mode [5] before clicking <strong>Transfer Weights<\/strong> in the Weights menu [6]. Make sure <strong>Vertex Group(s)<\/strong> [7] is set as the Data Type.<\/i><\/p><\/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 : Intro &#038; Prep<br \/>\n &#8211; 03:30 : Clothing Setup<br \/>\n &#8211; 06:00 : Paint Weights<br \/>\n &#8211; 11:30 : Delete Vertex Group<br \/>\n &#8211; 13:30 : Fixing Clipping<br \/>\n &#8211; 19:00 : Export &#038; Studio Assembly<\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":9250,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1096,34,37,230],"tags":[473,725,1097,670,929,966,194,835,744,1099,1104,685,930],"class_list":["post-9247","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-style3d-atelier","category-blender","category-imvu","category-tutorials","tag-append","tag-armature","tag-atelier","tag-clothing","tag-clothing-tool","tag-data-transfer","tag-imvu","tag-imvu-studio-toolkit","tag-pose-mode","tag-style3d","tag-transfer-weights","tag-vertex-groups","tag-weight-paint"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/9247","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=9247"}],"version-history":[{"count":14,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/9247\/revisions"}],"predecessor-version":[{"id":9264,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/9247\/revisions\/9264"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media\/9250"}],"wp:attachment":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media?parent=9247"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/categories?post=9247"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/tags?post=9247"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}