{"id":6910,"date":"2023-03-21T17:26:37","date_gmt":"2023-03-21T17:26:37","guid":{"rendered":"https:\/\/www.katsbits.com\/codex\/?p=6910"},"modified":"2023-10-18T10:00:40","modified_gmt":"2023-10-18T09:00:40","slug":"toolkit-bubble-pipe-particle","status":"publish","type":"post","link":"https:\/\/www.katsbits.com\/codex\/toolkit-bubble-pipe-particle\/","title":{"rendered":"Toolkit &#8211; Bubble Pipe + Particle + Pose"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 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-6a2fe60fe8154\" 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-6a2fe60fe8154\"  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-bubble-pipe-particle\/#description\" >Description<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.katsbits.com\/codex\/toolkit-bubble-pipe-particle\/#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\/5J7WcvlAB78?rel=0\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/center><\/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\/vRemytB5aCQ?rel=0\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/center><\/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\/xho-6YGLYmQ?rel=0\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/center><\/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\/x3CZrXNqJl4?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 video tutorial series we take a more comprehensive look creating a simple bubble-pipe <a href=\"https:\/\/www.katsbits.com\/codex\/tag\/accessory\/\">Accessory<\/a> item live, and in real-time, using <a href=\"https:\/\/www.katsbits.com\/codex\/tag\/imvu-studio-toolkit\/\">IMVU Studio Toolkit<\/a>.<\/p>\n<p><b>Video I<\/b>: initially the pipe starts out as a <b>Cube<\/b> that&#8217;s shaped using <b>Extrude<\/b>, <b>Loop Cut<\/b> and general vertex, edge and face editing. Once this initial step is done the pipe is copied using <b>Duplicate<\/b> and assigned a <b>Subdivision Surface<\/b> Modifier so a high-resolution version can be shaped for <a href=\"https:\/\/www.katsbits.com\/codex\/bake-normal-maps\/\">Normal Map<\/a> generation. Next, the low-resolution version is assigned a material, image, UV <a href=\"https:\/\/www.katsbits.com\/codex\/uv-editing\/\">UV Unwrapped<\/a> and <a href=\"https:\/\/www.katsbits.com\/codex\/uv-maps\/\">Mapped<\/a> before both are used to <a href=\"https:\/\/www.katsbits.com\/codex\/tag\/texture-bake\/\">Bake<\/a> a Normal Map of the pipe, itself then saved to the material.<\/p>\n<p><b>Video II<\/b>: once the mesh is done is can be set up for IMVU using the <b>Attachment Tool<\/b>. Initially this is a test to ensure the item works correctly and there aren&#8217;t any issues that need to be addressed. The next step is to modify the <b>Attachment.RIG<\/b>, adding an extra &#8216;target&#8217; bone for the particle effect in Studio. Here, a <a href=\"https:\/\/www.katsbits.com\/codex\/tag\/particles\/\">Particle<\/a> is added and set up to affect a &#8216;popping&#8217; bubble, a <i>Diffuse<\/i> and <i>Opacity<\/i> map setting the bubbles appearance, while the particles settings define its behaviour.<\/p>\n<p><b>Video III<\/b>: to add a custom avatar pose to an accessory item the setup differs as accessory and pose items use different underlying substructures. To make an accessory with pose the mesh has to be set up as a clothing item using the <b>Clothing Tool<\/b>, weighted to the appropriate bone of the avatar, before a pose can be created using the <b>Animation Tool<\/b>.<\/p>\n<p><b>Video IV<\/b>: once the accessory is assembled in Studio the particle effect can the reintroduced. However, in the absence of a &#8216;target&#8217; bone available to actual Attachment items, the spawn point has to be set manually using the <b>Position<\/b> coordinates of the particle. To aid this process the Particle widget is turned on and used as a guide to reposition the effects origin, changing the X, Y and Z values &#8211; default values for &#8216;forward&#8217; alignments, negative (-) for &#8216;backwards&#8217;.<\/p>\n<p><b>Duration<\/b>: total c. 3 hr 40 mins (03:40: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 - bubblepipe.zip\">KatsBits \u2013 Bubblepipe + Particles<\/a> (c. 3 MB, *.blend, *.jpg, *.png).<br \/>\n<b>Product ID<\/b>: <a href=\"https:\/\/www.imvu.com\/shop\/product.php?products_id=63022435\" rel=\"noopener\" target=\"_blank\">Bubble Pipe<\/a> (PID 63022435).<\/p>\n<blockquote><p><b>Design note<\/b>: when using <b>Generated<\/b> images in Blender, be sure to save them locally before importing a project (via FBX) into Studio as this can cause that process to hang &#8211; this may also mean replacing images set up in Blender with &#8216;updated&#8217;, Studio compatible, versions. Similarly, whilst images may be the correct format, aspect ratio or dimensions, i.e. 512 x 512 height\/width, their size be too big &#8211; Studio limits images to 1 MB &#8211; so a different format may need to be selected, or their being passed through an image editor for more options.<\/p>\n<p>The objects <a href=\"https:\/\/www.katsbits.com\/codex\/saving-images\/\">UV map can be exported<\/a> and used as a template for making\/painting the diffuse image. In UV Editing workspace select <b>Export UV Layout<\/b> from the <b>UV<\/b> menu to export the active objects UVs &#8211; <b><i>UV \u00bb Export UV Layout<\/i><\/b> [1] (UV selection not necessary but may aid identifying what is being included).<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/attachment-bubblepipe-texturemap.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/attachment-bubblepipe-texturemap.jpg\" alt=\"Export UV layout\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Saving the pipes UV map as an image [1] as a template for diffuse texture painting.<\/i><\/p>\n<p>When setting up an accessory as a body-part item that&#8217;s to include an accompanying pose, some trail and error back-and-forth may be needed to correctly position the mesh relative to the avatar and the pose being made [2]. It should be relatively straightforward to adjust the body-part in Clothing Tool project file and then re-append the corrected\/updated version into the Animation Tool project &#8211; <i>whilst it is possible to build the accessory mesh in the Animation Tool, it uses the same avatar skeleton, it&#8217;s best to use the Clothing Tool to ensure any mesh objects are set up correctly with respect to being properly attached to the avatar skeleton<\/i>.<\/p>\n<p><a href=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/attachment-bubblepipe-pose.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 98.5%; height: auto;\" src=\"https:\/\/www.katsbits.com\/images\/tutorials\/imvu-studio\/attachment-bubblepipe-pose.jpg\" alt=\"Export UV layout\" width=\"900px\" height=\"500px\" border=\"0\" \/><\/a><br \/>\n<i>Pipe mesh incorrectly positioned relative to the accessory items set up [2]. This can be corrected by adjusting and then re-appending the mesh from the Clothing Tool project, into the same Animation Tool project.<\/i>\n<\/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;<\/p>\n<p><b>Video 1<\/b> &#8211; Meshing<br \/>\n&#8211; 00:00 &#8211; Start &#038; Tool Overview<br \/>\n&#8211; 07:00 &#8211; Meshing (low res)<br \/>\n&#8211; 22:00 &#8211; Subdivision Surface (high-res)<br \/>\n&#8211; 40:00 &#8211; Materials &#038; UV Unwrapping<br \/>\n&#8211; 57:00 &#8211; Normal Map Baking<\/p>\n<p><b>Video 2<\/b> &#8211; Particles<br \/>\n&#8211; 00:00 &#8211; Start &#038; Recap<br \/>\n&#8211; 05:00 &#8211; Attachment Setup &#038; Export<br \/>\n&#8211; 14:00 &#8211; Studio Setup (first)<br \/>\n&#8211; 30:00 &#8211; Armature Particle Setup<br \/>\n&#8211; 40:00 &#8211; Studio Particle Setup<\/p>\n<p><b>Video III<\/b> &#8211; Pose<br \/>\n&#8211; 00:00 &#8211; Start &#038; Recap<br \/>\n&#8211; 07:30 &#8211; Clothing Setup<br \/>\n&#8211; 11:00 &#8211; Positioning &#038; Weight Painting<br \/>\n&#8211; 25:00 &#8211; Pose Preparation<br \/>\n&#8211; 32:00 &#8211; Append &#038; Pose<br \/>\n&#8211; 48:00 &#8211; Studio Assembly<\/p>\n<p><b>Video IV<\/b> &#8211; Particles<br \/>\n&#8211; 00:00 &#8211; Start and Recap<br \/>\n&#8211; 09:00 &#8211; Particle Setup<br \/>\n&#8211; 14:30 &#8211; Particle Position<br \/>\n&#8211; 23:00 &#8211; Bubble Material<br \/>\n&#8211; 27:00 &#8211; Summary<\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":6917,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[34,37,230],"tags":[575,871,927,200,697,565,649,928,172,717,876,778,696,655,734,635],"class_list":["post-6910","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blender","category-imvu","category-tutorials","tag-accessory","tag-animation-tool","tag-attachment-tool","tag-avatar-poses","tag-bake","tag-cycles","tag-mark-seams","tag-mesh-id","tag-normal-map","tag-particles","tag-pose","tag-subdivision-surface","tag-texture-bake","tag-uv-editing","tag-uv-mapping","tag-uv-unwrapping"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/6910","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=6910"}],"version-history":[{"count":17,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/6910\/revisions"}],"predecessor-version":[{"id":6929,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/posts\/6910\/revisions\/6929"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media\/6917"}],"wp:attachment":[{"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/media?parent=6910"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/categories?post=6910"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.katsbits.com\/codex\/wp-json\/wp\/v2\/tags?post=6910"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}