Over the Christmas break, I developed a new start scene for the game, including space for settings adjustments and onboarding. I have an audio manager that works between scenes, and a placeholder UI for participants to log in. There’s no demo of that this week, because it’s, well, necessary but a bit dull.
Instead, the most recent update video includes the work. I’ve been doing in the last week or so. I switched gears to work on the core gameplay – the actions and activities that will form the bulk of user interaction in this app.
New things this time:
- Lots of interaction and reactivity between game objects.
- Haptic feedback on grab events.
- Two new scenes — One for the first activity, which includes basic measurement of pH of the samples, and one for the more exact testing possible using a digital meter.
Scene 1 – Basic measurement
This scene Is the first activity scene, and follows on from the initial quiz in the introduction scene, which you will have seen already. The purpose of the scene is to introduce the learner to what the pH scale looks like, and how to interpret pH tests done via a testing strip.
With this on the next thing, I have sought to block out and get functionality working for the key activities in the scene. This means that at the moment they don’t have narrative structure or instruction. You can just do the process that will be required. I’m tackling it this way because I found that as I’ve been developing elements of the game, more things that need explanation, or there are more opportunities to feed the user tips. I feel at the moment that it will be easier to develop all of the activities and then go back and add in the narrative and other elements. This should reduce the need for re-recording or remaking. I think the initial plan and script is good, but it’s really hard to know precisely what you will need until you start making.
For this scene, the user has to sort the mixed up samples into three categories: acid, neutral and alkali. This is an intentionally simplified test, with the test strips, only turning one of three colours to determine which category they fit into. In this way, the strips are, like comparison with a colour chart, roughly sorting the samples into groups.
I made a decision to stick to 3 categories rather than using the full blend of colours in the pH scale, because it’s hard to judge exactly what some users will perceive as matching a colour chart in unnatural light and on a headset. Additionally, the pH scale itself poses accessibility challenges, particularly when distinguishing between acidic and neutral due to the blend from red to green.
This is why one of the features I’ve implemented is a tool tip to identify which colour is being shown on the test strip result pad.
Scene 2 – Precise measurement
For this scene, I modelled a digital pH meter in Blender. I chose to base it on a commercial product of a type that would be used in school and university lab settings – in this case, the Fisher Scientific Accumet AET15. I aim to create a stylised but accurate experience for my users. They should be able to conduct accurate pH testing after completing the activity.
The procedure flow for this scene includes similar actions to conducting the testing with strips. The major differences are that the user must clean the probe between uses, and the result is reflected in number form rather than as a colour change.
While working on this scene, I made a number of improvements to the object interactions, including changing the collider that the probe intersects with. This is now a thin box collider inside the vial, which means the user has to hit a smaller target. By default, previously, it was colliding based on the size of the bottle collider.
I also implemented clean and dirty states for the probe. The digital screen displays a text message on the screen when the device is dirty and can’t be used if the user tries to measure a second sample without cleaning it. The user must clean the probe by using the cleaning station. After a few seconds in there, the display changes to indicate that the probe is now clean.
I added delays to many of the reactive elements to make it more realistic. To illustrate that a device takes time to work, or a strip takes time to develop.
In this scene, I also have the pH measurement added to the sample labels when the readings have been taken. This enables the user to see the accurate values persistently, which is important for sorting and in the next scene, when they will then start to identify the samples using the pH values.
- Sample identification scene – there’s a list of the samples that should be there, and the learner will have to identify the samples using the pH values.
- Neutralisation scene – one of the samples is anomalous and the client needs to be notified that they need to rectify it.
- Then go back and add in all the narrative elements and timeline the activities.
- I still need to implement scoring and game management.
- I have captions working in single scenes but need to adapt this to work across scenes.