{"id":1184,"date":"2020-10-06T14:02:26","date_gmt":"2020-10-06T05:02:26","guid":{"rendered":"http:\/\/meeny.com\/?p=1184"},"modified":"2020-10-06T14:02:38","modified_gmt":"2020-10-06T05:02:38","slug":"ep02-load-3d-models-using-the-three-js-gltf-loader","status":"publish","type":"post","link":"https:\/\/meeny.com\/?p=1184","title":{"rendered":"ep02 &#8211; Load 3D models using the Three.js gltf loader"},"content":{"rendered":"\n<p>ep02 &#8211; Load 3D models using the Three.js gltf loader<\/p>\n\n\n\n<p>Load 3D models using the Three.js gltf loader \/ Responsive canvas \/ Change camera position related by mouse position<\/p>\n\n\n\n<figure class=\"wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"ep02 - Load 3D models using the Three.js gltf loader\" width=\"800\" height=\"450\" src=\"https:\/\/www.youtube.com\/embed\/Zy9_fBH2SqI?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">HTML &amp; script<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;!-- Real 3D with Webgl(Three.js) -->\n\n&lt;div class=\"section_threejs p-5 text-light\">\n  &lt;div class=\"container text-center bg-primary\" id=\"M3DDiv\">\n    &lt;h3 class=\"display-3 w100\" style=\"padding-top: 320px;\">&lt;span class=\"w500\">Real 3D&lt;\/span> with Webgl&lt;\/h3>\n    &lt;p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.&lt;\/p>\n  &lt;\/div>\n&lt;\/div>\n&lt;script type=\"module\">\n\n  import * as THREE from '.\/build\/three.module.js';\n\n  \/\/import { OrbitControls } from '.\/jsm\/controls\/OrbitControls.js';\n  import { GLTFLoader } from '.\/jsm\/loaders\/GLTFLoader.js';\n  import { RGBELoader } from '.\/jsm\/loaders\/RGBELoader.js';\n  import { RoughnessMipmapper } from '.\/jsm\/utils\/RoughnessMipmapper.js';\n\n  var controls;\n  var camera, scene, renderer;\n\n\n\n  var mouseX = 0, mouseY = 0;\n\n  var windowHalfX = window.innerWidth \/ 2;\n  var windowHalfY = window.innerHeight \/ 2;\n\n\n  const container = document.getElementById('M3DDiv');\n  let WIDTH = container.clientWidth;\n  let HEIGHT = container.clientHeight;\n\n  init();\n  animate();\n\n  function init() {\n\n    \/\/ container = document.createElement( 'div' );\n    \/\/ document.body.appendChild( container );\n\n    camera = new THREE.PerspectiveCamera( 50, window.innerWidth \/ window.innerHeight, 0.25, 3000 );\n    camera.position.set( 1, 3, 3);\n    camera.aspect = WIDTH \/ HEIGHT;\n    camera.updateProjectionMatrix();\n\n    scene = new THREE.Scene();\n    scene.background = new THREE.Color( 0xdeebed );\n    scene.add(camera);\n\n\n    \/\/LIGHT\n    var light = new THREE.DirectionalLight(0xdfebff, 1);\n    light.position.set(50,200,10);\n    light.position.multiplyScalar( 1.3 );\n    light.shadow.mapSize.width = 1024;\n    light.shadow.mapSize.height = 1024;\n    light.castShadow = true;\n    scene.add( light );\n\n\n\n    var light2 = new THREE.DirectionalLight( 0xffffff );\n    light2.position.set(1,1,1);\n    light2.castShadow = false;\n    scene.add( light2 );\n\n\n\n    var loader = new GLTFLoader().setPath( '.\/' );\n        loader.load( 'mountain.gltf', function ( gltf ) {\n\n          gltf.scene.traverse( function ( child ) {\n\n            if ( child.isMesh ) {\n\n              child.castShadow = true;\n              child.receiveShadow = true;\n              child.rotation.y = Math.PI \/ 3;\n\n              \/\/ TOFIX RoughnessMipmapper seems to be broken with WebGL 2.0\n              \/\/ roughnessMipmapper.generateMipmaps( child.material );\n\n            }\n\n          } );\n\n          scene.add( gltf.scene );\n\n          \/\/roughnessMipmapper.dispose();\n\n          animate();\n\n        } );\n\n\n\n\n    renderer = new THREE.WebGLRenderer( { antialias: true } );\n    renderer.setPixelRatio( window.devicePixelRatio );\n    renderer.setSize( WIDTH, HEIGHT );\n    renderer.toneMapping = THREE.ACESFilmicToneMapping;\n    renderer.toneMappingExposure = 1;\n    renderer.outputEncoding = THREE.sRGBEncoding;\n\n    renderer.shadowMap.enabled = true;\n    renderer.shadowMap.type = THREE.PCFSoftShadowMap;\n    \n       \n    container.appendChild( renderer.domElement );\n\n    document.addEventListener( 'mousemove', onDocumentMouseMove, false );\n    window.addEventListener( 'resize', onWindowResize, false );\n\n}\n\n  function onWindowResize() {\n\n    \/\/ windowHalfX = window.innerWidth \/ 2;\n    \/\/ windowHalfY = window.innerHeight \/ 2;\n\n    \/\/ camera.aspect = window.innerWidth \/ window.innerHeight;\n\n\n    let WIDTH = container.clientWidth;\n    let HEIGHT = container.clientHeight;\n    camera.aspect = WIDTH \/ HEIGHT;\n\n\n    camera.updateProjectionMatrix();\n\n    renderer.setSize( WIDTH, HEIGHT );\n    render();\n  }\n\n  function onDocumentMouseMove( event ) {\n\n    mouseX = ( event.clientX - windowHalfX ) \/ 2000;\n    mouseY = ( event.clientY - windowHalfY ) \/ 1500;\n\n  }\n\n\n\n\n\n  function animate() {\n\n    requestAnimationFrame( animate );\n    render();\n\n  }\n\n  function render() {\n\n      camera.position.x += ( mouseX - camera.position.x ) * .05;\n      camera.position.y += ( - mouseY - camera.position.y ) * .05 + 0.1;\n      camera.position.z += (mouseX - camera.position.z ) * 0.5 + 3;\n\n\n      camera.lookAt( scene.position );\n\n      renderer.render( scene, camera );\n\n}\n\n&lt;\/script><\/code><\/pre>\n\n\n\n<p><strong><em>gltf file<\/em><\/strong>\u00a0\u2013<a rel=\"noreferrer noopener\" href=\"https:\/\/blog.naver.com\/archyland\/222104996717\" target=\"_blank\">\u00a0https:\/\/blog.naver.com\/archyland\/222104996717<\/a><\/p>\n\n\n\n<p>Three.js \u2013\u00a0<a href=\"https:\/\/threejs.org\/\">https:\/\/threejs.org\/<\/a><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">episode &#8211; 01<\/h2>\n\n\n\n<figure class=\"wp-block-embed-wordpress wp-block-embed is-type-wp-embed is-provider-meeny\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"ROsrbXAi57\"><a href=\"https:\/\/meeny.com\/2020\/10\/02\/load-3d-models-using-the-three-js-gltf-loader\/\">Load 3D models using the Three.js gltf loader<\/a><\/blockquote><iframe title=\"&#8220;Load 3D models using the Three.js gltf loader&#8221; &#8212; Meeny\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" src=\"https:\/\/meeny.com\/2020\/10\/02\/load-3d-models-using-the-three-js-gltf-loader\/embed\/#?secret=ROsrbXAi57\" data-secret=\"ROsrbXAi57\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>ep02 &#8211; Load 3D models using the Three.js gltf loader Load 3D models using the Three.js gltf loader \/ Responsive<\/p>\n","protected":false},"author":1,"featured_media":1186,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"colormag_page_container_layout":"default_layout","colormag_page_sidebar_layout":"default_layout","footnotes":""},"categories":[62],"tags":[415,410,411,444,443,442,396,397,395,394,398,422,438,439,441,759],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>ep02 - Load 3D models using the Three.js gltf loader - Meeny<\/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:\/\/meeny.com\/?p=1184\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ep02 - Load 3D models using the Three.js gltf loader - Meeny\" \/>\n<meta property=\"og:description\" content=\"ep02 &#8211; Load 3D models using the Three.js gltf loader Load 3D models using the Three.js gltf loader \/ Responsive\" \/>\n<meta property=\"og:url\" content=\"https:\/\/meeny.com\/?p=1184\" \/>\n<meta property=\"og:site_name\" content=\"Meeny\" \/>\n<meta property=\"article:published_time\" content=\"2020-10-06T05:02:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-10-06T05:02:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/meeny.com\/wp-content\/uploads\/2020\/10\/webgl_t-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Meeny\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Meeny\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/meeny.com\/?p=1184#article\",\"isPartOf\":{\"@id\":\"https:\/\/meeny.com\/?p=1184\"},\"author\":{\"name\":\"Meeny\",\"@id\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/#\/schema\/person\/4b6b745d39f90b39161c79fe08a6feb9\"},\"headline\":\"ep02 &#8211; Load 3D models using the Three.js gltf loader\",\"datePublished\":\"2020-10-06T05:02:26+00:00\",\"dateModified\":\"2020-10-06T05:02:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/meeny.com\/?p=1184\"},\"wordCount\":68,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/#organization\"},\"image\":{\"@id\":\"https:\/\/meeny.com\/?p=1184#primaryimage\"},\"thumbnailUrl\":\"https:\/\/meeny.com\/wp-content\/uploads\/2020\/10\/webgl_t-1.png\",\"keywords\":[\"bootstrap\",\"bootstrap css\",\"bootstrap html\",\"bootstrap theme fonts\",\"Bootstrap4 primary color change\",\"Bootstrap4 theming\",\"css\",\"html\",\"html code\",\"html css\",\"javascript\",\"responsive design\",\"sticky-top\",\"template\",\"theming\",\"three.js\"],\"articleSection\":[\"HTML &amp; CSS\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/meeny.com\/?p=1184#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/meeny.com\/?p=1184\",\"url\":\"https:\/\/meeny.com\/?p=1184\",\"name\":\"ep02 - Load 3D models using the Three.js gltf loader - Meeny\",\"isPartOf\":{\"@id\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/meeny.com\/?p=1184#primaryimage\"},\"image\":{\"@id\":\"https:\/\/meeny.com\/?p=1184#primaryimage\"},\"thumbnailUrl\":\"https:\/\/meeny.com\/wp-content\/uploads\/2020\/10\/webgl_t-1.png\",\"datePublished\":\"2020-10-06T05:02:26+00:00\",\"dateModified\":\"2020-10-06T05:02:38+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/meeny.com\/?p=1184#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/meeny.com\/?p=1184\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/meeny.com\/?p=1184#primaryimage\",\"url\":\"https:\/\/meeny.com\/wp-content\/uploads\/2020\/10\/webgl_t-1.png\",\"contentUrl\":\"https:\/\/meeny.com\/wp-content\/uploads\/2020\/10\/webgl_t-1.png\",\"width\":1920,\"height\":1080,\"caption\":\"Load 3D models using the Three.js gltf loader\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/meeny.com\/?p=1184#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/meeny.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ep02 &#8211; Load 3D models using the Three.js gltf loader\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/#website\",\"url\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/\",\"name\":\"Meeny\",\"description\":\"Issues &amp; News\",\"publisher\":{\"@id\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/#organization\",\"name\":\"Meeny\",\"url\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/meeny.com\/wp-content\/uploads\/2020\/05\/LOGO_meeny_180.png\",\"contentUrl\":\"https:\/\/meeny.com\/wp-content\/uploads\/2020\/05\/LOGO_meeny_180.png\",\"width\":180,\"height\":41,\"caption\":\"Meeny\"},\"image\":{\"@id\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/#\/schema\/person\/4b6b745d39f90b39161c79fe08a6feb9\",\"name\":\"Meeny\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/meeny.com\/?tag=ios-13-4-5\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c64cfa5c72bf22b037e8dce05c95e373?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c64cfa5c72bf22b037e8dce05c95e373?s=96&d=mm&r=g\",\"caption\":\"Meeny\"},\"sameAs\":[\"http:\/\/blog.epart.kr\"],\"url\":\"https:\/\/meeny.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"ep02 - Load 3D models using the Three.js gltf loader - Meeny","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:\/\/meeny.com\/?p=1184","og_locale":"ko_KR","og_type":"article","og_title":"ep02 - Load 3D models using the Three.js gltf loader - Meeny","og_description":"ep02 &#8211; Load 3D models using the Three.js gltf loader Load 3D models using the Three.js gltf loader \/ Responsive","og_url":"https:\/\/meeny.com\/?p=1184","og_site_name":"Meeny","article_published_time":"2020-10-06T05:02:26+00:00","article_modified_time":"2020-10-06T05:02:38+00:00","og_image":[{"width":1920,"height":1080,"url":"https:\/\/meeny.com\/wp-content\/uploads\/2020\/10\/webgl_t-1.png","type":"image\/png"}],"author":"Meeny","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Meeny","Est. reading time":"2\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/meeny.com\/?p=1184#article","isPartOf":{"@id":"https:\/\/meeny.com\/?p=1184"},"author":{"name":"Meeny","@id":"https:\/\/meeny.com\/?tag=ios-13-4-5\/#\/schema\/person\/4b6b745d39f90b39161c79fe08a6feb9"},"headline":"ep02 &#8211; Load 3D models using the Three.js gltf loader","datePublished":"2020-10-06T05:02:26+00:00","dateModified":"2020-10-06T05:02:38+00:00","mainEntityOfPage":{"@id":"https:\/\/meeny.com\/?p=1184"},"wordCount":68,"commentCount":0,"publisher":{"@id":"https:\/\/meeny.com\/?tag=ios-13-4-5\/#organization"},"image":{"@id":"https:\/\/meeny.com\/?p=1184#primaryimage"},"thumbnailUrl":"https:\/\/meeny.com\/wp-content\/uploads\/2020\/10\/webgl_t-1.png","keywords":["bootstrap","bootstrap css","bootstrap html","bootstrap theme fonts","Bootstrap4 primary color change","Bootstrap4 theming","css","html","html code","html css","javascript","responsive design","sticky-top","template","theming","three.js"],"articleSection":["HTML &amp; CSS"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/meeny.com\/?p=1184#respond"]}]},{"@type":"WebPage","@id":"https:\/\/meeny.com\/?p=1184","url":"https:\/\/meeny.com\/?p=1184","name":"ep02 - Load 3D models using the Three.js gltf loader - Meeny","isPartOf":{"@id":"https:\/\/meeny.com\/?tag=ios-13-4-5\/#website"},"primaryImageOfPage":{"@id":"https:\/\/meeny.com\/?p=1184#primaryimage"},"image":{"@id":"https:\/\/meeny.com\/?p=1184#primaryimage"},"thumbnailUrl":"https:\/\/meeny.com\/wp-content\/uploads\/2020\/10\/webgl_t-1.png","datePublished":"2020-10-06T05:02:26+00:00","dateModified":"2020-10-06T05:02:38+00:00","breadcrumb":{"@id":"https:\/\/meeny.com\/?p=1184#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/meeny.com\/?p=1184"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/meeny.com\/?p=1184#primaryimage","url":"https:\/\/meeny.com\/wp-content\/uploads\/2020\/10\/webgl_t-1.png","contentUrl":"https:\/\/meeny.com\/wp-content\/uploads\/2020\/10\/webgl_t-1.png","width":1920,"height":1080,"caption":"Load 3D models using the Three.js gltf loader"},{"@type":"BreadcrumbList","@id":"https:\/\/meeny.com\/?p=1184#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/meeny.com\/"},{"@type":"ListItem","position":2,"name":"ep02 &#8211; Load 3D models using the Three.js gltf loader"}]},{"@type":"WebSite","@id":"https:\/\/meeny.com\/?tag=ios-13-4-5\/#website","url":"https:\/\/meeny.com\/?tag=ios-13-4-5\/","name":"Meeny","description":"Issues &amp; News","publisher":{"@id":"https:\/\/meeny.com\/?tag=ios-13-4-5\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/meeny.com\/?tag=ios-13-4-5\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/meeny.com\/?tag=ios-13-4-5\/#organization","name":"Meeny","url":"https:\/\/meeny.com\/?tag=ios-13-4-5\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/meeny.com\/?tag=ios-13-4-5\/#\/schema\/logo\/image\/","url":"https:\/\/meeny.com\/wp-content\/uploads\/2020\/05\/LOGO_meeny_180.png","contentUrl":"https:\/\/meeny.com\/wp-content\/uploads\/2020\/05\/LOGO_meeny_180.png","width":180,"height":41,"caption":"Meeny"},"image":{"@id":"https:\/\/meeny.com\/?tag=ios-13-4-5\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/meeny.com\/?tag=ios-13-4-5\/#\/schema\/person\/4b6b745d39f90b39161c79fe08a6feb9","name":"Meeny","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/meeny.com\/?tag=ios-13-4-5\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c64cfa5c72bf22b037e8dce05c95e373?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c64cfa5c72bf22b037e8dce05c95e373?s=96&d=mm&r=g","caption":"Meeny"},"sameAs":["http:\/\/blog.epart.kr"],"url":"https:\/\/meeny.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/meeny.com\/index.php?rest_route=\/wp\/v2\/posts\/1184"}],"collection":[{"href":"https:\/\/meeny.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/meeny.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/meeny.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/meeny.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1184"}],"version-history":[{"count":1,"href":"https:\/\/meeny.com\/index.php?rest_route=\/wp\/v2\/posts\/1184\/revisions"}],"predecessor-version":[{"id":1187,"href":"https:\/\/meeny.com\/index.php?rest_route=\/wp\/v2\/posts\/1184\/revisions\/1187"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/meeny.com\/index.php?rest_route=\/wp\/v2\/media\/1186"}],"wp:attachment":[{"href":"https:\/\/meeny.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1184"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/meeny.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1184"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/meeny.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1184"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}