Augmented Health (ADVANCED@MIT)

Final Images

Hannah Liu

Recovery Tree

Shivani Angappan

AR BLINDNESS TASKS SIMULATOR

Matthew Tengtrakool and Jayanth Uppaluri

Dev Notes - August 3 (Makeup post)

Alexander Ding

1. Tons of debugging. The MoreDetails page is pretty inconsistent. Sometimes the nutrition gets transmitted perfectly and it works out well. Other times it just breaks. The app behaves differently on different machines, and the Sliders (objects controlling the animation of pages) do not work out too well. Long story short, I got everything fixed. The issues are mostly concurrency-related. I almost ended up using mutexes, but I managed to reorganize the code structure so that the order of events happening doesn't matter anymore. Also, there was an issue with list handling. Fixed. 

And that's it. 

PopUp Menu Design

Alexander Ding

After a quick (3 hours spent) sketch of the menu that pops up after a barcode is scanned, we're currently working to integrate this Adobe Illustrator design into Unity. 

Also. Found a plugin in Unity that scans barcode, but we haven't been able to get it working. https://github.com/kefniark/UnityBarcodeScanner

Dev Notes - July 28

Alexander Ding

1. Well the API is dead (for today at least). It limits the daily access limit to 50 UPC lookups, so it's not going to work in intensive development. Decided to host a local server responding with mockup data previously retrieved instead. The only problem is: whatever UPC number you send to the server, it returns the same data. But it's good enough for development. 

2. Currently, we can spawn the PopUps with a single call to a function in any location in space with any rotation (adjusting itself according to the data retrieved from the server). This should be quite powerful and will get us ready for the next stage, where we turn to point-testing barcodes in a 3D space. I still need to find a free working barcode scanner API that works in Unity. 

3. I was able to get Matthew's plugin working on my Mac. Now the camera moves as the mouse moves. 

4. Need to figure out how to use camera feed as background. 

5. Going on in the long term, I'm more worried about how the UI is actually going to turn out. A Snapchat style design requires swiping, something that requires a bit of work, and the UI just has to look good in general. 

Dev Notes - July 29 (While It's Actually 30 Now)

Alexander Ding

1. I was able to generate a container + cubes dropping (SugarDisplay) in a certain place in space. Now I just have to make it happen in a position relative to the PopUp object, and certain parameters need to be computed automatically. 

2. Currently the accept button creates the SugarDisplay. The PopUp UI needs more updates to have another button to do this. 

3. As a more pressing matter, barcode scanners will need to be done (maybe) tomorrow. 

4. I was able to get the camera as the background. Built the app in my phone and it works very smoothly. Looking good here. 

5. Again, nothing much done with UIs. Let's just hope that Andrew gets it done. 

Dev Notes - July 31

Alexander Ding

1. Fixed some camera/scanner issue on MacOS. Scanner works well. 

2. We're now generating popups when a barcode is scanned at where it is. Also, the popups always face the user's camera, while their attached sugar displays (3D animation of sugar cubes falling) don't. 

3. I made some progress setting up a canvas so that it always fills up the screen. Now I can just put in any picture I like and have it as background/border on top of the camera background. On the same note, I did a quick sketch of a background (attached). 

4. Andrew designed a Logo-ish picture that includes an icon, which we can use as the app icon. 

5. Did some testing with the scanner part of the app on an iPhone. Really liked how it functions. 

TODOs

1. Design a colored version of the icon to use as app icon. 

2. Fix issue where barcodes can only be scanned when the phone is going landscape. 

2. Finish the ScanPageBG file. 

3. Have a mean of conveying certain tips to users (a small notification popup that simply appears on an unimportant corner). 

4. Work on the MoreInfo page's design and maybe implement it. 

5. Design a Dashboard. 

Dev Notes - August 1

Alexander Ding

Oh crap it's August now. 

1. Designed and implemented one of the MoreInfo pages (Calories). Most of my time is spent making it actually look decent (art/design isn't exactly my strong suit). The scripting hasn't been done (we're lacking a central control script), though I wrote (but didn't really test out) scripts controlling individual sections of the page. It just needs assembly. 

2. On that note, we'll need to create similar pages for the other nutrients, though it's mostly copy-pasting. Another unresolved issue is the switching between these pages. Swiping will be optimal, but it requires a bit of googling and testing to implement. Meanwhile, we'll also need to keep track of how the script manages all these different pages in runtime. 

3. Andrew will be implementing the Overview page for MoreInfo pages (shown in picture 2). It'll take quite a bit of work, though. 

4. It seems like doing a dashboard of personal nutritional intake is not going to be possible. Not much time is left. Tomorrow and bits of Thursday will be available to create more content, but I suspect that half of Thursday will be spent hooking up individual systems we created separately. 

5. Implemented dynamically generated pie graphs. Not too hard after all. 


Dev Notes - August 2

Alexander Ding

1. Just had a taste of the problem with integrating Andrew's tutorial. It is not created properly to adapt to different sizes of screens (especially his animation). I sent it to him for a redo. Running his tutorial on top of the main app, however, was very easy. 

2. Finished wiring up all the bits with the MoreInfo page. The data is distributed correctly, and the panels' animations work well. The swiping in/out animation is halfway done. We're currently able to detect swipes reliably, and the actual animation (code-controlled) is very smooth. It's just a matter of setting up the code so that the correct panels slide in at the right time. 

3. A huge amount of cleanup work is still to be done as we put things together. Tomorrow will mostly be that.