Consequently, there are 256 such groups per chunk. In the new data structure, the chunk of 32 x 32 x 16 voxels is furthermore subdivided into groups of 4 x 4 x 4 voxels. Before showing the benchmarking results, we explain the new data structure which gets along without a hash table. We can't know without benchmarking and so we did. One might argue that consecutive accesses most often access the same chunk and then the branch predictor is right most of the time. For the first reason this less clear-cut. People tend to agree that the second reason is indeed a problem. Second, if the accessed chunk is of the second type and therefore uses a hash table, then a hash has to be calculated. First, for every access to some voxel data there's a branch checking for the chunk type. However, the previous implementation wasn't very efficient because of two reasons. The first documented waterfall in Veloren! This type was used if the second type couldn't save a considerable amount of memory anymore, because of too many deviations from the default. The third type was a chunk that contains arbitrary voxels, stored in an array of length 32 x 32 x 16. The motivation for storing only the deviations was to save memory. Those deviations from the default voxel were stored in a hash table. The second type was a chunk that mostly contains copies of one default voxel but is also sparsely filled with different voxels. This type was for example used if the chunk consisted solely of air. The first type was a chunk that only contains copies of one voxel. Previously, there were three types of chunks. This holds true for both the old and the new data structure, both of which we'll now explain. All of the terrain is stored in a three-dimensional regular grid of such chunks. A chunk in Veloren is an arrangement of voxels which has an area of 32 by 32 voxels and is 16 voxels in height. ![]() The debug work on the river systems New Chunk Data Structure week, implemented a new chunk data structure. has worked on improving the way we go about testing, and how we can improve our changelog. has been continuing work on the auth side and has just started working on account management. There is a lot to fiddle around with to make them feel natural. Development Contributor has been continuing work on lakes and rivers. However, this roadmap will provide us with the long-term vision we need to drive this project forward with purpose and clarity. That's not to say that this roadmap will be set in stone - as a community-driven project, new ideas will inevitably come along to replace old ones. We'll be talking to the community to gather as many ideas as possible, then we'll assemble them into a long-term plan that takes us from where we are now to a 1.0 release. Throughout the next fortnight, we'll be looking to the future to plan a long-term roadmap for the project. Starting this week, we intend to change that. ![]() In short, we've lacked a long-term vision for Veloren. As of yet, we've avoiding planning more than one release ahead. This partly stems from Veloren's origins as a clone, but it also stems from our open-ended development model. It's not uncommon for us to find ourselves explaining what Veloren isn't rather than what it is. That said, it's become clear to us that Veloren needs a stronger vision. ![]() Be it the community we've grown, the things we've learned, the artwork we've created, the engine we've built, or the ideas we've shared - it's clear to us that the potential for this project is unbounded. ![]() For us, without a shadow of a doubt, the answer is a decisive "no". Many have asked whether Cube World's imminent release will mean the end for Veloren. Being fans of Cube World, we're all excited to play it - I'm sure it'll halt Veloren's development for at least a few days while we enjoy it. Last week, the developer of Cube World, Wollay, broke his silence to announce a new Cube World release. Throughout Veloren's development, it has become clear to us that there are many aspects of Cube World that we feel dissatisfied with, and that there are many ideas we'd like to experiment with that Cube World does not explore. If you were to take a peek at the git history of the engine, you will find that, fittingly, 'Clone World' was the preliminary name we used for the project. We make no secret about this, and it's very clear that Cube World is Veloren's primary influence. Thanks to all of the contributors this week, and The Future of Veloren by started life as a Cube World clone.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |