Coder Social home page Coder Social logo

marching-cubes's Introduction

Checkout The Progression of The Project!

https://imgur.com/gallery/LxMHpKr

alt text

Marching-Cubes

I recently graduated with a Computer Engineering degree without a job lined up, so in my free time I sought out a neat project to work on and remembered how much I enjoyed learning some Unity basics over the last couple years. I like to use hobby projects to talk about during interviews and I hadn't worked on one in a couple of months so I started this project!

So I made this over the course of the last week with a fair bit of difficulty. Before this project I had only followed a few Brackey's tutorials here and there over the last year, but never really did anything of my own work. Not only that, but before this project, I didn't even know what a voxel is, what procedural terrain generation is, or the process of mesh creation - safe to say that I learned a whole lot.

After spending probably about 30 hours on it in total, it's not perfect, but my goal was to create a really easy to read and follow - and rather unoptimized - marching cubes project that I want to release for others to learn from. I based this heavily around Paul Bourke's work along with the Scrawk repo.

While attempting to learn and understand the algorithm along with c# and unity basics along the way, I really struggled to understand how Scrawk converted the C code to the Unity engine. I have a fair amount of experience with C/C++ so I understood Bourke's code, but really struggled with Scrawk's unity code. Maybe this is because I was a novice, and its actually very helpful for experienced Unity devs, but either way I found it difficult to follow.

To help out those who come after me, I decided to create this project with readability in mind. At the cost of a fair bit of optimization, I believe that this code is pretty readable with comments preceding almost every line to explain variables, classes, and functions. In the future I plan to optimize the crap out of this project and hopefully either set up the "Job System" that I keep hearing about, or set up some threads to decrease some of the CPU load.

Thanks for checking it out!

marching-cubes's People

Contributors

millerc3 avatar

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.