GithubHelp home page GithubHelp logo

voxel's Introduction

Voxel

First pass at Voxel Generation in Unity

Configuring the World

  • All configuration options, including chunk size, view distance, and such are located in the VoxelData class as constants.

voxel's People

Contributors

neuronine avatar

Watchers

 avatar

voxel's Issues

Use Object Pooling for Chunk Creation

Instead of creating a new Monobehavior for every chunk, and having to add components which is causing performance issues, we could instead move all the chunk data into its own object and then pool the game objects representing visible chunks. As new chunks are generated we would create a ChunkData object instead and they would be loaded into a pool of visible chunk game objects. This pool should be sized based on view distance, and be able to load and unload ChunkData as needed.

This will probably require a significant rewrite of the chunk loading code as nearly all of it depends on an array of chunk objects that grows over time.

Hitting Triangle/Vertice Limit in Mesh

It appears that there is a limit on the number of vertices or triangles that
can exist within a given mesh. This seems to only appear when a large enough
cave is generated within a chunk, causing extra vertices that need to be
drawn. Once the maximum value is reached, the rest of the mesh is not drawn
leaving blank spots at the top of the chunk.

Research needs to be done on if there is a way to either not draw caves that
the player cannot see, or if there is a way to expand the number of vertices
that can be placed within a given mesh. another option would be to use smaller
chunks and perhaps stack them on the y axis, though this would require a huge
rewrite.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.