{"id":1119,"date":"2020-10-01T14:09:46","date_gmt":"2020-10-01T14:09:46","guid":{"rendered":"http:\/\/gim.studio\/?page_id=1119"},"modified":"2020-10-01T20:06:15","modified_gmt":"2020-10-01T20:06:15","slug":"optimization-tips","status":"publish","type":"page","link":"https:\/\/gim.studio\/animalia\/optimization-tips\/","title":{"rendered":"Optimization tips"},"content":{"rendered":"<div id=\"pl-1119\"  class=\"panel-layout\" ><div id=\"pg-1119-0\"  class=\"panel-grid panel-has-style\" ><div class=\"siteorigin-panels-stretch panel-row-style panel-row-style-for-1119-0\" data-stretch-type=\"full-stretched-padded\" ><div id=\"pgc-1119-0-0\"  class=\"panel-grid-cell\" ><div id=\"panel-1119-0-0-0\" class=\"so-panel widget widget_sow-editor panel-first-child panel-last-child\" data-index=\"0\" ><div id=\"onas\" class=\"panel-widget-style panel-widget-style-for-1119-0-0-0\" ><div\n\t\t\t\n\t\t\tclass=\"so-widget-sow-editor so-widget-sow-editor-base\"\n\t\t\t\n\t\t>\n<div class=\"siteorigin-widget-tinymce textwidget\">\n\t<h1 class=\"vc_custom_heading\">Optimization tips<\/h1>\n<p>In this guide, we will have a look at some optimization techniques that can be used with gFur.<\/p>\n<\/div>\n<\/div><\/div><\/div><\/div><\/div><\/div><div id=\"pg-1119-1\"  class=\"panel-grid panel-has-style\" ><div class=\"siteorigin-panels-stretch panel-row-style panel-row-style-for-1119-1\" data-stretch-type=\"full-stretched-padded\" ><div id=\"pgc-1119-1-0\"  class=\"panel-grid-cell\" ><div id=\"panel-1119-1-0-0\" class=\"so-panel widget widget_sow-accordion panel-first-child panel-last-child\" data-index=\"1\" ><div\n\t\t\t\n\t\t\tclass=\"so-widget-sow-accordion so-widget-sow-accordion-default-1b76bb6e6f77-1119\"\n\t\t\t\n\t\t><div>\n\t<div class=\"sow-accordion\">\n\t\t\t<div class=\"sow-accordion-panel\"\n\t\t\t data-anchor=\"multiple-gfur-components\">\n\t\t\t\t<div class=\"sow-accordion-panel-header-container\" role=\"heading\" aria-level=\"2\">\n\t\t\t\t\t<div class=\"sow-accordion-panel-header\" tabindex=\"0\" role=\"button\" id=\"accordion-label-multiple-gfur-components\" aria-controls=\"accordion-content-multiple-gfur-components\" aria-expanded=\"false\">\n\t\t\t\t\t\t<div class=\"sow-accordion-title sow-accordion-title-icon-left\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tMultiple gFur components\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"sow-accordion-open-close-button\">\n\t\t\t\t\t\t\t<div class=\"sow-accordion-open-button\">\n\t\t\t\t\t\t\t\t<span class=\"sow-icon-ionicons\" data-sow-icon=\"&#xf218;\"\n\t\t \n\t\taria-hidden=\"true\"><\/span>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"sow-accordion-close-button\">\n\t\t\t\t\t\t\t\t<span class=\"sow-icon-ionicons\" data-sow-icon=\"&#xf209;\"\n\t\t \n\t\taria-hidden=\"true\"><\/span>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\n\t\t\t<div\n\t\t\t\tclass=\"sow-accordion-panel-content\"\n\t\t\t\trole=\"region\"\n\t\t\t\taria-labelledby=\"accordion-label-multiple-gfur-components\"\n\t\t\t\tid=\"accordion-content-multiple-gfur-components\"\n\t\t\t\tstyle=\"display: none;\"\t\t\t>\n\t\t\t\t<div class=\"sow-accordion-panel-border\">\n\t\t\t\t\t<p>Often times we need fur with both, very short and very long hair on different parts of the character. Imagine a mane of a lion or a deer. To achieve good visuals, we need certain amount of gFur shells or layers. On the other hand, the more fur layers we have, the higher is the performance hit.<\/p>\n<p>So when dealing with both short and long fur on a single character we may first cover the character in short hair with only a few layers. Then we create a new \u201cGrow Mesh\u201d which only covers the parts of the character where we want to use long fur. For this new \u201cGrow Mesh\u201d we need separate set of \u201cSpline Guides\u201d or \u201cMesh Guides\u201d.<\/p>\n<p>We could go one step further and actually remove the parts of the mesh from the short fur where we will be growing the long fur. But because short fur is using only a few layers, this may not be worth the extra work involved.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t<div class=\"sow-accordion-panel\"\n\t\t\t data-anchor=\"%e2%80%9cbase-mesh%e2%80%9d-and-%e2%80%9cgrow-mesh%e2%80%9d\">\n\t\t\t\t<div class=\"sow-accordion-panel-header-container\" role=\"heading\" aria-level=\"2\">\n\t\t\t\t\t<div class=\"sow-accordion-panel-header\" tabindex=\"0\" role=\"button\" id=\"accordion-label-%e2%80%9cbase-mesh%e2%80%9d-and-%e2%80%9cgrow-mesh%e2%80%9d\" aria-controls=\"accordion-content-%e2%80%9cbase-mesh%e2%80%9d-and-%e2%80%9cgrow-mesh%e2%80%9d\" aria-expanded=\"false\">\n\t\t\t\t\t\t<div class=\"sow-accordion-title sow-accordion-title-icon-left\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\u201cBase Mesh\u201d and \u201cGrow Mesh\u201d\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"sow-accordion-open-close-button\">\n\t\t\t\t\t\t\t<div class=\"sow-accordion-open-button\">\n\t\t\t\t\t\t\t\t<span class=\"sow-icon-ionicons\" data-sow-icon=\"&#xf218;\"\n\t\t \n\t\taria-hidden=\"true\"><\/span>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"sow-accordion-close-button\">\n\t\t\t\t\t\t\t\t<span class=\"sow-icon-ionicons\" data-sow-icon=\"&#xf209;\"\n\t\t \n\t\taria-hidden=\"true\"><\/span>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\n\t\t\t<div\n\t\t\t\tclass=\"sow-accordion-panel-content\"\n\t\t\t\trole=\"region\"\n\t\t\t\taria-labelledby=\"accordion-label-%e2%80%9cbase-mesh%e2%80%9d-and-%e2%80%9cgrow-mesh%e2%80%9d\"\n\t\t\t\tid=\"accordion-content-%e2%80%9cbase-mesh%e2%80%9d-and-%e2%80%9cgrow-mesh%e2%80%9d\"\n\t\t\t\tstyle=\"display: none;\"\t\t\t>\n\t\t\t\t<div class=\"sow-accordion-panel-border\">\n\t\t\t\t\t<p>While we could cover the whole character with fur, including for example the tongue and teeth and then remove the fur on those parts via \u201cBlend Mask\u201d (green channel texture specifically), it\u2019s practical and faster to have those parts separated into a \u201cBase Mesh\u201d. \u201cGrow Mesh\u201d then contains parts that will be covered in fur.<\/p>\n<p>There is a caveat \u2013 it\u2019s usually problematic to detach parts like a nose or hoofs into the \u201cBase Mesh\u201d because most often we will get seams between the mesh without fur and mesh with fur. So for those it\u2019s better to keep them in the GrowMesh and remove the fur via \u201cBlend Mask\u201d.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t<div class=\"sow-accordion-panel\"\n\t\t\t data-anchor=\"lods\">\n\t\t\t\t<div class=\"sow-accordion-panel-header-container\" role=\"heading\" aria-level=\"2\">\n\t\t\t\t\t<div class=\"sow-accordion-panel-header\" tabindex=\"0\" role=\"button\" id=\"accordion-label-lods\" aria-controls=\"accordion-content-lods\" aria-expanded=\"false\">\n\t\t\t\t\t\t<div class=\"sow-accordion-title sow-accordion-title-icon-left\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tLODs\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"sow-accordion-open-close-button\">\n\t\t\t\t\t\t\t<div class=\"sow-accordion-open-button\">\n\t\t\t\t\t\t\t\t<span class=\"sow-icon-ionicons\" data-sow-icon=\"&#xf218;\"\n\t\t \n\t\taria-hidden=\"true\"><\/span>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"sow-accordion-close-button\">\n\t\t\t\t\t\t\t\t<span class=\"sow-icon-ionicons\" data-sow-icon=\"&#xf209;\"\n\t\t \n\t\taria-hidden=\"true\"><\/span>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\n\t\t\t<div\n\t\t\t\tclass=\"sow-accordion-panel-content\"\n\t\t\t\trole=\"region\"\n\t\t\t\taria-labelledby=\"accordion-label-lods\"\n\t\t\t\tid=\"accordion-content-lods\"\n\t\t\t\tstyle=\"display: none;\"\t\t\t>\n\t\t\t\t<div class=\"sow-accordion-panel-border\">\n\t\t\t\t\tThere are two parts, or two different optimization techniques that can be used in the LOD system. The first makes use of Unreal Engine LOD system and the other one uses gFur layer (shell) removal for LODs. We can use these separately or both at the same time. LODs are quite powerful optimization technique which involves some work and setup to work correctly and therefore we will talk about them in a separate guide.\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t<div class=\"sow-accordion-panel\"\n\t\t\t data-anchor=\"bias-parameter\">\n\t\t\t\t<div class=\"sow-accordion-panel-header-container\" role=\"heading\" aria-level=\"2\">\n\t\t\t\t\t<div class=\"sow-accordion-panel-header\" tabindex=\"0\" role=\"button\" id=\"accordion-label-bias-parameter\" aria-controls=\"accordion-content-bias-parameter\" aria-expanded=\"false\">\n\t\t\t\t\t\t<div class=\"sow-accordion-title sow-accordion-title-icon-left\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tBias parameter\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"sow-accordion-open-close-button\">\n\t\t\t\t\t\t\t<div class=\"sow-accordion-open-button\">\n\t\t\t\t\t\t\t\t<span class=\"sow-icon-ionicons\" data-sow-icon=\"&#xf218;\"\n\t\t \n\t\taria-hidden=\"true\"><\/span>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"sow-accordion-close-button\">\n\t\t\t\t\t\t\t\t<span class=\"sow-icon-ionicons\" data-sow-icon=\"&#xf209;\"\n\t\t \n\t\taria-hidden=\"true\"><\/span>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\n\t\t\t<div\n\t\t\t\tclass=\"sow-accordion-panel-content\"\n\t\t\t\trole=\"region\"\n\t\t\t\taria-labelledby=\"accordion-label-bias-parameter\"\n\t\t\t\tid=\"accordion-content-bias-parameter\"\n\t\t\t\tstyle=\"display: none;\"\t\t\t>\n\t\t\t\t<div class=\"sow-accordion-panel-border\">\n\t\t\t\t\t<p>Bias parameter may help optimize the performance without affecting the visuals much. By default the fur layers or shells are generated linearly along the length of fur hairs. Quite often the fur is long enough for fur tip to actually occlude the root of the fur hair. This is a good opportunity to make use of the \u201cBias\u201d parameter. Bias will push the fur layers more towards the fur tip, making layers more sparse at the roots and more dense at fur tip. Default value 1.0 is already pushing the shells a bit more towards the tip. Zero would be the linear distribution. Using too large Bias will lead to visual issues at the fur root. So as with many options, experimenting is necessary to find the right balance.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t<div class=\"sow-accordion-panel\"\n\t\t\t data-anchor=\"noise-parameter\">\n\t\t\t\t<div class=\"sow-accordion-panel-header-container\" role=\"heading\" aria-level=\"2\">\n\t\t\t\t\t<div class=\"sow-accordion-panel-header\" tabindex=\"0\" role=\"button\" id=\"accordion-label-noise-parameter\" aria-controls=\"accordion-content-noise-parameter\" aria-expanded=\"false\">\n\t\t\t\t\t\t<div class=\"sow-accordion-title sow-accordion-title-icon-left\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoise parameter\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"sow-accordion-open-close-button\">\n\t\t\t\t\t\t\t<div class=\"sow-accordion-open-button\">\n\t\t\t\t\t\t\t\t<span class=\"sow-icon-ionicons\" data-sow-icon=\"&#xf218;\"\n\t\t \n\t\taria-hidden=\"true\"><\/span>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"sow-accordion-close-button\">\n\t\t\t\t\t\t\t\t<span class=\"sow-icon-ionicons\" data-sow-icon=\"&#xf209;\"\n\t\t \n\t\taria-hidden=\"true\"><\/span>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\n\t\t\t<div\n\t\t\t\tclass=\"sow-accordion-panel-content\"\n\t\t\t\trole=\"region\"\n\t\t\t\taria-labelledby=\"accordion-label-noise-parameter\"\n\t\t\t\tid=\"accordion-content-noise-parameter\"\n\t\t\t\tstyle=\"display: none;\"\t\t\t>\n\t\t\t\t<div class=\"sow-accordion-panel-border\">\n\t\t\t\t\tIf performance is crucial and too few fur layers have to be used, and certain type of stylization is not an issue, the \u201cNoise\u201d parameter can help to break up the too obvious shell slices. Together with \u201cBias\u201d parameter it should be possible to achieve a working and performant compromise. \u201cNoise\u201d parameter may be a stylistic choice even if performance is not such an issue.\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/div>\n<\/div>\n<\/div><\/div><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Optimization tips In this guide, we will have a look at some optimization techniques that can be used with gFur.<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"ngg_post_thumbnail":0,"footnotes":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.9.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Optimization tips - GiM<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/gim.studio\/animalia\/optimization-tips\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Optimization tips - GiM\" \/>\n<meta property=\"og:description\" content=\"Optimization tips In this guide, we will have a look at some optimization techniques that can be used with gFur.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/gim.studio\/animalia\/optimization-tips\/\" \/>\n<meta property=\"og:site_name\" content=\"GiM\" \/>\n<meta property=\"article:modified_time\" content=\"2020-10-01T20:06:15+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/gim.studio\/animalia\/optimization-tips\/\",\"url\":\"https:\/\/gim.studio\/animalia\/optimization-tips\/\",\"name\":\"Optimization tips - GiM\",\"isPartOf\":{\"@id\":\"https:\/\/gim.studio\/animalia\/#website\"},\"datePublished\":\"2020-10-01T14:09:46+00:00\",\"dateModified\":\"2020-10-01T20:06:15+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/gim.studio\/animalia\/optimization-tips\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/gim.studio\/animalia\/optimization-tips\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/gim.studio\/animalia\/optimization-tips\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/gim.studio\/animalia\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Optimization tips\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/gim.studio\/animalia\/#website\",\"url\":\"https:\/\/gim.studio\/animalia\/\",\"name\":\"GiM\",\"description\":\"Games in Motion\",\"publisher\":{\"@id\":\"https:\/\/gim.studio\/animalia\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/gim.studio\/animalia\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/gim.studio\/animalia\/#organization\",\"name\":\"GiM\",\"url\":\"https:\/\/gim.studio\/animalia\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/gim.studio\/animalia\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/gim.studio\/wp-content\/uploads\/2020\/11\/gim.studio_256.png\",\"contentUrl\":\"https:\/\/gim.studio\/wp-content\/uploads\/2020\/11\/gim.studio_256.png\",\"width\":256,\"height\":256,\"caption\":\"GiM\"},\"image\":{\"@id\":\"https:\/\/gim.studio\/animalia\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Optimization tips - GiM","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/gim.studio\/animalia\/optimization-tips\/","og_locale":"en_US","og_type":"article","og_title":"Optimization tips - GiM","og_description":"Optimization tips In this guide, we will have a look at some optimization techniques that can be used with gFur.","og_url":"https:\/\/gim.studio\/animalia\/optimization-tips\/","og_site_name":"GiM","article_modified_time":"2020-10-01T20:06:15+00:00","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/gim.studio\/animalia\/optimization-tips\/","url":"https:\/\/gim.studio\/animalia\/optimization-tips\/","name":"Optimization tips - GiM","isPartOf":{"@id":"https:\/\/gim.studio\/animalia\/#website"},"datePublished":"2020-10-01T14:09:46+00:00","dateModified":"2020-10-01T20:06:15+00:00","breadcrumb":{"@id":"https:\/\/gim.studio\/animalia\/optimization-tips\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/gim.studio\/animalia\/optimization-tips\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/gim.studio\/animalia\/optimization-tips\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/gim.studio\/animalia\/"},{"@type":"ListItem","position":2,"name":"Optimization tips"}]},{"@type":"WebSite","@id":"https:\/\/gim.studio\/animalia\/#website","url":"https:\/\/gim.studio\/animalia\/","name":"GiM","description":"Games in Motion","publisher":{"@id":"https:\/\/gim.studio\/animalia\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/gim.studio\/animalia\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/gim.studio\/animalia\/#organization","name":"GiM","url":"https:\/\/gim.studio\/animalia\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/gim.studio\/animalia\/#\/schema\/logo\/image\/","url":"https:\/\/gim.studio\/wp-content\/uploads\/2020\/11\/gim.studio_256.png","contentUrl":"https:\/\/gim.studio\/wp-content\/uploads\/2020\/11\/gim.studio_256.png","width":256,"height":256,"caption":"GiM"},"image":{"@id":"https:\/\/gim.studio\/animalia\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/gim.studio\/animalia\/wp-json\/wp\/v2\/pages\/1119"}],"collection":[{"href":"https:\/\/gim.studio\/animalia\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/gim.studio\/animalia\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/gim.studio\/animalia\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/gim.studio\/animalia\/wp-json\/wp\/v2\/comments?post=1119"}],"version-history":[{"count":7,"href":"https:\/\/gim.studio\/animalia\/wp-json\/wp\/v2\/pages\/1119\/revisions"}],"predecessor-version":[{"id":1132,"href":"https:\/\/gim.studio\/animalia\/wp-json\/wp\/v2\/pages\/1119\/revisions\/1132"}],"wp:attachment":[{"href":"https:\/\/gim.studio\/animalia\/wp-json\/wp\/v2\/media?parent=1119"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}