{"id":11213,"date":"2026-11-11T17:18:45","date_gmt":"2026-11-11T17:18:45","guid":{"rendered":"https:\/\/www.katsbits.com\/codex\/?p=11213"},"modified":"2026-11-11T17:18:45","modified_gmt":"2026-11-11T17:18:45","slug":"toolkit-pose-workflow","status":"publish","type":"post","link":"https:\/\/www.katsbits.com\/codex\/toolkit-pose-workflow\/","title":{"rendered":"Toolkit 1.2.10 Workflow Workaround for Blender"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_89 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-6af519103ff87\" 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-6af519103ff87\"  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\/toolkit-pose-workflow\/#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\/toolkit-pose-workflow\/#auto-key-auto-insert\" >Auto Key (Auto Insert)<\/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\/toolkit-pose-workflow\/#auto-key-keying-set\" >Auto Key &#038; Keying Set<\/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\/toolkit-pose-workflow\/#static-pose-set-up\" >Static Pose Set-up<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.katsbits.com\/codex\/toolkit-pose-workflow\/#static-pose-settings\" >Static Pose Settings<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.katsbits.com\/codex\/toolkit-pose-workflow\/#action-setup-in-studio\" >Action Setup in Studio<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.katsbits.com\/codex\/toolkit-pose-workflow\/#timestamps\" >Timestamps<\/a><\/li><\/ul><\/nav><\/div>\n<div class=\"tabbed-video-container\">\n<div class=\"tab-buttons\">\n    <button class=\"tab-button active\" data-tab=\"rumble\">Rumble<\/button><br \/>\n    <button class=\"tab-button\" data-tab=\"youtube\">YouTube<\/button><br \/>\n    <button class=\"tab-button\" data-tab=\"other\">TikTok<\/button>\n  <\/div>\n<div id=\"rumble\" class=\"tab-content active\" style=\"background-color: black; position: relative; padding-bottom: 56.25%; padding-top: 25px; height: 0; overflow: hidden; max-width: 100%;\">\n    <iframe loading=\"lazy\" style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%;\" src=\"https:\/\/rumble.com\/embed\/v7g0owk\/?pub=d3lcu\" width=\"270\" height=\"480\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe>\n  <\/div>\n<div id=\"youtube\" class=\"tab-content\" style=\"background-color: black; position: relative; padding-bottom: 56.25%; padding-top: 25px; height: 0; overflow: hidden; max-width: 100%;\">\n    <iframe loading=\"lazy\" style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%;\" src=\"https:\/\/www.youtube.com\/embed\/YNP0evp0QJ8?rel=0\" width=\"270\" height=\"480\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe>\n  <\/div>\n<div id=\"other\" class=\"tab-content\" style=\"background-color: black; position: relative; padding-bottom: 56.25%; padding-top: 25px; height: 0; overflow: hidden; max-width: 100%;\">\n<!-- TikTok --><br \/>\n<iframe loading=\"lazy\" style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%;\" src=\"https:\/\/www.tiktok.com\/player\/v1\/7706961755024592151?music_info=0&#038;description=0\" width=\"270\" height=\"480\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe>\n  <\/div>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"description\"><\/span>Description<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>With the IMVU Toolkit for Blender v. 1.2.10, workflow has changed from previous versions that require a slightly different approach to setting up static avatar poses using the Animation Tool. The same settings are all available but they don&#8217;t seem to function quite the same way, or they result in a different outcome than expected.<\/p>\n<p>\u2022 <a href=\"https:\/\/www.blender.org\/download\/lts\/\" target=\"_blank\">Blender 5.x LTS<\/a> with <a href=\"https:\/\/create.imvu.com\/articles\/studio\/toolkit\/\" target=\"_blank\">IMVU Toolkit for Blender v1.2.10<\/a>.<\/p>\n<p><b>Duration<\/b>: total c. 15 mins (00:15: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>\n<h4><span class=\"ez-toc-section\" id=\"auto-key-auto-insert\"><\/span>Auto Key (Auto Insert)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Version <a href=\"https:\/\/create.imvu.com\/articles\/studio\/toolkit\/\" target=\"_blank\">1.2.10 of the Toolkit<\/a> has an option, <strong>Auto Key<\/strong>, that should automatically insert a keyframe into the <strong>Action Editor<\/strong> timeline whenever a bone or control object is manipulated or posed. When this fails, pressing <span class=\"shortcutkey\">I<\/span> (&#8220;i&#8221; not &#8220;l&#8221;) to <strong>Insert<\/strong> should perform the same operation. However, this too can fail to add keyframes. When that happens click the <strong>Set Key<\/strong> button in the Toolkit.<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/toolkit-autokey.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/toolkit-autokey.jpg\" alt=\"Enable Auto Key\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Enabling <strong>Auto Key<\/strong> should automatically insert markers into the timeline whenever the avatar rig is posed. If it doesn&#8217;t click the <strong>Set Key<\/strong> button instead.<\/i><\/p>\n<h4><span class=\"ez-toc-section\" id=\"auto-key-keying-set\"><\/span>Auto Key &#038; Keying Set<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Before posing the avatar and adding frame markers into the timeline ensure the auto-insert options are set to include the correct data. As avatar poses involve the manipulation of a set of shape key (morph) and skeletal bone controls, both need to be captured. <\/p>\n<p>With <strong>Auto Key<\/strong> enabled, click the <strong>Open Action Editor<\/strong> button in the Toolkit and check the &#8216;record&#8217; button is ON (red). Next, click the <strong>Keying<\/strong> menu item and check the <strong>Keying Set<\/strong> input field. If this is blank, click the icon displaying a <em>pair of keys<\/em> on the left (<strong>Active Keying Set<\/strong>), and from the list select <strong>Available<\/strong>. This forces a broad data collection, ensuring the appropriate information is gathered whenever <strong>Set Key<\/strong> is clicked.<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/toolkit-autokey-frameset.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/toolkit-autokey-frameset.jpg\" alt=\"Checking Keying Set\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>With the <strong>Action Editor<\/strong> visible (click Open Action Editor), check the Keying options to ensure <strong>Available<\/strong> data is being collected when posing, capturing both shape key and skeletal pose data.<\/i><\/p>\n<h4><span class=\"ez-toc-section\" id=\"static-pose-set-up\"><\/span>Static Pose Set-up<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>To ensure static poses export correctly from Blender using the Toolkit the timeline has to be set up to force the recognition that the resulting FBX export contains &#8216;pose&#8217; data. Without this the <strong>Blender export \u00bb FBX \u00bb Studio import<\/strong> pipeline assumes any data that <em>is<\/em> included happens to be the objects <strong>bind pose<\/strong>, that is the pose the avatar strikes at rest or when its not doing anything, because all frames are the same, as they are for static or single avatar poses. This necessitates the inclusion of a <strong>reset pose<\/strong>.<\/p>\n<details class=\"tutorial-box-borderless\">\n<summary><strong>Design note<\/strong>: Auto-reset pose set up&#8230; [more]<\/summary>\n<div class=\"expand-content\">\nThe toolkit typically creates the <em>pose \u00bb reset<\/em> sequence automatically during export for &#8216;static&#8217; or &#8216;single (frame) poses&#8217;, which only requires the initial pose at frame &#8220;1&#8221; to be marked to the Action Editor timeline.\n<\/div>\n<\/details>\n<p>Once the initial pose is in place at frame &#8220;1&#8221;, continuing in <strong>Pose Mode<\/strong>, select everything, <span class=\"shortcutkey\">A<\/span>, and click-drag move the timeline scrubber to frame &#8220;5&#8221;. Click the <strong>Set Key<\/strong> button again to mark another frame. This range, frame &#8220;1&#8221; to &#8220;5&#8221; sets the static baseline the pose will be pulled from in Studio. Next, click-drag the scrubber to frame &#8220;10&#8221; and from the <strong>Pose<\/strong> menu select <strong>Clear Transform<\/strong>, then <strong>All<\/strong> &#8211; <strong><em>Pose \u00bb Clear Transform \u00bb All<\/em><\/strong>. This resets the avatar, removing all pose manipulations, and marks the change to the time line (click Set Key if markers don&#8217;t appear in the timeline). Scrubbing the timeline back and fourth now renders a short sequence between initial pose and reset, the difference being enough to force recognition of movement.<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/toolkit-autokey-reset.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/toolkit-autokey-reset.jpg\" alt=\"Auto Key and manual reset\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>If the export process doesn&#8217;t automatically &#8216;reset&#8217; the pose it will need to be done manually, else it will be read as the bind pose in Studio and not move.<\/i><\/p>\n<h4><span class=\"ez-toc-section\" id=\"static-pose-settings\"><\/span>Static Pose Settings<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>For static poses (single-frame sequences) to export correctly a number of options need to be set in the Toolkit. Without these, issues may be encountered during import or assembly of the pose in IMVU Studio. In the toolkit ensure <strong>Make Single Pose<\/strong> at minimum is set, this enables the static pose procedure that properly configures the exported FBX for static pose use. Optionally set <strong>Export All Bones<\/strong> <em>if<\/em> the file is to include every bone, or specific bones, that have being manipulated and posed, <a href=\"https:\/\/www.katsbits.com\/codex\/toolkit-partial-pose-accessory\/\">useful for partial poses<\/a>. If the pose includes a facial expression be sure that <strong>Export Facial Morphs<\/strong> is enabled. The writes the shape key sequence to the exported file.<\/p>\n<div style=\"background-color: #e7faea; color: #000; font-family: courier; padding:1em\">\u2611\ufe0f Make Single Pose<br \/>\n\u2611\ufe0f Export All Bones<br \/>\n\u2611\ufe0f Export Facial Morphs<\/div>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/toolkit-autokey-export-options.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/toolkit-autokey-export-options.jpg\" alt=\"Static pose export options\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>A number of options need to be set in the Toolkit to ensure static poses are exported correctly, <strong>Make Single Pose<\/strong> particularly.<\/i><\/p>\n<h4><span class=\"ez-toc-section\" id=\"action-setup-in-studio\"><\/span>Action Setup in Studio<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>To ensure only pose data is brought into IMVU Studio, during import deselect <strong>Use Imported Skeleton<\/strong>, all <strong>Mesh<\/strong> parts (<strong>Skeleton &#038; Mesh<\/strong> selection), all <strong>Materials<\/strong> (Material selection), and double-check that pose data is shown in <strong>Animation<\/strong> (Animation selection) &#8211; if a facial expression is included both an <strong>Anim<\/strong> and a <strong>Morph<\/strong> will be listed. Doing this avoids conflicts and issues with existing elements of the product being derived, e.g. Empty Female Top or Empty Male Top.<\/p>\n<p>For assembly, after creating an <strong>Action<\/strong> and populating the <strong>Skeletal Animation<\/strong> and <strong>Morph Animation<\/strong> components with the corresponding pose elements, e.g. &#8220;<em>Pose_owmyhead.xaf<\/em>&#8221; and &#8220;<em>Morph_MorphName-mouth.Open[&#8230;].xpf<\/em>&#8220;, if upon <strong>Preview<\/strong> nothing happens, or the pose appears to be moving unexpectedly, change the <strong>Start<\/strong> and <strong>End<\/strong> frames from those typically used, &#8220;<strong>1<\/strong>&#8221; and &#8220;<strong>2<\/strong>&#8221; (Start: 1, End 2), and instead use &#8220;<strong>0<\/strong>&#8221; and &#8220;<strong>1<\/strong>&#8221; (Start: 0, End 1). This forces Studio, and IMVU generally, to use the default system for the start and end points of a sequence.<\/p>\n<details class=\"tutorial-box-borderless\">\n<summary><strong>Design note<\/strong>: IMVU Start and End frame defaults&#8230; [more]<\/summary>\n<div class=\"expand-content\">\nThe Start and End frame IMVU defaults to differs from those brought in from Blender; for IMVU the start frame is &#8220;0&#8221;, for Blender it&#8217;s &#8220;1&#8221;. The difference makes it easier to understand ten-frame increments &#8211; 0 \u00bb 10 is actually 11 frames because &#8220;0&#8221; counts as a frame when set\/used. Conversely, where &#8220;0&#8221; <em>is<\/em> used it means the 10th frame is actually at frame 9, not frame 10, else again, the sequence is then 11 frames long.<\/div>\n<\/details>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/toolkit-autokey-studio-assembly.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 100%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/toolkit-autokey-studio-assembly.jpg\" alt=\"Start and End frames in Studio\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Using the normal Start and End frame range for static poses, they sometimes don&#8217;t work. When that happens, change them to force the defaults &#8211; the also more compatible with Classic Editor &#038; Client and Studio Editor and client.<\/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 : Setup &#038; Pose<br \/>\n&#8211; 03:00 : Morph Controls<br \/>\n&#8211; 05:00 : Set Key, Rename<br \/>\n&#8211; 06:00 : Pose Options<br \/>\n&#8211; 07:00 : Timeline Prep<br \/>\n&#8211; 09:00 : Studio Assembly<br \/>\n&#8211; 11:00 : Troubleshoot<\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":11219,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[34,37,230],"tags":[217,622,704,194,738,1049,1148,1150,765,744,630,1149,753,1127],"class_list":["post-11213","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blender","category-imvu","category-tutorials","tag-action-editor","tag-animation","tag-avatar","tag-imvu","tag-imvu-studio","tag-imvu-toolkit","tag-keyframe","tag-keying-set","tag-morphs","tag-pose-mode","tag-poses","tag-set-key","tag-shape-keys","tag-timeline"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/11213","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=11213"}],"version-history":[{"count":17,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/11213\/revisions"}],"predecessor-version":[{"id":11234,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/11213\/revisions\/11234"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media\/11219"}],"wp:attachment":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media?parent=11213"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/categories?post=11213"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/tags?post=11213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}