This week I continued my prototype build and worked on my prototype documentation and video for the submission next Monday. I am quite confident with my progress so far on the various deliverables and understand the rest of the work to be completed well - I have made myself a clear plan of how I am going to structure my documentation and what content I am going to include in my video.
This week we again did a report back and split into our groups afterwards. My team had a few questions regarding the documentation that we discussed with Lorna. As our team is all working on individual directions, we split off to continue our work after this. I continued to work on implementing my colour mixing code. I cam across an issue where mixed colours would flicker with the two individual primary colours, so I will ask Alison and Clay about this in the Friday workshop.
This week in the workshop I was having some issues with my colour mixing and got some help from Clay and Alison. In my void loop, I have an if statement to display colours when the colour pad is pressed and then separate if statements if two colours are pressed. My issue was that each time I wanted two colours to mix, it would do so, but also loop through and show both individual colours as well which created a flickering on the Unity display. I eventually discovered that it was doing so because I had never said that when two colours are pressed, the individual colours should also not be displayed. I ended up solving this by making each colour display if it was pressed and all other colours weren't pressed e.g. if the cap touch reading for red is > 80, every other colour has to be <80.
As I have already completed most of my core functionalities for my functional prototype, I focused on implementing all colours on the mat and making a small scale version of the mat to connect my capacitive touch sensors. I made the mat very simple as I know I will be making a full-scale, durable mat later in the semester. I simply printed out 8 circles for each of the primary colours and tones and stuck them onto a A4 piece of paper.
I used the cap touch example and also the Free Draw asset to create the drawing function:
Playground.arduino.cc. (2020). Arduino Playground - CapacitiveSensor. [online] Available at: https://playground.arduino.cc/Main/CapacitiveSensor/
Foolish Mortals. (2020). Free Draw. Available at: https://assetstore.unity.com/packages/tools/painting/free-draw-simple-drawing-on-sprites-2d-textures-113131.
Last week I had only completed colour mixing for red, yellow and blue so I implemented all 8 colours throughout the week. Currently, I simply have if statements in Arduino that write a number to the serial port and a separate number for each 2 colour combination. This meant I had to write a large number of If statements for only 2-colour combinations. As I know this method works, despite being very inefficient, I have decided to use it for this delivery and then investigate more efficient methods of colour mixing for the final prototype - I will try and do this by making a method that automatically mixes the selected colours.
I also decided to use capacitive touch sensors because the small scale prototype will require users to use their fingers to select colours. Capacitive touch is very accurate at detecting touch so is a good method of detecting when colours have been pressed. I am aiming to create a larger prototype for the final delivery using the mat from my visual prototype and instead use buttons or pressure sensors to detect when a colour is stepped on.
This week I also created my visual representation prototype so that I could accurately illustrate the intended form and interaction in my video. I did so using a Twister mat with my specific colours attached on top.
Twister has been one of the main inspirations for this concept and I really wanted to incorporate the fun and playful atmosphere that Twister creates into my own concept. The initial probe I conducted highlighted that young students highly value the theme of "play". Combined with the studio domain that calls for "playful" interactions, I aim to create playful experiences as much as possible with my prototype. I am also making the assumption that some users will recognize the similarities between Twister and Twisted, and in turn, immediatly assume that multiple users can interact with the prototype at once. This will help in aligning with the team domain in that collaboration will be facilitated through use.
Once I was happy with my prototype and couldn't find any issues with functionality, I got two of my family members to test it. I gave them a set of tasks to test how they would draw and make various colours. All functionality worked well and didn’t indicate any technical errors. The only feedback was that it was pretty rudimentary and could get boring. I think this was mainly because the testers were much older than the target audience and their interests were therefore very different to what I have designed for. Nevertheless, I will look into ways to make interaction more involved and exciting.
I received feedback from the proposal report this week which included a suggestion that I look into something that leverages and expands on the movement intention such as potentially incorporating time pressure/speed or having moving objects. As I received this feedback when I had already made significant progress on my prototype I haven't yet implemented any changes. I like the idea of moving drawings however, and this will definitely be something I will look into for future versions. I like the idea of the interactive wall "coming to life" with moving drawings e.g. Birds flying around the screen and plants moving in the wind. I will look into this more once I have finished this next delivery. This addition is supported by the prototype testing where a user said that the interaction seemed slightly rudimentary as it would add another level of interest and interaction. It would also align will with the broader studio context and make the concept for playful and novel. It does seem like it will be quite hard to implement so it will be explored more later in the project if time permits.
The progress made this week has made me confident for the prototype submission next week. The coding issue was leading to quite a lot of frustration so it is a big relief to have fixed that issue. This minor obstacle helped me to develop better work strategies however, as I recognized that I needed tutor help and moved on to the documentation until I could receive assistance in the workshop. In doing so, I saved myself a lot of time that I could have spent stressing unnecessarily about the issue, and instead solved the problem efficiently. When the development starts getting more intense towards the end of the semester, this is definitely something I need to keep in mind to save myself unnecessary frustration.
The progress I have made this week has also been very rewarding as I am now seeing how my physical prototype really reflects the desired outcomes and broader studio context. The prototype certainly creates a playful experience, and provides open-ended interaction, both focal points of my inquiry. My family members who tested it also said that it was a new and interesting type of technology which supports that it provides "novel" interaction - another great achievement in aligning well with the studio domain. Overall I can see my prototype aligning well with the studio domain, team theme and team domain which I consider a great success.
Over the next week I will finish the final element of my prototype (implementing the changes to fix the glitch), finish off my documentation and make my demonstration video.