PageSourceSearch

https://www.toadstorm.com/blog/

html toadstorm.com collected 2026-10-08 07:59:28 UTC 53,489 bytes, 426 lines download raw bytes

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 &raquo; Feed" href="https://www.toadstorm.com/blog/?feed=rss2" />
12<link rel="alternate" type="application/rss+xml" title="Toadstorm Nerdblog &raquo; 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&#038;subset=latin%2Clatin-ext&#038;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&#8217;t changed much in MOPs since it was first launched way back in 2018. Most of the reason it hasn&#8217;t been<a class="moretag" href="https://www.toadstorm.com/blog/?p=1168"> Read more&hellip;</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&#8217;s guide to the System Environment" rel="bookmark">A VFX Artist&#8217;s guide to the System Environment</a></h2><div class="card-description"><p><p>I&#8217;ve already written two prior posts about managing the environment in a way that&#8217;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&hellip;</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&#8217;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&hellip;</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&hellip;</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&#8217;s geometry context (SOPs) versus its dynamics context (DOPs). Houdini&#8217;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&hellip;</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: &#8220;how can I get a Color SOP to automatically update its node color to match the picked color?&#8221; This reminded me of some other pipeline work I&#8217;d done in the past to customize<a class="moretag" href="https://www.toadstorm.com/blog/?p=1012"> Read more&hellip;</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&#8217;s the Table of Contents: Introduction Ugh, this instancing thing again. The old article is a bit outdated now, and it doesn&#8217;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&hellip;</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&hellip;</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 &#8220;done&#8221;. I&#8217;m sure there&#8217;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&hellip;</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&#8217;t account for all of the possible non-transform parameters you&#8217;d be dealing with on a camera, like<a class="moretag" href="https://www.toadstorm.com/blog/?p=827"> Read more&hellip;</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">&hellip;</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 &hellip;" 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.