
{"id":2109,"date":"2015-02-05T20:37:26","date_gmt":"2015-02-05T19:37:26","guid":{"rendered":"http:\/\/www.matthijskamstra.nl\/blog\/?p=2109"},"modified":"2015-02-21T23:22:02","modified_gmt":"2015-02-21T22:22:02","slug":"tween-engine-go-part-2","status":"publish","type":"post","link":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/","title":{"rendered":"Tween engine Go &#8211; part 2"},"content":{"rendered":"<p>My <a href=\"http:\/\/www.matthijskamstra.nl\/blog\/?p=2100\" title=\"Tween engine Go\">last post<\/a> was about my new WIP tween library Go.<\/p>\n<p>I have been updating my little experiment and it&#8217;s getting better.<br \/>\nLooking into other libraries codes is very educational.<\/p>\n<p>Does it perform as good as the default Haxe tween engine <a href=\"https:\/\/github.com\/openfl\/actuate\" title=\"Actuate\" target=\"_blank\">Actuate<\/a>?<br \/>\nYeah that would have been great, but nope&#8230; around 1300 object, Go will start dropping frame-rate in Flash.<\/p>\n<p>My goal was to create a <strong>lightweight, simple, compact, chainable tween library for haxe\/openfl<\/strong>.<\/p>\n<p>Could I perform as good as Actuate?<br \/>\nI am not sure, Actuate is very well written and Joshua Granick has been working on it for a long time and tested it extensively.<br \/>\nBut I probably could improve on my code and get a better performance in Flash (in which I did the <a href=\"http:\/\/matthijskamstra.github.io\/go\/#stress\" target=\"_blank\">stress-test<\/a>). The downside is that my code will be full of <a href=\"http:\/\/haxe.org\/manual\/lf-condition-compilation.html\" target=\"_blank\">condition compilation<\/a> and that would mean the code would become more and more complex.<\/p>\n<p>Why am I sure it will improve, well I cheated and did some flash specific code modifications.<br \/>\nCheck the <a href=\"https:\/\/github.com\/MatthijsKamstra\/go\/blob\/master\/lets\/Go.hx#L411\" target=\"_blank\">code in github<\/a><br \/>\nIn my first draft it was just:<\/p>\n<pre class=\"brush: as3; title: ; wrap-lines: true; notranslate\" title=\"\">\r\nvar range = _props.get(n);\r\nReflect.setProperty(_target, n, _easing.ease( time, range.from, (range.to-range.from), _duration ) );\r\n<\/pre>\n<p>and that performed very bad in Flash (if I remember correctly the framerate already dropped after 100 object)<br \/>\nAnd I updated it to this and that works better&#8230; for Flash<\/p>\n<pre class=\"brush: as3; title: ; wrap-lines: true; notranslate\" title=\"\">\r\nvar range = _props.get(n);\r\n#if flash\r\nuntyped _target&#x5B;n] = _easing.ease( time, range.from, (range.to-range.from), _duration ) ;\r\n#else\r\nReflect.setProperty(_target, n, _easing.ease( time, range.from, (range.to-range.from), _duration ) );\r\n#end\r\n<\/pre>\n<p>So the question is more do I want to change the code for specific platforms?<br \/>\nFor now I am not going to focus on Flash to enhance it&#8217;s performance&#8230; there is little chance that I will be animating 1000+ objects.<\/p>\n<p>So I will be using it in my own projects and will run into problems that I will fix.<br \/>\nYou are welcome to use it as well and report bugs or other improvements.<\/p>\n<p>I&#8217;ve update the promotional website: <a href=\"http:\/\/matthijskamstra.github.io\/go\/\" title=\"Go\" target=\"_blank\">check it here<\/a>.<br \/>\nYou can find the stress-test there, where I compare <strong>Go<\/strong> with <strong>Actuate<\/strong>.<br \/>\nIf you want to add your tweening library, add it <a href=\"https:\/\/github.com\/MatthijsKamstra\/go\/tree\/master\/example\/stress_test\/Source\/tweenTests\" target=\"_blank\">here<\/a> in github.<br \/>\nDownload\/install instructions can be found <a href=\"https:\/\/github.com\/MatthijsKamstra\/go\" target=\"_blank\">here<\/a>.<\/p>\n<p>Happy tweening.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>My last post was about my new WIP tween library Go. I have been updating my little experiment and it&#8217;s getting better. Looking into other libraries codes is very educational. Does it perform as good as the default Haxe tween engine Actuate? Yeah that would have been great, but nope&#8230; around 1300 object, Go will [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":2123,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20,360,6],"tags":[407,412,383,382],"class_list":["post-2109","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-animation","category-haxe","category-open-source-freeware","tag-animation","tag-haxe","tag-openfl","tag-tween"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.8 - aioseo.com -->\n\t<meta name=\"description\" content=\"My last post was about my new WIP tween library Go. I have been updating my little experiment and it&#039;s getting better. Looking into other libraries codes is very educational. Does it perform as good as the default Haxe tween engine Actuate? Yeah that would have been great, but nope... around 1300 object, Go will\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Matthijs Kamstra\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.8\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"[mck] | a polymath zapper\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Tween engine Go \u2013 part 2 | [mck]\" \/>\n\t\t<meta property=\"og:description\" content=\"My last post was about my new WIP tween library Go. I have been updating my little experiment and it&#039;s getting better. Looking into other libraries codes is very educational. Does it perform as good as the default Haxe tween engine Actuate? Yeah that would have been great, but nope... around 1300 object, Go will\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2015-02-05T19:37:26+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2015-02-21T22:22:02+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Tween engine Go \u2013 part 2 | [mck]\" \/>\n\t\t<meta name=\"twitter:description\" content=\"My last post was about my new WIP tween library Go. I have been updating my little experiment and it&#039;s getting better. Looking into other libraries codes is very educational. Does it perform as good as the default Haxe tween engine Actuate? Yeah that would have been great, but nope... around 1300 object, Go will\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/#article\",\"name\":\"Tween engine Go \\u2013 part 2 | [mck]\",\"headline\":\"Tween engine Go &#8211; part 2\",\"author\":{\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/author\\\/admin\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/wp-content\\\/uploads\\\/Screen-Shot-2015-02-21-at-23.18.46.png\",\"width\":1431,\"height\":542},\"datePublished\":\"2015-02-05T20:37:26+01:00\",\"dateModified\":\"2015-02-21T23:22:02+01:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/#webpage\"},\"articleSection\":\"Animation, Haxe, Open source \\\/ Freeware, Animation, Haxe, openfl, tween\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/category\\\/open-source-freeware\\\/#listItem\",\"name\":\"Open source \\\/ Freeware\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/category\\\/open-source-freeware\\\/#listItem\",\"position\":2,\"name\":\"Open source \\\/ Freeware\",\"item\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/category\\\/open-source-freeware\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/#listItem\",\"name\":\"Tween engine Go &#8211; part 2\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/#listItem\",\"position\":3,\"name\":\"Tween engine Go &#8211; part 2\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/category\\\/open-source-freeware\\\/#listItem\",\"name\":\"Open source \\\/ Freeware\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/#organization\",\"name\":\"[mck]\",\"description\":\"a polymath zapper\",\"url\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/author\\\/admin\\\/#author\",\"url\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/author\\\/admin\\\/\",\"name\":\"Matthijs Kamstra\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/06ff22a1197b6624946e5a3377184f11ddc00ac06a6f1d2311b9d2072bdf61b1?s=96&d=wavatar&r=g\",\"width\":96,\"height\":96,\"caption\":\"Matthijs Kamstra\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/#webpage\",\"url\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/\",\"name\":\"Tween engine Go \\u2013 part 2 | [mck]\",\"description\":\"My last post was about my new WIP tween library Go. I have been updating my little experiment and it's getting better. Looking into other libraries codes is very educational. Does it perform as good as the default Haxe tween engine Actuate? Yeah that would have been great, but nope... around 1300 object, Go will\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/author\\\/admin\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/author\\\/admin\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/wp-content\\\/uploads\\\/Screen-Shot-2015-02-21-at-23.18.46.png\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/#mainImage\",\"width\":1431,\"height\":542},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/2015\\\/02\\\/05\\\/tween-engine-go-part-2\\\/#mainImage\"},\"datePublished\":\"2015-02-05T20:37:26+01:00\",\"dateModified\":\"2015-02-21T23:22:02+01:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/\",\"name\":\"[mck]\",\"description\":\"a polymath zapper\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.matthijskamstra.nl\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Tween engine Go \u2013 part 2 | [mck]","description":"My last post was about my new WIP tween library Go. I have been updating my little experiment and it's getting better. Looking into other libraries codes is very educational. Does it perform as good as the default Haxe tween engine Actuate? Yeah that would have been great, but nope... around 1300 object, Go will","canonical_url":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/#article","name":"Tween engine Go \u2013 part 2 | [mck]","headline":"Tween engine Go &#8211; part 2","author":{"@id":"https:\/\/www.matthijskamstra.nl\/blog\/author\/admin\/#author"},"publisher":{"@id":"https:\/\/www.matthijskamstra.nl\/blog\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/www.matthijskamstra.nl\/blog\/wp-content\/uploads\/Screen-Shot-2015-02-21-at-23.18.46.png","width":1431,"height":542},"datePublished":"2015-02-05T20:37:26+01:00","dateModified":"2015-02-21T23:22:02+01:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/#webpage"},"isPartOf":{"@id":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/#webpage"},"articleSection":"Animation, Haxe, Open source \/ Freeware, Animation, Haxe, openfl, tween"},{"@type":"BreadcrumbList","@id":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.matthijskamstra.nl\/blog#listItem","position":1,"name":"Home","item":"https:\/\/www.matthijskamstra.nl\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/www.matthijskamstra.nl\/blog\/category\/open-source-freeware\/#listItem","name":"Open source \/ Freeware"}},{"@type":"ListItem","@id":"https:\/\/www.matthijskamstra.nl\/blog\/category\/open-source-freeware\/#listItem","position":2,"name":"Open source \/ Freeware","item":"https:\/\/www.matthijskamstra.nl\/blog\/category\/open-source-freeware\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/#listItem","name":"Tween engine Go &#8211; part 2"},"previousItem":{"@type":"ListItem","@id":"https:\/\/www.matthijskamstra.nl\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/#listItem","position":3,"name":"Tween engine Go &#8211; part 2","previousItem":{"@type":"ListItem","@id":"https:\/\/www.matthijskamstra.nl\/blog\/category\/open-source-freeware\/#listItem","name":"Open source \/ Freeware"}}]},{"@type":"Organization","@id":"https:\/\/www.matthijskamstra.nl\/blog\/#organization","name":"[mck]","description":"a polymath zapper","url":"https:\/\/www.matthijskamstra.nl\/blog\/"},{"@type":"Person","@id":"https:\/\/www.matthijskamstra.nl\/blog\/author\/admin\/#author","url":"https:\/\/www.matthijskamstra.nl\/blog\/author\/admin\/","name":"Matthijs Kamstra","image":{"@type":"ImageObject","@id":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/06ff22a1197b6624946e5a3377184f11ddc00ac06a6f1d2311b9d2072bdf61b1?s=96&d=wavatar&r=g","width":96,"height":96,"caption":"Matthijs Kamstra"}},{"@type":"WebPage","@id":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/#webpage","url":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/","name":"Tween engine Go \u2013 part 2 | [mck]","description":"My last post was about my new WIP tween library Go. I have been updating my little experiment and it's getting better. Looking into other libraries codes is very educational. Does it perform as good as the default Haxe tween engine Actuate? Yeah that would have been great, but nope... around 1300 object, Go will","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/www.matthijskamstra.nl\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/#breadcrumblist"},"author":{"@id":"https:\/\/www.matthijskamstra.nl\/blog\/author\/admin\/#author"},"creator":{"@id":"https:\/\/www.matthijskamstra.nl\/blog\/author\/admin\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/www.matthijskamstra.nl\/blog\/wp-content\/uploads\/Screen-Shot-2015-02-21-at-23.18.46.png","@id":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/#mainImage","width":1431,"height":542},"primaryImageOfPage":{"@id":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/#mainImage"},"datePublished":"2015-02-05T20:37:26+01:00","dateModified":"2015-02-21T23:22:02+01:00"},{"@type":"WebSite","@id":"https:\/\/www.matthijskamstra.nl\/blog\/#website","url":"https:\/\/www.matthijskamstra.nl\/blog\/","name":"[mck]","description":"a polymath zapper","inLanguage":"en-US","publisher":{"@id":"https:\/\/www.matthijskamstra.nl\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"[mck] | a polymath zapper","og:type":"article","og:title":"Tween engine Go \u2013 part 2 | [mck]","og:description":"My last post was about my new WIP tween library Go. I have been updating my little experiment and it's getting better. Looking into other libraries codes is very educational. Does it perform as good as the default Haxe tween engine Actuate? Yeah that would have been great, but nope... around 1300 object, Go will","og:url":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/","article:published_time":"2015-02-05T19:37:26+00:00","article:modified_time":"2015-02-21T22:22:02+00:00","twitter:card":"summary_large_image","twitter:title":"Tween engine Go \u2013 part 2 | [mck]","twitter:description":"My last post was about my new WIP tween library Go. I have been updating my little experiment and it's getting better. Looking into other libraries codes is very educational. Does it perform as good as the default Haxe tween engine Actuate? Yeah that would have been great, but nope... around 1300 object, Go will"},"aioseo_meta_data":{"post_id":"2109","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2024-12-11 08:53:24","updated":"2025-06-04 10:49:32","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.matthijskamstra.nl\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.matthijskamstra.nl\/blog\/category\/open-source-freeware\/\" title=\"Open source \/ Freeware\">Open source \/ Freeware<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tTween engine Go \u2013 part 2\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.matthijskamstra.nl\/blog"},{"label":"Open source \/ Freeware","link":"https:\/\/www.matthijskamstra.nl\/blog\/category\/open-source-freeware\/"},{"label":"Tween engine Go &#8211; part 2","link":"https:\/\/www.matthijskamstra.nl\/blog\/2015\/02\/05\/tween-engine-go-part-2\/"}],"_links":{"self":[{"href":"https:\/\/www.matthijskamstra.nl\/blog\/wp-json\/wp\/v2\/posts\/2109","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.matthijskamstra.nl\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.matthijskamstra.nl\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.matthijskamstra.nl\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.matthijskamstra.nl\/blog\/wp-json\/wp\/v2\/comments?post=2109"}],"version-history":[{"count":2,"href":"https:\/\/www.matthijskamstra.nl\/blog\/wp-json\/wp\/v2\/posts\/2109\/revisions"}],"predecessor-version":[{"id":2111,"href":"https:\/\/www.matthijskamstra.nl\/blog\/wp-json\/wp\/v2\/posts\/2109\/revisions\/2111"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.matthijskamstra.nl\/blog\/wp-json\/wp\/v2\/media\/2123"}],"wp:attachment":[{"href":"https:\/\/www.matthijskamstra.nl\/blog\/wp-json\/wp\/v2\/media?parent=2109"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.matthijskamstra.nl\/blog\/wp-json\/wp\/v2\/categories?post=2109"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.matthijskamstra.nl\/blog\/wp-json\/wp\/v2\/tags?post=2109"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}