Vraag het de ontwikkelaar, Vol. 14, Nintendo Sound Clock: Alarmo – Hoofdstuk 2
28-10-2024
Sommige afbeeldingen en video's in de tekst zijn gemaakt tijdens de ontwikkeling.
De inhoud van dit artikel is oorspronkelijk gepubliceerd in het Japans.
Alle afbeeldingen zijn van de Japanse versie van dit product. Nintendo Sound Clock: Alarmo is verkrijgbaar in het Nederlands.
Hoofdstuk 2: De uitdagingen van cross-functionele ontwikkeling
Voor dit project hebben software- en hardware-ontwikkelaars als een team samengewerkt. Komen dit soort samenwerkingen vaker voor?
Tamori:
Het is niet gebruikelijk dat een hardware-ontwikkelaar de rol van regisseur aanneemt voor een product waarvoor ook software moet worden ontwikkeld, zoals Akama-san dit keer deed. Maar tijdens de ontwikkeling van Ring Fit Adventure (3) waren er ook wel verzoeken van de software-kant naar de hardware-kant, zoals: "We willen graag dit soort gameplay maken, maar kunnen jullie daarvoor geschikte hardware maken?". Hoewel sommige ideeën uiteindelijk niet voor het publiek worden uitgebracht, blijven de software- en hardware-teams samen aan producten werken.
(3) Nintendo Switch-software, uitgebracht in oktober 2019. Een fitnessavonturengame waarin spelers de Joy-Con-controllers aan de meegeleverde Ring-Con- en beenbandaccessoire kunnen bevestigen om het avontuur met lichaamsbewegingen te besturen.
Toch lijkt het ontwikkelproces me heel anders dan bij de ontwikkeling van gebruikelijke software.
Tamori:
Ja, echt heel anders. Naast de ontwikkelaars van hardware en software hadden we dit keer bovendien ontwikkelaars van het gebied waar beide samenkomen, namelijk de systeemsoftware. Deze drie afdelingen hebben vanaf het begin van de ontwikkeling hun krachten gebundeld.
De term 'ontwikkeling' beslaat verschillende terreinen: de hardware, dus de ontwikkeling van het fysieke product en de technologie ervan, de systeemsoftware, die de bewegingssensor en interne apparaten bestuurt, en de applicatiesoftware, die is vereist voor het weksignaal en de beeldweergave. Omdat de culturen tussen de verschillende afdelingen of posities nogal kunnen verschillen, was het vaak een uitdaging om als team de neuzen dezelfde kant op te krijgen.
Tot nu toe werkte jij aan softwareontwikkeling, Tamori-san, en jij aan hardware-ontwikkeling, Akama-san. Wat voor uitdagingen kwamen jullie vanuit jullie verschillende standpunten tegen bij het samen ontwikkelen van Alarmo?
Tamori:
Wanneer je alleen aan software werkt, kunnen ontwikkelaars zelfstandig prototypes testen, waardoor de ontwikkeling in zekere zin snel verloopt. Maar als er ook hardware bij ontwikkeld wordt, zoals in dit geval, moet je de hardware maken, de interne techniek en sensor controleren, de toepassing laten draaien, enzovoort, waardoor de ontwikkeling een stuk ingewikkelder wordt.
Als de systeemsoftware bijvoorbeeld de sensor niet correct aanstuurt, kan dit ervoor zorgen dat het wekgeluid van de software instabiel wordt. Maar in andere gevallen worden de gebrekkige reacties van de sensor veroorzaakt door een kleine wijziging in het hardwareontwerp, en dus niet door een probleem met de systeemsoftware.
Akama:
Nu je het zegt, ik weet nog dat ik worstelde toen een kleine verandering in de vorm rond de sensor ervoor zorgde dat deze minder goed reageerde. Ik dacht dat het door een fout in de systeemsoftware kwam, waardoor ik daarin tevergeefs naar de oorzaak zocht. Dat is vooral lastig als het niet je vakgebied is.
Tamori:
Alleen al het toevoegen van een onderdeel of veranderen van materiaal of vorm kan het gedrag van de sensor beïnvloeden. Omdat aanpassingen aan de systeemsoftware en de applicatie in overeenstemming moeten zijn met de hardware, moesten we er uiteindelijk voor zorgen dat we al onze processen met elkaar deelden en dat ze parallel aan elkaar liepen. Daardoor werd dit een compleet ander ontwikkelingsproces dan bij standaard games, wat het ontwikkelen van de software extra uitdagend maakte.
Tegelijkertijd bracht onze samenwerking als één team aan het complete ontwikkelingsproces voordelen met zich mee, van hardware tot systeemsoftware tot de applicatie. Daardoor konden we snel oorzaken van fouten opsporen en oplossen.
Het feit dat je tijdens de samenwerking op dat soort problemen stuitte, kun je andersom ook zien als bewijs dat alle afdelingen van essentieel belang waren voor het project. Akama-san, kun je enkele uitdagingen noemen waar jij voor kwam te staan?
Akama:
Wat de ontwikkeling van hardware betreft, was het een hele uitdaging om vanaf nul tot de specificaties te komen. Bij de spelsystemen waar ik tot nu toe aan heb gewerkt, moesten we ons houden aan bepaalde regels, zoals de vorm van de hardware en het aantal knoppen. Maar omdat er dit keer geen sprake was van een spelsysteem, waren dat soort regels er niet. Het was best uitdagend om zonder criteria tot de beste specificaties te komen, zoals hoeveel knoppen en wat voor soorten knoppen er nodig waren.
Wanneer ik luister naar de specifieke uitdagingen waarmee jullie, als ontwikkelaars van software en hardware, te maken kregen, merk ik wel dat elke afdeling zijn eigen cultuur heeft. Waren er weleens momenten waarop jullie elkaar in eerste instantie geheel niet begrepen?
Akama:
Eigenlijk was dat de hele tijd zo. (Lacht)
Tamori:
De kloof tussen onze culturen en persoonlijkheden leidde tot behoorlijk wat... laten we het onbegrip noemen. (Lacht) Als ontwerpers gebruiken Akama-san en ik bijvoorbeeld relatief abstracte bewoordingen. Maar vage termen zijn moeilijk te begrijpen voor systeemprogrammeurs en hardware-ingenieurs die gewend zijn om heel precies te werken. Als we ze bijvoorbeeld vroegen om het apparaat nog beter te laten reageren, wilden ze specifieke details weten, zoals: "Oké, hoeveel seconden is dan acceptabel?".
Akama:
Of als we zeiden, "Hij moet boing doen.", dan reageerden de programmeurs met: "Definieer boing."
Tamori:
Ik zag vanuit mijn ooghoeken hoe Akama-san door de programmeurs ondervraagd werd en dacht: Hoe kun je in hemelsnaam verwachten dat ze dat begrijpen, Akama-san? (Lacht) Ik had tijdens de ontwikkeling van games vergelijkbare ervaringen opgedaan, dus ik had al wel begrepen dat het geen goede aanpak is om in abstracte termen met programmeurs te spreken. Akama-san leek het echter voor het eerst mee te maken, dus hij heeft op dat gebied volgens mij wel een beetje geworsteld.
Akama:
Halverwege de ontwikkeling begon ik foto's en video's te maken van mezelf terwijl ik in slaap viel en wakker werd. Ik voegde er geluiden aan toe en gebruikte dit om uit te leggen dat er geluidseffecten moesten klinken als ik me uitrekte, en dat soort dingen.
Waren er tijdens de ontwikkeling ook momenten waarop de boel stil kwam te liggen vanwege misverstanden of verschillen in cultuur?
Tamori:
O ja. Meer dan eens. Omdat de ontwikkeling plaatsvond tijdens de COVID-19-pandemie, konden we niet direct met elkaar communiceren, en dat had een grote impact. Op een gegeven moment zaten we zo vast in de ontwikkeling van Alarmo dat we alles hebben uitgesteld en een week hebben ingepland om te kunnen maken wat we maar wilden.
Maar jullie werkten eigenlijk aan een wekker, toch? En iedereen zette dat gewoon aan de kant?
Tamori:
Precies. Om ieders begrip van de bewegingssensor op te frissen, zonder aan wekkers te hoeven denken, vroegen we leden van het hardware- en softwareteam om samen te werken en vrijelijk met ideeën te komen. Iemand kwam met het idee om de bewegingsdetectiefunctie te benutten voor het spel "Daruma-san ga koronda" (Daruma-san viel neer) (4), en iemand kwam met het idee om muziek te maken door je lichaam op de maat te bewegen. Het was fascinerend om te zien welke ideeën er allemaal uit dit proces voortkwamen.
Het was de eerste keer dat mensen van het hardware- en software-team zo nauw met elkaar samenwerkten aan iets anders dan een game of spelsysteem, dus de dingen liepen niet altijd zoals verwacht, en het werd soms wel even pittig. Maar door deze ervaring merkten we opnieuw hoe leuk het was om samen iets te ontwikkelen. Het bracht de teams nader tot elkaar.
(4) Een traditioneel spel dat populair is in Japan, vergelijkbaar met het spel Annamaria Koekoek. Eén speler is 'hem' en staat bij een boom of muur als basis. Andere spelers staan op een startlijn op korte afstand van 'hem'. Terwijl degene die 'hem' is, met de rug naar de andere spelers staat en "Daruma-san viel neer" zingt, bewegen de andere spelers zo dicht mogelijk naar 'hem' toe. Als degene die 'hem' is, zich omdraait en naar de andere spelers kijkt, moeten de andere spelers stil op hun plaats blijven. Als ze bewegen, worden ze door 'hem' gevangen. Als een speler 'hem' op de rug tikt zonder opgemerkt te worden, moeten de andere spelers zo ver mogelijk wegrennen voordat 'hem' tot tien heeft geteld. Daarna mag degene die 'hem' is, tien stappen zetten en wordt de eerste persoon binnen zijn bereik gevangen als de persoon die 'hem' als volgende zal worden. Als er niemand binnen het bereik wordt gevangen, is dezelfde persoon 'hem' opnieuw. Dit proces wordt zo vaak de spelers willen herhaald. (Dit is slechts een voorbeeld van hoe het gespeeld wordt. Er zijn verschillende varianten.)
Akama:
Uiteindelijk kwamen we door het verbeteren van de bewegingssensor dichter bij het eindproduct. Volgens mij heeft het echt geholpen dat we de tijd namen om vrijelijk verschillende prototypes te maken, omdat teamleden daardoor dichter bij elkaar kwamen op een manier die beroepen of posities oversteeg.