MarmalAid : 3D Modeling with Integrated Q&A

  • marmalaid
  • marmalaid
  • marmalaid

As part of my research, I built a system that would allow inexperienced users to communicate and seek help, directly from a 3D modeling tool!

In my research I had heard time and time again how help-seeking for 3D modeling was a highly social process. Accordingly, I designed and built MarmalAid to investigate how social contextual Q&A might be embedded into 3D modeling tools. MarmalAid allows users to add comments and share their files for feedback through a simple and straightforwards process.

I implemented MarmalAid as a web application using Three.js and a Python-based server.

Although still a research prototype, MarmalAid is a fully-functional 3D modeling tool. Users use constructive solid geometry to combine 3D objects together in additive and subtractive ways.

Heuristic evaluations with pairs of help-giving and help-seeking users confirmed that the system works.

Users actually asked for even more social tools, such as real-time collaboration, mobile notifications and 2D sketching tools.

Marmalaid Ideation


Early ideation focused on three main concepts:

Help Recommender System: Novice users often had difficulties with terminology when describing their problems. This concept was to recommend help articles to a user by leveraging rich metadata from selections in a user's 3D workspace.

Printability Checker: Novice users often had difficulty understanding whether a given design could be 3D printed. This concept was for a type of automated pre-print checkup that would analyze a user's model geometry on the fly and identify problem areas.

3D Social Q&A: Novice users often had difficulty communicating design intent when seeking help and have limited access to true expertise. This concept was for a 3D modeling system that would allow a user to easily share files with embedded comments and questions.

After discussions with other researchers, I selected the 3D Social Q&A concept as it had the clearest research contribution and meshed best with my prior work.


Wireframe and aesthetic prototypes: Wireframes were constructed in Adobe Illustrator to help gather feedback from peers. Aesthetic prototypes of a few key views were also prepared. Feedback at this point influenced me to add media embedding and change how comments were positioned.

Early usability prototype: A paper prototype was constructed based on the wireframes that was then hallway tested. Feedback at this point caused me to redesign the menu elements as well as add a system to explicitly share the design with other users. Updated wireframes were then prepared and presented.

Feasibility prototype: A HTML/JS proof of concept of the CSG algorithm was also programmed.

Marmalaid Prototype
Marmalaid Build


I then implemented MarmalAid as a web application. As soon as was reasonably possible the design was hallway tested, and elements were iterated on throughout the implementation process. I quickly discovered that the menu design I had been using was frustrating to users, so I redesigned it in favor of a better one. Other changes included more iconography and more guidance throughout the sharing process.


I evaluated MarmalAid using heuristic evaluation following Nielsen's guidelines with 6 users. 3 users inexperienced with 3D modeling played the role of help-seekers, while 3 users experienced with 3D tools played the role of help-givers. The help-seekers were tasked to build an airplane, and to use MarmalAid’s tools to seek the assistance or advice of the help-givers who were playing the role of a more experienced friend. The task took 30 to 45 minutes, after which both participants filled completed a Heuristic evaluation. Both groups of participants were positive about the tools, with a help-giver saying:

This is much better than trying to figure out someone’s problems in a forum - way easier!

In fact, Participants requested more social features, including:

  • Instant notifications on their phone for when somebody has commented
  • The ability to see new comments in real-time
  • the ability to make and share 2D sketches in the comments to describe tricky problems