This project is the server program where it receives data from a 3D scanner and dynamically updates a 3D mesh with Marching Cubes.
This program requires data to be sent via TCP, specifically point cloud data. For this purpose, a separate Swift application has been made, which sends point cloud data from the compatible iOS devices to this program. The Swift application can be found here: https://github.com/Reivaxmar/ios-point-cloud-sender.git.
This project is part of my 'Treball de Recerca', a project that must be done in Catalonia for graduating from high school.
Add screenshots...
Just some basic stuff:
- Modern C/C++ compiler
- CMake installed
- Compatibilty with OpenGL 4.5
Download a zip file or clone the repository:
> git clone \
https://github.com/Reivaxmar/Dynamic-Marching-Cubes.git \
Dynamic-Marching-Cubes
> cd Dynamic-Marching-CubesGreat! Now that the project is downloaded, it must be built:
> bash ./build.sh
> ./MarchingCubesNow the server and viewer should be up and running.
There is no need to have them installed, CMake will do it:
- Implement distance shader
- Implement Marching Cubes shader
- Fix Marching Cubes shader
- Implement GLwrap library
- Add network receiving
- Fix async and bugs on networking
- Update README.md
- Do iOS app
- Fix iOS app
- Merge iOS app repository
- Calibrate world position and sphere radius
- Add screenshots to README.md
- Explain algorithm in Algorithm.md (or add link to paper)
- Option for smooth shading (use gradients)
- Implement TSDF instead of the weird thing we have
- Add colors / textures