{"id":1908,"date":"2015-11-15T22:36:22","date_gmt":"2015-11-15T22:36:22","guid":{"rendered":"http:\/\/phoenixgamedevelopment.com\/blog\/?p=1908"},"modified":"2015-11-17T19:07:35","modified_gmt":"2015-11-17T19:07:35","slug":"p-152-virtual-world-concept-update-68-chunked-levels-of-detail-using-quad-trees-part-36-2","status":"publish","type":"post","link":"https:\/\/phoenixgamedevelopment.com\/blog\/p-152-virtual-world-concept-update-68-chunked-levels-of-detail-using-quad-trees-part-36-2\/","title":{"rendered":"P-152: Virtual World Concept Update 69: Chunked Levels of Detail Using Quad Trees Part 37"},"content":{"rendered":"<p>I believe my hypothesis is correct, in that the issues I am having are with the indexing of the verts as they are being loaded into and out of the quad tree.<\/p>\n<p>I have made some progress in solving\u00a0these issues, as can be seen in the below screenshots.\u00a0However, there are still some issues with vertices being placed incorrectly.<\/p>\n<p>At higher resolutions, the problem reoccurs, with visible distortion in the spherical terrain. Verts are either being rendered in the wrong order, or several tiers are still being rendered at once.<\/p>\n<p>I am confident that this is a fixable problem, but I will need to do more extensive debugging to solve it. I have written some code to save a list of the vertices to a file at several places in the code: At the beginning, when the vertices are first generated, When the vertices are loaded into the quad tree, and at the end, when the renderlist is populated.<\/p>\n<p>I can now compare them with <a href=\"http:\/\/winmerge.org\/?lang=en\">WinMerge<\/a>, a very useful dif tool for comparing multiple files.<\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment405-Nov.-13-22.31.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-1907\" src=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment405-Nov.-13-22.31-300x233.jpg\" alt=\"PhoenixGameDevelopment405 Nov. 13 22.31\" width=\"300\" height=\"233\" srcset=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment405-Nov.-13-22.31-300x233.jpg 300w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment405-Nov.-13-22.31-1024x794.jpg 1024w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment405-Nov.-13-22.31.jpg 1040w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment407-Nov.-14-01.00.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-1906\" src=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment407-Nov.-14-01.00-300x233.jpg\" alt=\"PhoenixGameDevelopment407 Nov. 14 01.00\" width=\"300\" height=\"233\" srcset=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment407-Nov.-14-01.00-300x233.jpg 300w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment407-Nov.-14-01.00-1024x794.jpg 1024w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment407-Nov.-14-01.00.jpg 1040w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment409-Nov.-14-01.02.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-1905\" src=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment409-Nov.-14-01.02-300x233.jpg\" alt=\"PhoenixGameDevelopment409 Nov. 14 01.02\" width=\"300\" height=\"233\" srcset=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment409-Nov.-14-01.02-300x233.jpg 300w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment409-Nov.-14-01.02-1024x794.jpg 1024w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment409-Nov.-14-01.02.jpg 1040w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment410-Nov.-14-01.03.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-1904\" src=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment410-Nov.-14-01.03-300x233.jpg\" alt=\"PhoenixGameDevelopment410 Nov. 14 01.03\" width=\"300\" height=\"233\" srcset=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment410-Nov.-14-01.03-300x233.jpg 300w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment410-Nov.-14-01.03-1024x794.jpg 1024w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment410-Nov.-14-01.03.jpg 1040w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment412-Nov.-15-03.23.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-1903\" src=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment412-Nov.-15-03.23-300x233.jpg\" alt=\"PhoenixGameDevelopment412 Nov. 15 03.23\" width=\"300\" height=\"233\" srcset=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment412-Nov.-15-03.23-300x233.jpg 300w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment412-Nov.-15-03.23-1024x794.jpg 1024w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment412-Nov.-15-03.23.jpg 1040w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment414-Nov.-15-03.23.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-1902\" src=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment414-Nov.-15-03.23-300x233.jpg\" alt=\"PhoenixGameDevelopment414 Nov. 15 03.23\" width=\"300\" height=\"233\" srcset=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment414-Nov.-15-03.23-300x233.jpg 300w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment414-Nov.-15-03.23-1024x794.jpg 1024w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment414-Nov.-15-03.23.jpg 1040w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment415-Nov.-15-03.23.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-1901\" src=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment415-Nov.-15-03.23-300x233.jpg\" alt=\"PhoenixGameDevelopment415 Nov. 15 03.23\" width=\"300\" height=\"233\" srcset=\"https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment415-Nov.-15-03.23-300x233.jpg 300w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment415-Nov.-15-03.23-1024x794.jpg 1024w, https:\/\/phoenixgamedevelopment.com\/blog\/wp-content\/uploads\/2015\/11\/PhoenixGameDevelopment415-Nov.-15-03.23.jpg 1040w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I believe my hypothesis is correct, in that the issues I am having are with the indexing of the verts as they are being loaded into and out of the quad tree. I have made some progress in solving\u00a0these issues, as can be seen in the below screenshots.\u00a0However, there are still some issues with vertices [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,10,11],"tags":[],"class_list":["post-1908","post","type-post","status-publish","format-standard","hentry","category-astral-realms","category-software-and-games","category-spiritus-astrum","has-post-title","has-post-date","has-post-category","has-post-tag","has-post-comment","has-post-author",""],"aioseo_notices":[],"builder_content":"","_links":{"self":[{"href":"https:\/\/phoenixgamedevelopment.com\/blog\/wp-json\/wp\/v2\/posts\/1908"}],"collection":[{"href":"https:\/\/phoenixgamedevelopment.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/phoenixgamedevelopment.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/phoenixgamedevelopment.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/phoenixgamedevelopment.com\/blog\/wp-json\/wp\/v2\/comments?post=1908"}],"version-history":[{"count":5,"href":"https:\/\/phoenixgamedevelopment.com\/blog\/wp-json\/wp\/v2\/posts\/1908\/revisions"}],"predecessor-version":[{"id":1917,"href":"https:\/\/phoenixgamedevelopment.com\/blog\/wp-json\/wp\/v2\/posts\/1908\/revisions\/1917"}],"wp:attachment":[{"href":"https:\/\/phoenixgamedevelopment.com\/blog\/wp-json\/wp\/v2\/media?parent=1908"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/phoenixgamedevelopment.com\/blog\/wp-json\/wp\/v2\/categories?post=1908"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/phoenixgamedevelopment.com\/blog\/wp-json\/wp\/v2\/tags?post=1908"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}