{"id":86,"date":"2018-03-03T23:16:34","date_gmt":"2018-03-04T05:16:34","guid":{"rendered":"http:\/\/www.chroniclesoftright.com\/blog\/?p=86"},"modified":"2018-03-03T23:16:34","modified_gmt":"2018-03-04T05:16:34","slug":"continuing-rewrite","status":"publish","type":"post","link":"https:\/\/www.chroniclesoftright.com\/blog\/2018\/03\/03\/continuing-rewrite\/","title":{"rendered":"Continuing rewrite"},"content":{"rendered":"<p>I must say I&#8217;ve always liked <a href=\"http:\/\/threejs.org\" target=\"_blank\" rel=\"noopener\">THREE.js<\/a>.\u00a0 It&#8217;s clean and relatively straightforward, it just isn&#8217;t a game engine.\u00a0 And that&#8217;s actually okay because, ultimately, I want the control of writing the game engine part myself for Lyridia.\u00a0 I&#8217;ve been doing some basic testing with loading assets into a THREE.js scene and it&#8217;s not hard.\u00a0 One thing THREE.js lacks that <a href=\"http:\/\/babylonjs.com\" target=\"_blank\" rel=\"noopener\">BabylonJS<\/a> does well is exporting scenes from <a href=\"http:\/\/blender.org\" target=\"_blank\" rel=\"noopener\">Blender<\/a> and then loading them in the engine.\u00a0 I believe that with THREE.js I&#8217;m going to have to load individual assets then place them in the scene.\u00a0 This method should work fine but it means I will definitely have to create a scene\/level editor because I won&#8217;t be able to use Blender for this.\u00a0 If I can do this well it will be a great asset and should allow me to separate asset creation in Blender from scene creation in my tool.\u00a0 It will also allow me to ensure my scenes are as optimized as possible.\u00a0 For instance, if I have 200 copies of the same tree in a scene with each tree just scaled and\/or rotated, there&#8217;s no reason for the client (browser) to download the tree model 200 times, and if I&#8217;m writing this all from scratch I can make sure that&#8217;s the case.\u00a0 My next step is to load in a simple terrain and re-attach keyboard and mouse controls so that you can walk around in my new barren 3D world.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I must say I&#8217;ve always liked THREE.js.\u00a0 It&#8217;s clean and relatively straightforward, it just isn&#8217;t a game engine.\u00a0 And that&#8217;s actually okay because, ultimately, I want the control of writing the game engine part myself for Lyridia.\u00a0 I&#8217;ve been doing some basic testing with loading assets into a THREE.js scene and it&#8217;s not hard.\u00a0 One&hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-86","post","type-post","status-publish","format-standard","hentry","category-planning-and-development"],"_links":{"self":[{"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/posts\/86","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/comments?post=86"}],"version-history":[{"count":1,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/posts\/86\/revisions"}],"predecessor-version":[{"id":87,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/posts\/86\/revisions\/87"}],"wp:attachment":[{"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/media?parent=86"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/categories?post=86"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/tags?post=86"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}