Updated algorithms with normals and color assigment depending on material type. Currently working on Colission Detection in the Engine.(via Beelog)
In last 5 days since the update i have been working on Marching Cubes and Perlin Noise . Since i knew close to nothing about both 5 days ago the progress i have made being displayed at the screenshot in previous post made me quite satisfied.
This software is written in XNA 4.0 but is usable with both REACH and HiDef profiles. Marching Cubes implemented by me are using Perlin Noise in 3D to create the density for the volume that is later used in Marching Cubes. It is quite fast but i have some redundancy when it comes to computation, i could improve the way i “Scann” the Volumes Density to improve the speed and than create indexed Vertex Buffer to save some RAM.
Even tho there are things that could be updated and improved this is only a test case in order to learn how both work, it was not aimed at speed or RAM efficiency.
Once i polish this application i will provide a brief tutorial on both. Hopefully those will help individuals like me who are having troubles finding anything useful on the net that is not overcomplicated.
Well so far so good, i have a platform i want to work with and nice Framework. All this is quite superb but i need to set some goals, assume few things and set guidelines as what hardware i want to run it on (this has been partially set by choosing Xbox360 ). After a while i came up with few Specifications i would like to have.
- “Infinite” Terrain like in Minecraft but in all 3 Dimensions.
- More detailed terrain/ better textures
- using less than 500MB RAM
- smooth caves,overhangs and landscapes.
- Make it work on REACH profile in XNA Game Studio.
- Work till end of semester
- Finish as much as possible/ efficiency not top priority.
- Basic GUI or no GUI
- Very basic Physics and collision detections systems.
- Everything is written from 0, excluding XNA libraries.
- I have to have fun working on this.
- Educational Purpose.
- The more I learn the better.
- simplicity ,which means functions preform 1 action only. 2 actions 2 functions etc.
This list will probably grow or get changed while i work on the project but at least i have some guidelines as to how and what i want to create. I can`t be sidetracked especially when semester is very short. Later on I will be able to use this blog as a reference of my work.
Thanks For reading, i hope everyone will gain from this project along with me.
The project came about when I was informed of a Senior Design requirement. I was required to choose my own project and proceed from there.
Since at the time i would love to play around with Minecraft I decided to create Crafter, yes many haters would comment on this as a another clone but it is not meant to be one and it is to remain an educational experience.