1<!DOCTYPE html> 2<html lang="en-US"> 3 4<head> 5 <meta charset='UTF-8'> 6 <meta name="viewport" content="width=device-width, initial-scale=1"> 7 <link rel="profile" href="http://gmpg.org/xfn/11"> 8 <title>Toadstorm Nerdblog</title> 9<meta name='robots' content='max-image-preview:large' /> 10<link rel='dns-prefetch' href='//fonts.googleapis.com' /> 11<link rel="alternate" type="application/rss+xml" title="Toadstorm Nerdblog » Feed" href="https://www.toadstorm.com/blog/?feed=rss2" /> 12<link rel="alternate" type="application/rss+xml" title="Toadstorm Nerdblog » Comments Feed" href="https://www.toadstorm.com/blog/?feed=comments-rss2" />
13<script type="text/javascript"> 14window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/www.toadstorm.com\/blog\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.2.1"}}; 15/*! This file is auto-generated */ 16!function(e,a,t){var n,r,o,i=a.createElement("canvas"),p=i.getContext&&i.getContext("2d");function s(e,t){p.clearRect(0,0,i.width,i.height),p.fillText(e,0,0);e=i.toDataURL();return p.clearRect(0,0,i.width,i.height),p.fillText(t,0,0),e===i.toDataURL()}function c(e){var t=a.createElement("script");t.src=e,t.defer=t.type="text/javascript",a.getElementsByTagName("head")[0].appendChild(t)}for(o=Array("flag","emoji"),t.supports={everything:!0,everythingExceptFlag:!0},r=0;r<o.length;r++)t.supports[o[r]]=function(e){if(p&&p.fillText)switch(p.textBaseline="top",p.font="600 32px Arial",e){case"flag":return s("\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!s("\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!s("\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!s("\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udffb\u200b\ud83e\udef2\ud83c\udfff")}return!1}(o[r]),t.supports.everything=t.supports.everything&&t.supports[o[r]],"flag"!==o[r]&&(t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&t.supports[o[r]]);t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&!t.supports.flag,t.DOMReady=!1,t.readyCallback=function(){t.DOMReady=!0},t.supports.everything||(n=function(){t.readyCallback()},a.addEventListener?(a.addEventListener("DOMContentLoaded",n,!1),e.addEventListener("load",n,!1)):(e.attachEvent("onload",n),a.attachEvent("onreadystatechange",function(){"complete"===a.readyState&&t.readyCallback()})),(e=t.source||{}).concatemoji?c(e.concatemoji):e.wpemoji&&e.twemoji&&(c(e.twemoji),c(e.wpemoji)))}(window,document,window._wpemojiSettings); 17</script>
17 18<style type="text/css"> 19img.wp-smiley, 20img.emoji { 21 display: inline !important; 22 border: none !important; 23 box-shadow: none !important; 24 height: 1em !important; 25 width: 1em !important; 26 margin: 0 0.07em !important; 27 vertical-align: -0.1em !important; 28 background: none !important; 29 padding: 0 !important; 30} 31</style> 32 <link rel='stylesheet' id='wp-block-library-css' href='https://www.toadstorm.com/blog/wp-includes/css/dist/block-library/style.min.css?ver=6.2.1' type='text/css' media='all' /> 33<link rel='stylesheet' id='classic-theme-styles-css' href='https://www.toadstorm.com/blog/wp-includes/css/classic-themes.min.css?ver=6.2.1' type='text/css' media='all' /> 34<style id='global-styles-inline-css' type='text/css'> 35body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);
35--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--duotone--dark-grayscale: url('#wp-duotone-dark-grayscale');--wp--preset--duotone--grayscale: url('#wp-duotone-grayscale');--wp--preset--duotone--purple-yellow: url('#wp-duotone-purple-yellow');--wp--preset--duotone--blue-red: url('#wp-duotone-blue-red');--wp--preset--duotone--midnight: url('#wp-duotone-midnight');--wp--preset--duotone--magenta-yellow: url('#wp-duotone-magenta-yellow');--wp--preset--duotone--purple-green: url('#wp-duotone-purple-green');--wp--preset--duotone--blue-orange: url('#wp-duotone-blue-orange');--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}body .is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}body .is-layout-flex{flex-wrap: wrap;align-items: center;}body .is-layout-flex > *{margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
35.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 36.wp-block-navigation a:where(:not(.wp-element-button)){color: inherit;} 37:where(.wp-block-columns.is-layout-flex){gap: 2em;} 38.wp-block-pullquote{font-size: 1.5em;line-height: 1.6;} 39</style> 40<link rel='stylesheet' id='bootstrap-css' href='https://www.toadstorm.com/blog/wp-content/themes/hestia/assets/bootstrap/css/bootstrap.min.css?ver=1.0.2' type='text/css' media='all' /> 41<link rel='stylesheet' id='hestia-font-sizes-css' href='https://www.toadstorm.com/blog/wp-content/themes/hestia/assets/css/font-sizes.min.css?ver=2.0.5' type='text/css' media='all' /> 42<link rel='stylesheet' id='font-awesome-css' href='https://www.toadstorm.com/blog/wp-content/themes/hestia/assets/font-awesome/css/font-awesome.min.css?ver=1.0.2' type='text/css' media='all' /> 43<link rel='stylesheet' id='hestia_style-css' href='https://www.toadstorm.com/blog/wp-content/themes/hestia/style.min.css?ver=2.0.5' type='text/css' media='all' /> 44<style id='hestia_style-inline-css' type='text/css'> 45.hestia-top-bar, .hestia-top-bar .widget.widget_shopping_cart .cart_list { 46 background-color: #363537 47 } 48 .hestia-top-bar .widget .label-floating input[type=search]:-webkit-autofill { 49 -webkit-box-shadow: inset 0 0 0px 9999px #363537 50 }.hestia-top-bar, .hestia-top-bar .widget .label-floating input[type=search], .hestia-top-bar .widget.widget_search form.form-group:before, .hestia-top-bar .widget.widget_product_search form.form-group:before, .hestia-top-bar .widget.widget_shopping_cart:before { 51 color: #ffffff 52 } 53 .hestia-top-bar .widget .label-floating input[type=search]{ 54 -webkit-text-fill-color:#ffffff !important 55 }.hestia-top-bar a, .hestia-top-bar .top-bar-nav li a { 56 color: #ffffff 57 }.hestia-top-bar a:hover, .hestia-top-bar .top-bar-nav li a:hover { 58 color: #eeeeee 59 } 60 61 a, 62 .navbar .dropdown-menu li:hover > a, 63 .navbar .dropdown-menu li:focus > a, 64 .navbar .dropdown-menu li:active > a, 65 .navbar .navbar-nav > li .dropdown-menu li:hover > a, 66 body:not(.home) .navbar-default .navbar-nav > .active:not(.btn) > a, 67 body:not(.home) .navbar-default .navbar-nav > .active:not(.btn) > a:hover, 68 body:not(.home) .navbar-default .navbar-nav > .active:not(.btn) > a:focus, 69 a:hover, 70 .card-blog a.moretag:hover, 71 .card-blog a.more-link:hover, 72 .widget a:hover { 73 color:#e91e63; 74 } 75 76 .pagination span.current, .pagination span.current:focus, .pagination span.current:hover { 77 border-color:#e91e63 78 } 79 80 button, 81 button:hover, 82 .woocommerce .track_order button[type="submit"], 83 .woocommerce .track_order button[type="submit"]:hover, 84 div.wpforms-container .wpforms-form button[type=submit].wpforms-submit, 85 div.wpforms-container .wpforms-form button[type=submit].wpforms-submit:hover, 86 input[type="button"], 87 input[type="button"]:hover, 88 input[type="submit"], 89 input[type="submit"]:hover, 90 input#searchsubmit, 91 .pagination span.current, 92 .pagination span.current:focus, 93 .pagination span.current:hover, 94 .btn.btn-primary, 95 .btn.btn-primary:link, 96 .btn.btn-primary:hover, 97 .btn.btn-primary:focus, 98 .btn.btn-primary:active, 99 .btn.btn-primary.active, 100 .btn.btn-primary.active:focus, 101 .btn.btn-primary.active:hover, 102 .btn.btn-primary:active:hover, 103 .btn.btn-primary:active:focus, 104 .btn.btn-primary:active:hover, 105 .hestia-sidebar-open.btn.btn-rose, 106 .hestia-sidebar-close.btn.btn-rose, 107 .hestia-sidebar-open.btn.btn-rose:hover, 108 .hestia-sidebar-close.btn.btn-rose:hover, 109 .hestia-sidebar-open.btn.btn-rose:focus, 110 .hestia-sidebar-close.btn.btn-rose:focus, 111 .label.label-primary, 112 .hestia-work .portfolio-item:nth-child(6n+1) .label, 113 .nav-cart .nav-cart-content .widget .buttons .button{ 114 background-color: #e91e63; 115 } 116 117 @media (max-width: 768px) { 118 119 .navbar-default .navbar-nav>li>a:hover, 120 .navbar-default .navbar-nav>li>a:focus, 121 .navbar .navbar-nav .dropdown .dropdown-menu li a:hover, 122 .navbar .navbar-nav .dropdown .dropdown-menu li a:focus, 123 .navbar button.navbar-toggle:hover, 124 .navbar .navbar-nav li:hover > a i { 125 color: #e91e63; 126 } 127 } 128 129 body:not(.woocommerce-page) button:not([class^="fl-"]):not(.hestia-scroll-to-top):not(.navbar-toggle), 130 body:not(.woocommerce-page) .button:not([class^="fl-"]):not(hestia-scroll-to-top):not(.navbar-toggle):not(.add_to_cart_button), 131 div.wpforms-container .wpforms-form button[type=submit].wpforms-submit, 132 input[type="submit"], 133 input[type="button"], 134 .btn.btn-primary, 135 .widget_product_search button[type="submit"],
136 .hestia-sidebar-open.btn.btn-rose, 137 .hestia-sidebar-close.btn.btn-rose { 138 -webkit-box-shadow: 0 2px 2px 0 rgba(233,30,99,0.14),0 3px 1px -2px rgba(233,30,99,0.2),0 1px 5px 0 rgba(233,30,99,0.12); 139 box-shadow: 0 2px 2px 0 rgba(233,30,99,0.14),0 3px 1px -2px rgba(233,30,99,0.2),0 1px 5px 0 rgba(233,30,99,0.12); 140 } 141 142 .card .header-primary, .card .content-primary { 143 background: #e91e63; 144 } 145 146 body:not(.woocommerce-page) .button:not([class^="fl-"]):not(.hestia-scroll-to-top):not(.navbar-toggle):not(.add_to_cart_button):hover, 147 body:not(.woocommerce-page) button:not([class^="fl-"]):not(.hestia-scroll-to-top):not(.navbar-toggle):hover, 148 div.wpforms-container .wpforms-form button[type=submit].wpforms-submit:hover, 149 input[type="submit"]:hover, 150 input[type="button"]:hover, 151 input#searchsubmit:hover, 152 .widget_product_search button[type="submit"]:hover, 153 .pagination span.current, 154 .btn.btn-primary:hover, 155 .btn.btn-primary:focus, 156 .btn.btn-primary:active, 157 .btn.btn-primary.active, 158 .btn.btn-primary:active:focus, 159 .btn.btn-primary:active:hover, 160 .hestia-sidebar-open.btn.btn-rose:hover, 161 .hestia-sidebar-close.btn.btn-rose:hover, 162 .pagination span.current:hover{ 163 -webkit-box-shadow: 0 14px 26px -12pxrgba(233,30,99,0.42),0 4px 23px 0 rgba(0,0,0,0.12),0 8px 10px -5px rgba(233,30,99,0.2); 164 box-shadow: 0 14px 26px -12px rgba(233,30,99,0.42),0 4px 23px 0 rgba(0,0,0,0.12),0 8px 10px -5px rgba(233,30,99,0.2); 165 color: #fff; 166 } 167 168 .form-group.is-focused .form-control { 169 background-image: -webkit-gradient(linear,left top, left bottom,from(#e91e63),to(#e91e63)),-webkit-gradient(linear,left top, left bottom,from(#d2d2d2),to(#d2d2d2)); 170 background-image: -webkit-linear-gradient(#e91e63),to(#e91e63),-webkit-linear-gradient(#d2d2d2,#d2d2d2); 171 background-image: linear-gradient(#e91e63),to(#e91e63),linear-gradient(#d2d2d2,#d2d2d2); 172 } 173 174 .navbar:not(.navbar-transparent) li:not(.btn):hover > a, 175 .navbar li.on-section > a, 176 .navbar.full-screen-menu.navbar-transparent li:not(.btn):hover > a, 177 .navbar.full-screen-menu .navbar-toggle:hover, 178 .navbar:not(.navbar-transparent) .nav-cart:hover, 179 .navbar:not(.navbar-transparent) .hestia-toggle-search:hover { 180 color:#e91e63} 181 182 .header-filter-gradient { 183 background: linear-gradient(45deg, rgba(168,29,132,1) 0%, rgb(234,57,111) 100%); 184 } 185.btn.btn-primary:not(.colored-button):not(.btn-left):not(.btn-right):not(.btn-just-icon):not(.menu-item), input[type="submit"]:not(.search-submit), body:not(.woocommerce-account) .woocommerce .button.woocommerce-Button, .woocommerce .product button.button, .woocommerce .product button.button.alt, .woocommerce .product #respond input#submit, .woocommerce-cart .blog-post .woocommerce .cart-collaterals .cart_totals .checkout-button, .woocommerce-checkout #payment #place_order, .woocommerce-account.woocommerce-page button.button, .woocommerce .track_order button[type="submit"], .nav-cart .nav-cart-content .widget .buttons .button, .woocommerce a.button.wc-backward, body.woocommerce .wccm-catalog-item a.button, body.woocommerce a.wccm-button.button, form.woocommerce-form-coupon button.button, div.wpforms-container .wpforms-form button[type=submit].wpforms-submit, div.woocommerce a.button.alt, div.woocommerce table.my_account_orders .button, .btn.colored-button, .btn.btn-left, .btn.btn-right, .btn:not
185(.colored-button):not(.btn-left):not(.btn-right):not(.btn-just-icon):not(.menu-item):not(.hestia-sidebar-open):not(.hestia-sidebar-close){ padding-top:15px; padding-bottom:15px; padding-left:33px; padding-right:33px; } 186.btn.btn-primary:not(.colored-button):not(.btn-left):not(.btn-right):not(.btn-just-icon):not(.menu-item), input[type="submit"]:not(.search-submit), body:not(.woocommerce-account) .woocommerce .button.woocommerce-Button, .woocommerce .product button.button, .woocommerce .product button.button.alt, .woocommerce .product #respond input#submit, .woocommerce-cart .blog-post .woocommerce .cart-collaterals .cart_totals .checkout-button, .woocommerce-checkout #payment #place_order, .woocommerce-account.woocommerce-page button.button, .woocommerce .track_order button[type="submit"], .nav-cart .nav-cart-content .widget .buttons .button, .woocommerce a.button.wc-backward, body.woocommerce .wccm-catalog-item a.button, body.woocommerce a.wccm-button.button, form.woocommerce-form-coupon button.button, div.wpforms-container .wpforms-form button[type=submit].wpforms-submit, div.woocommerce a.button.alt, div.woocommerce table.my_account_orders .button, input[type="submit"].search-submit, .hestia-view-cart-wrapper .added_to_cart.wc-forward, .woocommerce-product-search button, .woocommerce-cart .actions .button, #secondary div[id^=woocommerce_price_filter] .button, .woocommerce div[id^=woocommerce_widget_cart].widget .buttons .button, .searchform input[type=submit], .searchform button, .search-form:not(.media-toolbar-primary) input[type=submit], .search-form:not(.media-toolbar-primary) button, .woocommerce-product-search input[type=submit], .btn.colored-button, .btn.btn-left, .btn.btn-right, .btn:not
186(.colored-button):not(.btn-left):not(.btn-right):not(.btn-just-icon):not(.menu-item):not(.hestia-sidebar-open):not(.hestia-sidebar-close){border-radius:3px;} 187</style> 188<link rel='stylesheet' id='hestia_fonts-css' href='https://fonts.googleapis.com/css?family=Roboto%3A300%2C400%2C500%2C700%7CRoboto+Slab%3A400%2C700&subset=latin%2Clatin-ext&ver=2.0.5' type='text/css' media='all' />
189<script type='text/javascript' src='https://www.toadstorm.com/blog/wp-includes/js/jquery/jquery.min.js?ver=3.6.4' id='jquery-core-js'></script>
vendor: 1 bytes, line 189
189
190<script type='text/javascript' src='https://www.toadstorm.com/blog/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.0' id='jquery-migrate-js'></script>
190 191<link rel="https://api.w.org/" href="https://www.toadstorm.com/blog/index.php?rest_route=/" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.toadstorm.com/blog/xmlrpc.php?rsd" /> 192<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="https://www.toadstorm.com/blog/wp-includes/wlwmanifest.xml" /> 193<meta name="generator" content="WordPress 6.2.1" /> 194 <style type="text/css" id="wp-custom-css"> 195 h2 { 196 font-weight: bold; 197} </style> 198 </head> 199 200<body class="home blog header-layout-default"> 201 <div class="wrapper default "> 202 <header class="header "> 203 <nav class="navbar navbar-default navbar-fixed-top hestia_left"> 204 <div class="container"> 205 <div class="navbar-header"> 206 <div class="title-logo-wrapper"> 207 <a class="navbar-brand" href="https://www.toadstorm.com/blog/" 208 title="Toadstorm Nerdblog"> 209 <p>Toadstorm Nerdblog</p></a> 210 </div> 211 <div class="navbar-toggle-wrapper"> 212 <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#main-navigation"> 213 <span class="icon-bar"></span> 214 <span class="icon-bar"></span> 215 <span class="icon-bar"></span> 216 <span class="sr-only">Toggle Navigation</span> 217 </button> 218 </div> 219 </div> 220 </div> 221 </nav> 222 <div style="display: none"></div> </header> 223<div id="primary" class="boxed-layout-header page-header header-small" data-parallax="active" ><div class="container"><div class="row"><div class="col-md-10 col-md-offset-1 text-center"><h1 class="hestia-title"></h1></div></div></div><div class="header-filter" style="background-image: url(https://www.toadstorm.com/blog/wp-content/uploads/2017/09/skull_05_databent.jpg);"></div></div> 224<div class="main main-raised "> 225 <div class="hestia-blogs" data-layout="sidebar-right"> 226 <div class="container"> 227 <div class="row"> 228 <div class="col-md-8 blog-posts-wrap"> 229 <div class="flex-row"><article 230 id="post-1168" 231 class="card card-blog card-plain post-1168 post type-post status-publish format-standard hentry category-houdini tag-houdini-2 tag-mops"><div class="row "><div class= "col-sm-12"><h6 class="category text-info"><a href="https://www.toadstorm.com/blog/?cat=30" title="View all posts in Houdini" >Houdini</a> </h6><h2 class="card-title"><a href="https://www.toadstorm.com/blog/?p=1168" title="Revisiting Parallel Transport" rel="bookmark">Revisiting Parallel Transport</a></h2><div class="card-description"><p><p>I was asked the other day about fixing a little issue with MOPs Orient Curve, a node that really hasn’t changed much in MOPs since it was first launched way back in 2018. Most of the reason it hasn’t been<a class="moretag" href="https://www.toadstorm.com/blog/?p=1168"> Read more…</a></p> 232</p></div><div class="author">By <a href="https://www.toadstorm.com/blog/?author=1" title="toadstorm"><b>toadstorm</b></a>, <a href="https://www.toadstorm.com/blog/?p=1168"><time>6 months</time> ago </a></div></div></div></article><article 233 id="post-1010" 234 class="card card-blog card-plain post-1010 post type-post status-publish format-standard hentry category-uncategorized tag-pipeline"><div class="row "><div class= "col-sm-12"><h6 class="category text-info"><a href="https://www.toadstorm.com/blog/?cat=1" title="View all posts in Uncategorized" >Uncategorized</a> </h6><h2 class="card-title"><a href="https://www.toadstorm.com/blog/?p=1010" title="A VFX Artist’s guide to the System Environment" rel="bookmark">A VFX Artist’s guide to the System Environment</a></h2><div class="card-description"><p><p>I’ve already written two prior posts about managing the environment in a way that’s mostly geared towards Houdini artists: one about the houdini.env file, and another about Houdini package files. Both of these posts are still valid, but going by<a class="moretag" href="https://www.toadstorm.com/blog/?p=1010"> Read more…</a></p> 235</p></div><div class="author">By <a href="https://www.toadstorm.com/blog/?author=1" title="toadstorm"><b>toadstorm</b></a>, <a href="https://www.toadstorm.com/blog/?p=1010"><time>1 year</time> ago </a></div></div></div></article><article 236 id="post-1123" 237 class="card card-blog card-plain post-1123 post type-post status-publish format-standard has-post-thumbnail hentry category-houdini"><div class="row "><div class="col-ms-5 col-sm-5"><div class="card-image"><a href="https://www.toadstorm.com/blog/?p=1123" title="A Houdini RBD Primer, Part 1"><img width="360" height="240" src="https://www.toadstorm.com/blog/wp-content/uploads/2025/03/rbd_template_2-360x240.gif" class="attachment-hestia-blog size-hestia-blog wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://www.toadstorm.com/blog/wp-content/uploads/2025/03/rbd_template_2-360x240.gif 360w, https://www.toadstorm.com/blog/wp-content/uploads/2025/03/rbd_template_2-300x200.gif 300w, https://www.toadstorm.com/blog/wp-content/uploads/2025/03/rbd_template_2-768x512.gif 768w" sizes="(max-width: 360px) 100v
237w, 360px" /></a></div></div><div class= "col-ms-7 col-sm-7"><h6 class="category text-info"><a href="https://www.toadstorm.com/blog/?cat=30" title="View all posts in Houdini" >Houdini</a> </h6><h2 class="card-title"><a href="https://www.toadstorm.com/blog/?p=1123" title="A Houdini RBD Primer, Part 1" rel="bookmark">A Houdini RBD Primer, Part 1</a></h2><div class="card-description"><p><p>Rigid Body Dynamics (RBDs) in Houdini have gone through a lot of changes in the last decade, and one side effect of all that rapid development is that there’s a lot of confusing legacy stuff left over in both Houdini<a class="moretag" href="https://www.toadstorm.com/blog/?p=1123"> Read more…</a></p> 238</p></div><div class="author">By <a href="https://www.toadstorm.com/blog/?author=1" title="toadstorm"><b>toadstorm</b></a>, <a href="https://www.toadstorm.com/blog/?p=1123"><time>2 years</time> ago </a></div></div></div></article><article 239 id="post-1090" 240 class="card card-blog card-plain post-1090 post type-post status-publish format-standard has-post-thumbnail hentry category-houdini tag-mops tag-rbd"><div class="row "><div class="col-ms-5 col-sm-5"><div class="card-image"><a href="https://www.toadstorm.com/blog/?p=1090" title="Animating RBDs by Hand"><img width="360" height="240" src="https://www.toadstorm.com/blog/wp-content/uploads/2024/05/example1_4-360x240.gif" class="attachment-hestia-blog size-hestia-blog wp-post-image" alt="" decoding="async" loading="lazy" /></a></div></div><div class= "col-ms-7 col-sm-7"><h6 class="category text-info"><a href="https://www.toadstorm.com/blog/?cat=30" title="View all posts in Houdini" >Houdini</a> </h6><h2 class="card-title"><a href="https://www.toadstorm.com/blog/?p=1090" title="Animating RBDs by Hand" rel="bookmark">Animating RBDs by Hand</a></h2><div class="card-description"><p><p>A fairly common problem I see motion graphics artists struggling to figure out in Houdini is how to animate objects procedurally, but have them collide realistically while moving. They want to be able to art direct the animation of objects<a class="moretag" href="https://www.toadstorm.com/blog/?p=1090"> Read more…</a></p> 241</p></div><div class="author">By <a href="https://www.toadstorm.com/blog/?author=1" title="toadstorm"><b>toadstorm</b></a>, <a href="https://www.toadstorm.com/blog/?p=1090"><time>2 years</time> ago </a></div></div></div></article><article 242 id="post-1046" 243 class="card card-blog card-plain post-1046 post type-post status-publish format-standard hentry category-uncategorized"><div class="row "><div class= "col-sm-12"><h6 class="category text-info"><a href="https://www.toadstorm.com/blog/?cat=1" title="View all posts in Uncategorized" >Uncategorized</a> </h6><h2 class="card-title"><a href="https://www.toadstorm.com/blog/?p=1046" title="DOPs are not SOPs" rel="bookmark">DOPs are not SOPs</a></h2><div class="card-description"><p><p>I wanted to make a post about a really common misconception regarding Houdini’s geometry context (SOPs) versus its dynamics context (DOPs). Houdini’s documentation does explain a bit of basic information about DOPs, but not necessarily in the most readable way<a class="moretag" href="https://www.toadstorm.com/blog/?p=1046"> Read more…</a></p> 244</p></div><div class="author">By <a href="https://www.toadstorm.com/blog/?author=1" title="toadstorm"><b>toadstorm</b></a>, <a href="https://www.toadstorm.com/blog/?p=1046"><time>3 years</time> ago </a></div></div></div></article><article 245 id="post-1012" 246 class="card card-blog card-plain post-1012 post type-post status-publish format-standard has-post-thumbnail hentry category-houdini tag-houdini-2 tag-pipeline tag-python-2"><div class="row "><div class="col-ms-5 col-sm-5"><div class="card-image"><a href="https://www.toadstorm.com/blog/?p=1012" title="Customizing stock nodes in Houdini"><img width="360" height="186" src="https://www.toadstorm.com/blog/wp-content/uploads/2023/05/download-3.gif" class="attachment-hestia-blog size-hestia-blog wp-post-image" alt="" decoding="async" loading="lazy" /></a></div></div><div class= "col-ms-7 col-sm-7"><h6 class="category text-info"><a href="https://www.toadstorm.com/blog/?cat=30" title="View all posts in Houdini" >Houdini</a> </h6><h2 class="card-title"><a href="https://www.toadstorm.com/blog/?p=1012" title="Customizing stock nodes in Houdini" rel="bookmark">Customizing stock nodes in Houdini</a></h2><div class="card-description"><p><p>Casey Hupke asked an interesting question today: “how can I get a Color SOP to automatically update its node color to match the picked color?” This reminded me of some other pipeline work I’d done in the past to customize<a class="moretag" href="https://www.toadstorm.com/blog/?p=1012"> Read more…</a></p> 247</p></div><div class="author">By <a href="https://www.toadstorm.com/blog/?author=1" title="toadstorm"><b>toadstorm</b></a>, <a href="https://www.toadstorm.com/blog/?p=1012"><time>3 years</time> ago </a></div></div></div></article><article 248 id="post-942" 249 class="card card-blog card-plain post-942 post type-post status-publish format-standard has-post-thumbnail hentry category-houdini tag-instancing tag-mops"><div class="row "><div class="col-ms-5 col-sm-5"><div class="card-image"><a href="https://www.toadstorm.com/blog/?p=942" title="An Even Longer-Winded Guide to Instancing in Houdini"><img width="271" height="240" src="https://www.toadstorm.com/blog/wp-content/uploads/2022/12/particles_with_orient.gif"
249class="attachment-hestia-blog size-hestia-blog wp-post-image" alt="" decoding="async" loading="lazy" /></a></div></div><div class= "col-ms-7 col-sm-7"><h6 class="category text-info"><a href="https://www.toadstorm.com/blog/?cat=30" title="View all posts in Houdini" >Houdini</a> </h6><h2 class="card-title"><a href="https://www.toadstorm.com/blog/?p=942" title="An Even Longer-Winded Guide to Instancing in Houdini" rel="bookmark">An Even Longer-Winded Guide to Instancing in Houdini</a></h2><div class="card-description"><p><p>This article is way too long, so here’s the Table of Contents: Introduction Ugh, this instancing thing again. The old article is a bit outdated now, and it doesn’t touch on some important stuff about varying instances, especially material properties,<a class="moretag" href="https://www.toadstorm.com/blog/?p=942"> Read more…</a></p> 250</p></div><div class="author">By <a href="https://www.toadstorm.com/blog/?author=1" title="toadstorm"><b>toadstorm</b></a>, <a href="https://www.toadstorm.com/blog/?p=942"><time>4 years</time> ago </a></div></div></div></article><article 251 id="post-902" 252 class="card card-blog card-plain post-902 post type-post status-publish format-standard hentry category-uncategorized tag-houdini-2 tag-unity"><div class="row "><div class= "col-sm-12"><h6 class="category text-info"><a href="https://www.toadstorm.com/blog/?cat=1" title="View all posts in Uncategorized" >Uncategorized</a> </h6><h2 class="card-title"><a href="https://www.toadstorm.com/blog/?p=902" title="VR Conservatory Part 3: Plants" rel="bookmark">VR Conservatory Part 3: Plants</a></h2><div class="card-description"><p><p>The big draw of The Conservatory, other than the very neat rain shader, is the plants. I spent a long time researching different candidate plants that would roughly fit into the same tropical environment, with a decent range of morphologies<a class="moretag" href="https://www.toadstorm.com/blog/?p=902"> Read more…</a></p> 253</p></div><div class="author">By <a href="https://www.toadstorm.com/blog/?author=1" title="toadstorm"><b>toadstorm</b></a>, <a href="https://www.toadstorm.com/blog/?p=902"><time>4 years</time> ago </a></div></div></div></article><article 254 id="post-861" 255 class="card card-blog card-plain post-861 post type-post status-publish format-standard hentry category-uncategorized"><div class="row "><div class= "col-sm-12"><h6 class="category text-info"><a href="https://www.toadstorm.com/blog/?cat=1" title="View all posts in Uncategorized" >Uncategorized</a> </h6><h2 class="card-title"><a href="https://www.toadstorm.com/blog/?p=861" title="VR Conservatory Part 2: Architecture and Trim Sheets" rel="bookmark">VR Conservatory Part 2: Architecture and Trim Sheets</a></h2><div class="card-description"><p><p>After many months of tinkering after work, The Conservatory is finally “done”. I’m sure there’s more I could do with it, and I might go back and tweak a few things here and there, but to save my own sanity<a class="moretag" href="https://www.toadstorm.com/blog/?p=861"> Read more…</a></p> 256</p></div><div class="author">By <a href="https://www.toadstorm.com/blog/?author=1" title="toadstorm"><b>toadstorm</b></a>, <a href="https://www.toadstorm.com/blog/?p=861"><time>5 years</time> ago </a></div></div></div></article><article 257 id="post-827" 258 class="card card-blog card-plain post-827 post type-post status-publish format-standard hentry category-houdini category-python"><div class="row "><div class= "col-sm-12"><h6 class="category text-info"><a href="https://www.toadstorm.com/blog/?cat=30" title="View all posts in Houdini" >Houdini</a> </h6><h2 class="card-title"><a href="https://www.toadstorm.com/blog/?p=827" title="Baking cameras in Houdini (again)" rel="bookmark">Baking cameras in Houdini (again)</a></h2><div class="card-description"><p><p>I did an old post on this many years ago, and while it was a handy method it A.) required CHOPs and B.) didn’t account for all of the possible non-transform parameters you’d be dealing with on a camera, like<a class="moretag" href="https://www.toadstorm.com/blog/?p=827"> Read more…</a></p> 259</p></div><div class="author">By <a href="https://www.toadstorm.com/blog/?author=1" title="toadstorm"><b>toadstorm</b></a>, <a href="https://www.toadstorm.com/blog/?p=827"><time>5 years</time> ago </a></div></div></div></article></div> 260 <nav class="navigation pagination" aria-label="Posts"> 261 <h2 class="screen-reader-text">Posts navigation</h2> 262 <div class="nav-links"><span aria-current="page" class="page-numbers current">1</span> 263<a class="page-numbers" href="https://www.toadstorm.com/blog/?paged=2">2</a> 264<span class="page-numbers dots">…</span> 265<a class="page-numbers" href="https://www.toadstorm.com/blog/?paged=8">8</a> 266<a class="next page-numbers" href="https://www.toadstorm.com/blog/?paged=2">Next</a></div> 267 </nav>
267 </div> 268 <div class="col-md-3 blog-sidebar-wrapper col-md-offset-1 "> 269 <aside id="secondary" class="blog-sidebar" role="complementary"> 270 <div id="pages-5" class="widget widget_pages"><h5>Pages</h5> 271 <ul> 272 <li class="page_item page-item-2"><a href="https://www.toadstorm.com/blog/?page_id=2">About</a></li> 273<li class="page_item page-item-608"><a href="https://www.toadstorm.com/blog/?page_id=608">Blog</a></li> 274<li class="page_item page-item-40"><a href="https://www.toadstorm.com/blog/?page_id=40">Scripts</a></li> 275 </ul> 276 277 </div><div id="search-5" class="widget widget_search"><form role="search" method="get" class="search-form" action="https://www.toadstorm.com/blog/"> 278 <label> 279 <span class="screen-reader-text">Search for:</span> 280 <input type="search" class="search-field" placeholder="Search …" value="" name="s" /> 281 </label> 282 <input type="submit" class="search-submit" value="Search" /> 283 </form></div><div id="categories-7" class="widget widget_categories"><h5>Categories</h5> 284 <ul> 285 <li class="cat-item cat-item-30"><a href="https://www.toadstorm.com/blog/?cat=30">Houdini</a> 286</li> 287 <li class="cat-item cat-item-7"><a href="https://www.toadstorm.com/blog/?cat=7">Maya</a> 288</li> 289 <li class="cat-item cat-item-15"><a href="https://www.toadstorm.com/blog/?cat=15">mel</a> 290</li> 291 <li class="cat-item cat-item-6"><a href="https://www.toadstorm.com/blog/?cat=6">Python</a> 292</li> 293 <li class="cat-item cat-item-18"><a href="https://www.toadstorm.com/blog/?cat=18">Rigging</a> 294</li> 295 <li class="cat-item cat-item-19"><a href="https://www.toadstorm.com/blog/?cat=19">Shading</a> 296</li> 297 <li class="cat-item cat-item-8"><a href="https://www.toadstorm.com/blog/?cat=8">toadstorm</a> 298</li> 299 <li class="cat-item cat-item-1"><a href="https://www.toadstorm.com/blog/?cat=1">Uncategorized</a> 300</li> 301 <li class="cat-item cat-item-78"><a href="https://www.toadstorm.com/blog/?cat=78">Unity</a> 302</li> 303 </ul> 304 305 </div><div id="tag_cloud-6" class="widget widget_tag_cloud"><h5>Tags</h5><div class="tagcloud"><a href="https://www.toadstorm.com/blog/?tag=aov" class="tag-cloud-link tag-link-71 tag-link-position-1" style="font-size: 8pt;" aria-label="aov (1 item)">aov</a> 306<a href="https://www.toadstorm.com/blog/?tag=api" class="tag-cloud-link tag-link-58 tag-link-position-2" style="font-size: 8pt;" aria-label="api (1 item)">api</a> 307<a href="https://www.toadstorm.com/blog/?tag=boolean" class="tag-cloud-link tag-link-66 tag-link-position-3" style="font-size: 8pt;" aria-label="boolean (1 item)">boolean</a> 308<a href="https://www.toadstorm.com/blog/?tag=bubble" class="tag-cloud-link tag-link-73 tag-link-position-4" style="font-size: 8pt;" aria-label="bubble (1 item)">bubble</a> 309<a href="https://www.toadstorm.com/blog/?tag=callback" class="tag-cloud-link tag-link-59 tag-link-position-5" style="font-size: 8pt;" aria-label="callback (1 item)">callback</a> 310<a href="https://www.toadstorm.com/blog/?tag=circuits" class="tag-cloud-link tag-link-60 tag-link-position-6" style="font-size: 8pt;" aria-label="circuits (1 item)">circuits</a> 311<a href="https://www.toadstorm.com/blog/?tag=creep" class="tag-cloud-link tag-link-45 tag-link-position-7" style="font-size: 8pt;" aria-label="creep (1 item)">creep</a> 312<a href="https://www.toadstorm.com/blog/?tag=curve" class="tag-cloud-link tag-link-65 tag-link-position-8" style="font-size: 8pt;" aria-label="curve (1 item)">curve</a> 313<a href="https://www.toadstorm.com/blog/?tag=demo-reel" class="tag-cloud-link tag-link-3 tag-link-position-9" style="font-size: 10.172413793103pt;" aria-label="demo reel (2 items)">demo reel</a> 314<a href="https://www.toadstorm.com/blog/?tag=environment" class="tag-cloud-link tag-link-75 tag-link-position-10" style="font-size: 10.172413793103pt;" aria-label="environment (2 items)">environment</a> 315<a href="https://www.toadstorm.com/blog/?tag=houdini-2" class="tag-cloud-link tag-link-31 tag-link-position-11" style="font-size: 22pt;" aria-label="houdini (28 items)">houdini</a> 316<a href="https://www.toadstorm.com/blog/?tag=instancing" class="tag-cloud-link tag-link-85 tag-link-position-12" style="font-size: 8pt;" aria-label="instancing (1 item)">instancing</a> 317<a href="https://www.toadstorm.com/blog/?tag=isosurface" class="tag-cloud-link tag-link-54 tag-link-position-13" style="font-size: 8pt;" aria-label="isosurface (1 item)">isosurface</a> 318<a href="https://www.toadstorm.com/blog/?tag=l-systems" class="tag-cloud-link tag-link-35 tag-link-position-14" style="font-size: 12.827586206897pt;" aria-label="L-systems (4 items)">L-systems</a> 319<a href="https://www.toadstorm.com/blog/?tag=mantra" class="tag-cloud-link tag-link-70 tag-link-position-15" style="font-size: 8pt;" aria-label="mantra (1 item)">mantra</a> 320<a href="https://www.toadstorm.com/blog/?tag=maya-2" class="tag-cloud-link tag-link-10 tag-link-position-16" style="font-size: 18.862068965517pt;" aria-label="maya (15 items)">maya</a> 321<a href="https://www.toadstorm.com/blog/?tag=mel" class="tag-cloud-link tag-link-56 tag-link-position-17" style="font-size: 11.620689655172pt;" aria-label="mel (3 items)">mel</a> 322<a href="https://www.toadstorm.com/blog/?tag=mops" class="tag-cloud-link tag-link-68 tag-link-position-18" style="font-size: 15.241379310345pt;" aria-label="mops (7 items)">mops</a> 323<a href="https://www.toadstorm.com/blog/?tag=nuke" class="tag-cloud-link tag-link-21 tag-link-position-19" style="font-size: 10.172413793103pt;" aria-label="nuke (2 items)">nuke</a> 324<a href="https://www.toadstorm.com/blog/?tag=openmaya" class="tag-cloud-link tag-link-57 tag-link-position-20" style="font-size: 8pt;" aria-label="openmaya (1 item)">openmaya</a> 325<a href="https://www.toadstorm.com/blog/?tag=packages" class="tag-cloud-link tag-link-77 tag-link-position-21" style="font-size: 8pt;" aria-label="packages (1 item)">packages</a> 326<a href="https://www.toadstorm.com/blog/?tag=pdg" class="tag-cloud-link tag-link-81 tag-link-position-22" style="font-size: 8pt;" aria-label="pdg (1 item)">pdg</a> 327<a href="https://www.toadstorm.com/blog/?tag=pipeline" class="tag-cloud-link tag-link-11 tag-link-position-23" style="font-size: 14.637931034483pt;" aria-label="pipeline (6 items)">pipeline</a> 328<a href="https://www.toadstorm.com/blog/?tag=ply2vrmesh" class="tag-cloud-link tag-link-52 tag-link-position-24" style="font-size: 8pt;" aria-label="ply2vrmesh (1 item)">ply2vrmesh</a> 329<a href="https://www.toadstorm.com/blog/?tag=primuv" class="tag-cloud-link tag-link-64 tag-link-position-25" style="font-size: 8pt;" aria-label="primuv (1 item)">primuv</a> 330<a href="https://www.toadstorm.com/blog/?tag=python-2" class="tag-cloud-link tag-link-9 tag-link-position-26" style="font-size: 16.448275862069pt;" aria-label="python (9 items)">python</a> 331<a href="https://www.toadstorm.com/blog/?tag=rain" class="tag-cloud-link tag-link-67 tag-link-position-27" style="font-size: 8pt;" aria-label="rain (1 item)">rain</a> 332<a href="https://www.toadstorm.com/blog/?tag=rbd" class="tag-cloud-link tag-link-86 tag-link-position-28" style="font-size: 8pt;" aria-label="RBD (1 item)">RBD</a> 333<a href="https://www.toadstorm.com/blog/?tag=redshift" class="tag-cloud-link tag-link-74 tag-link-position-29" style="font-size: 10.172413793103pt;" aria-label="redshift (2 items)">redshift</a> 334<a href="https://www.toadstorm.com/blog/?tag=refract" class="tag-cloud-link tag-link-72 tag-link-position-30" style="font-size: 8pt;" aria-label="refract (1 item)">refract</a> 335<a href="https://www.toadstorm.com/blog/?tag=rendering" class="tag-cloud-link tag-link-12 tag-link-position-31" style="font-size: 10.172413793103pt;" aria-label="rendering (2 items)">rendering</a> 336<a href="https://www.toadstorm.com/blog/?tag=solver" class="tag-cloud-link tag-link-61 tag-link-position-32" style="font-size: 8pt;" aria-label="solver (1 item)">solver</a> 337<a href="https://www.toadstorm.com/blog/?tag=tiles" class="tag-cloud-link tag-link-83 tag-link-position-33" style="font-size: 8pt;" aria-label="tiles (1 item)">tiles</a> 338<a href="https://www.toadstorm.com/blog/?tag=tiling" class="tag-cloud-link tag-link-84 tag-link-position-34" style="font-size: 8pt;" aria-label="tiling (1 item)">tiling</a> 339<a href="https://www.toadstorm.com/blog/?tag=timewarp" class="tag-cloud-link tag-link-34 tag-link-position-35" style="font-size: 8pt;" aria-label="timewarp (1 item)">timewarp</a> 340<a href="https://www.toadstorm.com/blog/?tag=tops" class="tag-cloud-link tag-link-82 tag-link-position-36" style="font-size: 8pt;" aria-label="tops (1 item)">tops</a> 341<a href="https://www.toadstorm.com/blog/?tag=trails" class="tag-cloud-link tag-link-32 tag-link-position-37" style="font-size: 11.620689655172pt;" aria-label="trails (3 items)">trails</a> 342<a href="https://www.toadstorm.com/blog/?tag=unity" class="tag-cloud-link tag-link-79 tag-link-position-38" style="font-size: 10.172413793103pt;" aria-label="unity (2 items)">unity</a> 343<a href="https://www.toadstorm.com/blog/?tag=uv" class="tag-cloud-link tag-link-25 tag-link-position-39" style="font-size: 10.172413793103pt;" aria-label="UV (2 items)">UV</a> 344<a href="https://www.toadstorm.com/blog/?tag=variable" class="tag-cloud-link tag-link-76 tag-link-position-40" style="font-size: 8pt;" aria-label="variable (1 item)">variable</a> 345<a href="https://www.toadstorm.com/blog/?tag=vex" class="tag-cloud-link tag-link-62 tag-link-position-41" style="font-size: 8pt;" aria-label="vex (1 item)">vex</a> 346<a href="https://www.toadstorm.com/blog/?tag=vexpression" class="tag-cloud-link tag-link-69 tag-link-position-42" style="font-size: 8pt;" aria-label="vexpression (1 item)">vexpression</a> 347<a href="https://www.toadstorm.com/blog/?tag=vr" class="tag-cloud-link tag-link-80 tag-link-position-43" style="font-size: 8pt;" aria-label="vr (1 item)">vr</a> 348<a href="https://www.toadstorm.com/blog/?tag=vray" class="tag-cloud-link tag-link-27 tag-link-position-44" style="font-size: 11.620689655172pt;" aria-label="vray (3 items)">vray</a> 349<a href="https://www.toadstorm.com/blog/?tag=xyzdist" class="tag-cloud-link tag-link-63 tag-link-position-45" style="font-size: 8pt;" aria-label="xyzdist (1 item)">xyzdist</a></div> 350</div> </aside><!-- .sidebar .widget-area --> 351 </div>
352 </div> 353 </div> 354 </div> 355 356 <footer class="footer footer-black footer-big"> 357 <div class="container"> 358 <div class="hestia-bottom-footer-content"><ul class="footer-menu pull-left"><li class="page_item page-item-2"><a href="https://www.toadstorm.com/blog/?page_id=2">About</a></li> 359<li class="page_item page-item-608"><a href="https://www.toadstorm.com/blog/?page_id=608">Blog</a></li> 360<li class="page_item page-item-40"><a href="https://www.toadstorm.com/blog/?page_id=40">Scripts</a></li> 361</ul> 362 <div class="copyright pull-right"> 363 Hestia | Developed by <a href="https://themeisle.com" rel="nofollow">ThemeIsle</a> </div> 364 </div> </div> 365 </footer> 366 </div> 367 </div>
368<script type='text/javascript' src='https://www.toadstorm.com/blog/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shCore.js?ver=3.0.9b' id='syntaxhighlighter-core-js'></script>
vendor: 1 bytes, line 368
368
369<script type='text/javascript' src='https://www.toadstorm.com/blog/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPlain.js?ver=3.0.9b' id='syntaxhighlighter-brush-plain-js'></script>
vendor: 1 bytes, line 369
369
370<script type='text/javascript' src='https://www.toadstorm.com/blog/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPython.js?ver=3.0.9b' id='syntaxhighlighter-brush-python-js'></script>
vendor: 1 bytes, line 370
370
371<script type='text/javascript'> 372 (function(){ 373 var corecss = document.createElement('link'); 374 var themecss = document.createElement('link'); 375 var corecssurl = "https://www.toadstorm.com/blog/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shCore.css?ver=3.0.9b"; 376 if ( corecss.setAttribute ) { 377 corecss.setAttribute( "rel", "stylesheet" ); 378 corecss.setAttribute( "type", "text/css" ); 379 corecss.setAttribute( "href", corecssurl ); 380 } else { 381 corecss.rel = "stylesheet"; 382 corecss.href = corecssurl; 383 } 384 document.head.appendChild( corecss ); 385 var themecssurl = "https://www.toadstorm.com/blog/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shThemeDefault.css?ver=3.0.9b"; 386 if ( themecss.setAttribute ) { 387 themecss.setAttribute( "rel", "stylesheet" ); 388 themecss.setAttribute( "type", "text/css" ); 389 themecss.setAttribute( "href", themecssurl ); 390 } else { 391 themecss.rel = "stylesheet"; 392 themecss.href = themecssurl; 393 } 394 document.head.appendChild( themecss ); 395 })(); 396 SyntaxHighlighter.config.strings.expandSource = '+ expand source'; 397 SyntaxHighlighter.config.strings.help = '?'; 398 SyntaxHighlighter.config.strings.alert = 'SyntaxHighlighter\n\n'; 399 SyntaxHighlighter.config.strings.noBrush = 'Can\'t find brush for: '; 400 SyntaxHighlighter.config.strings.brushNotHtmlScript = 'Brush wasn\'t configured for html-script option: '; 401 SyntaxHighlighter.defaults['pad-line-numbers'] = false; 402 SyntaxHighlighter.defaults['toolbar'] = false; 403 SyntaxHighlighter.all(); 404 405 // Infinite scroll support 406 if ( typeof( jQuery ) !== 'undefined' ) { 407 jQuery( function( $ ) { 408 $( document.body ).on( 'post-load', function() { 409 SyntaxHighlighter.highlight(); 410 } ); 411 } ); 412 } 413</script>
413 414<style id='core-block-supports-inline-css' type='text/css'> 415.wp-block-gallery.wp-block-gallery-1,.wp-block-gallery.wp-block-gallery-3,.wp-block-gallery.wp-block-gallery-5,.wp-block-gallery.wp-block-gallery-7{--wp--style--unstable-gallery-gap:var( --wp--style--gallery-gap-default, var( --gallery-block--gutter-size, var( --wp--style--block-gap, 0.5em ) ) );gap:var( --wp--style--gallery-gap-default, var( --gallery-block--gutter-size, var( --wp--style--block-gap, 0.5em ) ) );} 416</style>
417<script type='text/javascript' src='https://www.toadstorm.com/blog/wp-content/themes/hestia/assets/bootstrap/js/bootstrap.min.js?ver=1.0.2' id='jquery-bootstrap-js'></script>
vendor: 1 bytes, line 417
417
418<script type='text/javascript' src='https://www.toadstorm.com/blog/wp-includes/js/jquery/ui/core.min.js?ver=1.13.2' id='jquery-ui-core-js'></script>
vendor: 1 bytes, line 418
418
419<script type='text/javascript' id='hestia_scripts-js-extra'> 420/* <![CDATA[ */ 421var requestpost = {"ajaxurl":"https:\/\/www.toadstorm.com\/blog\/wp-admin\/admin-ajax.php","disable_autoslide":"","masonry":""}; 422/* ]]> */ 423</script>
vendor: 1 bytes, line 423
423
424<script type='text/javascript' src='https://www.toadstorm.com/blog/wp-content/themes/hestia/assets/js/script.min.js?ver=2.0.5' id='hestia_scripts-js'></script>
424 425</body> 426</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.