Evoluigi VR-sistemon por ke infanoj prototipu interagajn objektojn
februaro 2021
Superrigardo
Smart Codesign VR estas prototipa platformo por konstrui kaj provi interagajn «inteligentajn objektojn» en virtuala realo. Ludantoj elektas tri kartojn, po unu por medio, enigo kaj eligo, poste uzas korpajn movojn por difini, kiam objekto respondas kaj kion ĝi faras. Ili povas meti la finitan virtualan objekton en parkon kaj provi ĝian konduton.
La projekto baziĝas sur SNaP (The Smart Nature Protagonists), tabulludo evoluigita de i3Lab ĉe Politecnico di Milano. En SNaP infanoj kombinas kartojn por elpensi inteligentajn objektojn kaj priskribas ilin per frazo sur papero. Ĉi tiu projekto celis transformi tiujn priskribojn en virtualajn objektojn, kiujn infanoj povus kunmeti kaj kun kiuj ili povus interagi per siaj propraj movoj.
Ĝin projektis kaj realigis kvarpersona teamo kiel finan taskon de la kurso Advanced User Interfaces (studjaro 2020–21) ĉe la Politekniko de Milano. La antaŭviditaj uzantoj estas infanoj de 11 ĝis 13 jaroj, precipe infanoj kun neŭroevoluaj malordoj (NDD). Ĝi estis realigita por Oculus Quest 2 per Unity kaj C#, kaj atingis prototipon, kiu funkcias de komenco ĝis fino, de la elekto de kartoj ĝis la manipulado de la objekto en la parko.
SNaP, la tabulludo, kaj la premisoj de la projekto
Ludo, en kiu la infanoj estas la dezajnistoj
En SNaP du ĝis kvar infanoj rolas kiel «dezajnistoj», dum plenkreska gvidanto rolas kiel «urbestro». La urbestro prezentas mision, kaj la infanoj priparolas ideojn kaj kombinas kartojn por dezajni inteligentan objekton, kiu respondas al ĝi. La ludo celas evoluigi kreemon, kunlaboron kaj la kapablon esprimi ideojn. Oni ankaŭ konsideris uzon fare de infanoj kun neŭroevoluaj malordoj, sed ĉi tiu projekto ne taksis terapiajn aŭ edukajn efikojn.
Medio, enigo, eligo — tri specoj de kartoj
SNaP havas tri specojn de kartoj, ĉiu kun sia propra rolo.
Mediaj kartoj reprezentas la objekton inteligentigotan: arbon, benkon, balancilon, akvejon, ŝtonon, stratlampon, rubujon, biciklon, ponton, ŝtuparon aŭ lernejan sakon. Ili estas konataj objektoj kaj elementoj de parkoj kaj stratoj. La media karto difinas la objekton, kiu enhavos la enigajn kaj eligajn funkciojn.
Enigaj kartoj difinas, kion la objekto detektas aŭ al kio ĝi respondas, ekzemple butono, movo, tuŝo, distanco, temperaturo, humideco, heleco, koloro, sono, fajro, akvonivelo aŭ veterprognozo. Ili reprezentas la enigojn de la inteligenta objekto, analoge al sensiloj.
Eligaj kartoj difinas la respondon de la objekto: lumi, soni, vibri, moviĝi, montri, registri aŭ sendi informojn. Ili reprezentas ĝiajn eligajn funkciojn, analoge al aktuatoroj.
La media karto donas kuntekston al paro de enigo kaj eligo. Kun movo kiel enigo kaj sono kiel eligo, rubujo povus soni kiam iu maltrafas ĝin, dum stratlampo povus anonci proksimiĝanton. La enigo kaj eligo difinas la konduton de aparato; aldoni la medion ligas tiun konduton al ĉiutaga situacio.
Transformi skribitajn ideojn en interagajn virtualajn objektojn
En la tempo de ĉi tiu projekto, SNaP-sesio finiĝis per skriba priskribo de la inteligenta objekto dezajnita de la infanoj. Paralele i3Lab evoluigis «fizikan tabulon», kiu kunigis tabulkomputilon kun Arduino por transformi tiujn priskribojn en fizikajn prototipojn. Smart Codesign VR esploris alian aliron per virtuala realo, rimedo ankoraŭ ne esplorita de la teamo por tiu celo.
VR ofertis du eblojn. Unue, infanoj povus prototipi per tutkorpa moviĝo: kapti, porti, prilumi kaj pentri per peniko fariĝis manieroj difini kondiĉojn kaj kondutojn. Due, iliaj ideoj povus preni videblan formon kiel virtualaj objektoj, kun kiuj ili tuj povus interagi. Skriba priskribo povus fariĝi objekto kun grando kaj formo antaŭ ili.
Por kiu ĝi estis projektita
La celataj uzantoj estis infanoj de 11 ĝis 13 jaroj, kun aparta atento al infanoj kun neŭroevoluaj malordoj. Dezajni inteligentan objekton postulas iom da logika rezonado, do kaj SNaP kaj la VR-versio estis dezajnitaj por tiu aĝogrupo.
La projekto celis helpi infanojn esprimi siajn ideojn per praktika prototipado kaj interago. Tiuj estis dezajnaj celoj, ne pruvitaj terapiaj aŭ edukaj rezultoj; la prototipo ne estis taksita kun infanoj.
Zorgo pri la spaco mem
Surbaze de la materialoj konsultitaj por la projekto, ni uzis kvar kampojn por gvidi la spacan dezajnon: sono, lumo kaj koloro, spaca organizado, kaj materialoj. Pri sono ni konsideris bruizoladon, alĝustigeblan laŭtecon kaj kvietan, konstantan sonon por konsideri aŭdan sentemon. Pri lumo kaj koloro ni konsideris trankvilan fonon kun malalta kolorsaturo kaj helajn, saturitajn kolorojn limigitajn al malgrandaj areoj. Klaraj spacaj limoj, orda aranĝo, simplaj kaj facile distingeblaj formoj kaj senbara moviĝo ankaŭ gvidis la dezajnon. Virtuala medio ebligas al dezajnistoj regi tiujn aspektojn. La projekto ne taksis iliajn efikojn al la komforto de uzantoj.
La limigoj, kiujn VR kiel rimedo mem portas
La projekto ankaŭ konsideris la limigojn kaj riskojn de VR: la koston de aparatoj, movmalsanon, streĉon de la kapo kaj kolo pro la pezo de la kapaparato, akcidentojn kiam ĝi kaŝas la fizikan ĉirkaŭaĵon, okulan lacecon dum longdaŭra uzo kaj zorgojn pri dependeco ligita al troa mergiĝo.
Ĉio ĉi rekte influis la projektajn decidojn. Teni la interagon simpla, lasante tamen sufiĉajn defiojn por subteni lernadon. Teni la vidan kaj la aŭdan flankon klaraj sen fari la stimulon tro forta. Kaj doni al la sperto klaran finon — kiam la prototipado kaj la manipulado en la parko finiĝas, la agado estas kompleta. Tio estas samtempe decido ne projekti ion, kio retenas en la virtuala mondo.
Kio estis konstruita — la fluo de la sperto kaj ĝia realigo
La kvar scenoj de la sperto
La aplikaĵo konsistas el kvar scenoj: la atendekrano, la kartelekto, la prototipado kaj la manipulado en la parko.
1. Atendekrano
Ĉe la lanĉo aperas titolekrano, kiu ne iras plu, ĝis oni premas butonon de la stirilo. Tio estas intenca haltigo, por ke la ĉefa parto ne komenciĝu antaŭ ol la kasko sidas kaj la sinteno estas trovita.
2. Kartelekto — kapti kaj meti en la skatolon
En la sekva sceno oni elektas po unu karton por medio, enigo kaj eligo. La maniero elekti konsistas en kapti la objekton, kiu reprezentas la karton, porti ĝin al la responda skatolo kaj meti ĝin internen. Kapti kaj porti anstataŭ klaki estas ĝuste tio, kio uzas la tridimensian spacon, kiun VR havas. Kiam estas detektite, ke ĉiuj tri skatoloj estas plenaj, parola gvidilo kondukas al la sceno de prototipado. La ordo ne gravas, sed sen plenigi ĉiujn tri oni ne iras plu.
3. Prototipado — decidi kondiĉon kaj konduton per la korpo
Ĉi tie kuŝas la kerno de la sistemo. Por la elektita eniga karto oni difinas la «kiam», por la eliga karto la «kion ĝi faras». La maniero manipuli estas konstruita aparte por ĉiu karto, kaj al ĉiu estas atribuita movo, kiun ebligas nur spurado kun ses gradoj de libereco.
Se oni elektas ekzemple «veterprognozon» kiel enigon, ĉemane aperas objektoj reprezentantaj sunon, nubojn, pluvon, tondron kaj neĝon. Kapti unu el ili kaj direkti la radion, kiu el ĝi eliras, al la cela objekto fiksas la kondiĉon. Se oni elektas «lumi» kiel eligon, la ludanto kaptas penikon, trempas ĝian pinton en la farbujon de koloro kaj frotas ĝin sur la objekton por decidi la lumkoloron. Por forigi jam metitan koloron sufiĉas trempi la penikon en la ujon kun «akvo» kaj froti denove.
Grava decido pri la realigo estis subteni plurajn parojn de enigo kaj eligo por unu objekto. La komenca plano antaŭvidis nur unu: «se estas suno, lumi ruĝe», kaj tio estis ĉio. Farante ilin pluraj, unu sama objekto povas respondi malsame al pluraj situacioj: «ruĝe ĉe suno, blue ĉe pluvo, blanke ĉe neĝo». Difinitan paron oni povas ruli kaj elprovi antaŭ ol konfirmi ĝin, kaj se ĝi ne plaĉas, oni povas reiri kaj korekti ĝin.
4. La parko — provi la objekton
Post la konfirmo de la objekto oni transiras al virtuala parko. Tie la ludanto metas la inteligentan objekton, kiun li kunmetis, elvokas la enigan kondiĉon, kiun li difinis, kaj mem konstatas la eligan konduton. Kiam la objekto funkciis, aperas festa efekto kaj la sperto finiĝas.
La fluo entute
La sekva figuro kunigas ĉion ĉi en UML-agadajn diagramojn. La supra montras la ĝeneralan fluon; la du malsupraj disvolvas detale la manipuladon de la karto «veterprognozo» kaj de la karto «lumi». Branĉoj montras, kiel ludantoj povas reveni al kartelekto post ricevo de instrukcioj, kaj al redaktado post konfirmo kaj provado de la objekto.
Aparato kaj iloj
La cela aparato estas Oculus Quest 2. Ĝi havas spuradon kun ses gradoj de libereco, do turniĝi, marŝi kaj kapti iĝas rekte enigo. Ĉar ripete manipuli virtualajn objektojn per la manoj kuŝas en la kerno de la sperto, aparato kun tri gradoj de libereco, en kiun oni enŝovas poŝtelefonon, estis juĝita neadekvata.
La ludmotoro estas Unity kaj la lingvo C#; por la konekto kun Quest 2 estis uzata la pakaĵo Oculus Integration, el kiu venas la konduto de la VR-kamerao, la bildigo kaj komuna API por la enigo de la stiriloj.
Kvar scenoj kaj dek tri klasoj
La sistemo estas dividita en kvar Unity-scenojn, kiuj rekte respondas al la kvar scenoj de la sperto. La klasoj estas entute dek tri, tri el ili abstraktaj.
La titola sceno havas nur TitleSceneCore, kiu transiras al la sekva sceno ĉe premo de butono.
La kartelekta sceno uzas CardSelectionSceneCore kaj CardSelectionDetector. CardSelectionSceneCore kreas tri detektilekzemplerojn, po unu por la skatoloj de medio, enigo kaj eligo. Ĉiu skatolo altiras proksiman kartobjekton kaj markas ĝian kategorion kiel elektitan. Post ĉiuj tri elektoj la sceno skribas ilin al la statika klaso SmartObject kaj antaŭeniras. SmartObject konservas tiujn datumojn inter scenŝanĝoj, kunligante la kvar scenojn en kontinuan sperton.
La sceno de prototipado estas la centra. PrototypingSceneCore centre administras la tutan proceduron, kaj la konduto de la kartoj estas esprimata per hereda hierarkio kun Card ĉe la supro. Sub Card staras InputCard kaj OutputCard, kaj sub ili la konkretaj kartklasoj: Weather, Fire, MakeSound, LightUp. Nur la konkretaj klasoj ĉe la fino efektive plenumas la operaciojn de prototipado, do la tri supraj estas abstraktaj.
PrototypingSceneCore tenas liston de ekzempleroj de enigaj kondiĉoj kaj liston de ekzempleroj de eligaj kondutoj. Se la elektitaj kartoj estas «veterprognozo» kaj «lumi», la unua pleniĝas nur per ekzempleroj de Weather kaj la dua nur per ekzempleroj de LightUp. Komence po unu estas kreata aŭtomate, kaj poste ilia nombro kreskas ĉe ĉiu premo de la aldona butono en la interfaco. Ĉiun kadron ĉiuj enigaj kondiĉoj en la listo estas taksataj kaj la respondaj eligaj kondutoj estas vokataj. Kiam la uzanto konfirmas, isConfirmed iĝas vera kaj la datumoj de la kunmetita konduto estas skribataj en la statikajn propraĵojn de SmartObject.
La sceno de interago havas nur InteractionSceneCore, kiu prizorgas la lokadon en la parko, la ruladon de la enigaj kondiĉoj kaj la observadon de la eligoj, kaj la finan festan efekton.
Smart Object» malsupre meze konservas datumojn inter scenoj. Atributoj kaj metodoj estas simpligitaj por legebleco.La fontkodo estas konsultebla ĉe la jena ligilo:
github.com/
Kio sukcesis kaj kio restis
El 49 kartoj, 9 atingis la realigon
La prototipo realigas naŭ kartojn. Ĝiaj kernaj funkcioj funkcias: kartelekto, difino de kondiĉoj kaj kondutoj, administrado de pluraj ekzempleroj kaj transdono de datumoj inter scenoj. Tio provizas bazon por aldoni pli da kartoj, kvankam tiu realiglaboro restas farenda. Ses pliaj kartoj estis dezajnitaj sed ne realigitaj; la ceteraj 34 ankoraŭ bezonas kaj interagan dezajnon kaj realigon.
| Stato | Kartoj |
|---|---|
| Realigitaj (9) | Medio: arbo, stratlampo, trafiksigno, rubujo, ponto Enigo: fajro, veterprognozo Eligo: soni, lumi |
| Nur projektitaj (6) | Enigo: butono, rapido, sono Eligo: moviĝi, vibri, sendi |
| Ne komencitaj (34) | 15 mediaj kartoj, 16 enigaj kartoj, 3 eligaj kartoj (montri, ekfunkciigi, registri) |
Taksado ne estis farita
La prototipo ne estis taksita kun uzantoj. La evoluiga periodo koincidis kun fora partopreno dum la COVID-19-pandemio. Eblis aranĝi nek ĉeestan laborrondon kun VR-kapaparatoj nek foran alternativon. La projekto montras, ke la dezajnita sperto povas esti realigita kiel funkcianta prototipo. Ĝiaj uzebleco por infanoj kaj valoro en terapia kunteksto restas neprovitaj.
Estonta taksado demandus, kiom intuicia estas la interfaco por prototipado. Eblaj mezuroj inkluzivas la tempon bezonatan por plenumi la taskon, la kongruon inter la fina inteligenta objekto kaj la komenca ideo de la partoprenanto, kaj la nombron de neintencaj butonpremoj. Postsesia demandaro bazita sur System Usability Scale (SUS) aldonus kvantajn datumojn. Estonta taksado konsiderus registri sesiojn por observi la movojn de partoprenantoj, kun ilia konsento kaj taŭgaj proceduroj. Por la projekto de 2021 la proponita taksa aĝo estis 13 jaroj, elektita por kongruigi la celatan aĝogrupon de SNaP kun la tiutempe cititaj Oculus-gvidlinioj. Ĉiu estonta studo devus retaksi partoprenrajton laŭ la aplikeblaj gvidlinioj kaj esplorprotokolo.
La laboro, kiu kuŝas antaŭe
La unua prioritato por plua evoluigo estas plibonigi la interfacon kaj uzosperton. Pro limigitaj tempo kaj sperto, la plej granda peno iris al funkciigo de la kartkombinoj, tiel ke la vida, aŭda kaj tuŝsensa dezajno restis malpli evoluigita. Ankaŭ la rolo de teksto en VR bezonas rekonsideron: informoj dezajnitaj por plata surfaco eble pli bone prezentiĝus per spaca uzantinterfaco (SUI). Voĉa interago estas alia esplorinda direkto por la celataj uzantoj.
Kiel akademian etendon oni nomis tri vojojn. Unu estas la komparo kun la fizika tabulo, kiun oni evoluigis en la sama i3Lab. Ekzistas antaŭaj esploroj, laŭ kiuj la sama kunlabora ludo, ludata en reala loko kaj en virtuala medio, produktis pli da interparolo ĉe la virtuala flanko; simila komparo povus validi ankaŭ inter ĉi tiuj du. La dua estas subteno de samtempa partopreno de pluraj homoj: portante «codesign» en la nomo, povi kunmeti kune kun aliaj ene de la virtuala spaco havas sencon. La tria estas normigi la priskriban formaton de inteligentaj objektoj, por ke oni povu porti ilin trans platformojn.
Resume
Ĉi tiu projekto kreis medion por prototipi inteligentajn objektojn. Ĝi transformis la tri SNaP-kartospecojn en konstruelementojn: la objekton, ĝiajn ekigajn kondiĉojn kaj ĝiajn kondutojn. Ludantoj kunligas ilin per kaptado, celado kaj pentrado. La funkcianta prototipo transformas skribitan ideon en interagan virtualan objekton, kies konduto estas reprezentita kiel datumoj transdoneblaj inter scenoj.
Takafumi Horiuchi, Paul Cozma-Ivan, Elmira Katsajeva kaj Olivia Ludkiewicz, «Design and Implementation of a Smart Object Prototyping Platform in Virtual Reality for Children with NDD», Advanced User Interfaces (studjaro 2020–21) Final Exam Project, Politekniko de Milano, februaro 2021.

