⚫️ This app is currently under development functions may run into issues, feel free to update issues in repo
⚫️ The documentation is still work in progress
⚫️ Talk about functions first then the problems encounter.
Once you turn on this software on your mobile devices (phones, or tablets), you will be asked to login to your Google account. Once you're logged in, you will be landing the main view of the app. On the bottom there's 4 buttons to switch around the 4 different functions of the app: Scan, Gallery, Map, and Setting. They are placed in the potential usage order. Once you scan, you are able to see all your spatial video in the gallery view. If you want to share your spatial video to the world, you can add them to the map and also view other's spatial video on the map. Furthermore, if you're more interested in trading your assets you can also put the video on bid.
1️⃣ Scan Video Capure
📀 Code Here
In this view you are able to record vidoes in 3D - sptial video. In the current version,only static 3D models are captured. The animating 3D models will be updated.
2️⃣ Model View
📀 Code Here In this view you can view the model you just created and be able to change its texture with the AI integration.
2️⃣ Gallery View
📀 Code Here
In this view, you are able to view all spatial video you have recorded in the past and also change its texture with ai.
3️⃣ Map View
📀 Code Here
Here you can view all the shared spatial video by others based on the geolocation of the videos created. If you want, there's also an option to trade (sell and buy other's) geolocational data or sell it as motion data for VR machine learning.
4️⃣ Setting View
📀 Code here
This page shows all settings related to your google account and you can also make changes here. By signing into Google, you already create an account in this app.
- Functionality and UI is comletely different. I should not try to code them at the same time.
- I really enjoy the coding sessions with professor John Henry. I feel like when I'm coiding on my own and encounter an issue. I usually kept looking at it and keep thinking there's someting wrong with this. However, in the offic hour, when Professor JohnHenry looks at it, he can identify that it is a structue and communication problem between my files. I find that extremely useful.
- 3D is hard. The way apple complie 3d object is very different than I used to work with, so even a little thing as assigning texture can be extremely complicated and indirect. This is my first time writing a pretty low level (close to backend code) this makes it very hard when I need to declare many detail settings. When the project gets larger, it is very hard to keep on track.
1. Scan and transfer Object
trying to sync up all the obj across the platform has been quite complicated because the the project is set up with multiple struct hierarchy. Professor John Henry helped me figured it out how to pass it from the scan to view model struct.
2. Complie texture with mld and mtl texture
This is where I spent the most time. Once I was able to pass the 3d model to viewing port, I realized the model doesn't have a texture. At first I thought it is because I didn't assign texture to it but later figure out that textue files are pretty messy
3. swift doesn't read pooint cloud files
3. Sync with Firebase
1- Map View Call Out**
2- 3D model scan to point cloud**