تاكافومي هوريوتشي

تطوير نظام واقع افتراضي يتيح للأطفال بناء نماذج أولية لأجسام تفاعلية

نظرة عامة

Smart Codesign VR نموذج أولي لمنصة لبناء «أجسام ذكية» تفاعلية واختبارها في الواقع الافتراضي. يختار اللاعب ثلاث بطاقات، واحدة لكل من البيئة والمدخلات والمخرجات، ثم يستخدم حركات جسده لتحديد متى يستجيب الجسم وماذا يفعل. ويمكنه وضع الجسم الافتراضي المكتمل في حديقة واختبار سلوكه.

يبني المشروع على SNaP (The Smart Nature Protagonists)، وهي لعبة لوحية طوّرها مختبر i3Lab في بوليتكنيكو دي ميلانو. يجمع الأطفال فيها بين البطاقات لابتكار أجسام ذكية ويصفونها بجملة على الورق. وكان هدف هذا المشروع تحويل تلك الأوصاف إلى أجسام افتراضية يستطيع الأطفال تركيبها والتفاعل معها بحركاتهم.

صمّم فريقنا المكوّن من أربعة أشخاص النظام ونفّذه بوصفه المشروع النهائي لمقرر واجهات المستخدم المتقدمة في بوليتكنيكو دي ميلانو للعام الدراسي 2020–21. صمّمناه للأطفال بين 11 و13 عامًا، مع اهتمام خاص بذوي الاضطرابات النمائية العصبية (NDD). بُني النموذج الأولي باستخدام Unity ولغة C# لجهاز Oculus Quest 2، وهو يدعم المسار الكامل من اختيار البطاقات إلى التفاعل في الحديقة الافتراضية.

الفيديو التوضيحي: اختيار البطاقات، وتحديد شرط المدخل وسلوك المخرج، ثم تشغيل الجسم الذكي المكتمل في الحديقة الافتراضية.

لعبة SNaP اللوحية، ومنطلقات التصميم

لعبة يكون فيها الأطفال هم المصمّمون

في SNaP، يؤدي طفلان إلى أربعة دور «المصمّمين»، بينما يؤدي بالغ ييسّر الجلسة دور «العمدة». يقدّم العمدة مهمة، فيناقش الأطفال أفكارهم ويجمعون البطاقات لتصميم جسم ذكي يستجيب لها. وتهدف اللعبة إلى تنمية الإبداع والتعاون والقدرة على التعبير عن الأفكار. وقد رُوعي أيضًا استخدامها لدى الأطفال ذوي الاضطرابات النمائية العصبية، لكن هذا المشروع لم يقيّم آثارًا علاجية أو تعليمية.

البيئة والمدخل والمخرج — ثلاثة أنواع من البطاقات

لبطاقات SNaP ثلاثة أنواع، لكل نوع دوره الخاص.

تمثّل بطاقات البيئة الجسم الذي سيُجعل ذكيًا: شجرة، أو مقعدًا، أو أرجوحة، أو مسطحًا مائيًا، أو حجرًا، أو عمود إنارة، أو سلة مهملات، أو دراجة، أو جسرًا، أو درجًا، أو حقيبة مدرسية. وهذه أجسام ومعالم مألوفة في الحدائق والشوارع. وتحدّد بطاقة البيئة الجسم الذي سيضم وظيفتي المدخلات والمخرجات.

تحدّد بطاقات المدخلات ما يكتشفه الجسم أو يستجيب له، مثل الزر، أو الحركة، أو اللمس، أو المسافة، أو درجة الحرارة، أو الرطوبة، أو شدة الإضاءة، أو اللون، أو الصوت، أو النار، أو منسوب الماء، أو التنبؤ بالطقس. وهي تمثّل مدخلات الجسم الذكي، على نحو مماثل للحساسات.

تحدّد بطاقات المخرجات استجابة الجسم: الإضاءة، أو إصدار صوت، أو الاهتزاز، أو الحركة، أو عرض المعلومات، أو تسجيلها، أو إرسالها. وهي تمثّل وظائف مخرجاته، على نحو مماثل للمشغّلات.

تمنح بطاقة البيئة زوج المدخل والمخرج سياقه. فعندما تكون الحركة مدخلًا والصوت مخرجًا، قد تُصدر سلة المهملات صوتًا إذا أخطأ شخص الرمي فيها، بينما قد ينبّه عمود إنارة إلى اقتراب شخص. تحدّد المدخلات والمخرجات سلوك الجهاز؛ وتربط إضافة البيئة ذلك السلوك بموقف من الحياة اليومية.

بطاقة البيئة «سلة مهملات» (Trash can)، وبطاقة المدخل «حركة» (Motion)، وبطاقة المخرج «إصدار صوت» (Make sound)، موصولة بعلامات &. ويقود سهم إلى جملة بالإنجليزية معناها: «يصدر صوت عندما لا تصيب الرمية سلة المهملات».
يصير الجمع بين ثلاث بطاقات جملةً تصف جسمًا ذكيًّا واحدًا. ولون إطار البطاقة يدل على نوعها: الأخضر للبيئة، والأزرق الفاتح للمدخل، والأصفر للمخرج.
جدول يعرض بطاقات SNaP الـ49 كلها. الصفّان العلويان هما بطاقات البيئة العشرون ذات الإطار الأخضر، والصفّان الأوسطان مع الطرف الأيسر من الصف الأخير هي بطاقات المدخل الإحدى والعشرون ذات الإطار الأزرق الفاتح، وبقية الصف الأخير هي بطاقات المخرج الثماني ذات الإطار الأصفر.
مجموعة بطاقات SNaP الكاملة: 49 بطاقة، منها 20 للبيئة و21 للمدخلات و8 للمخرجات. وتحدّد تركيباتها الممكنة فضاء التصميم في اللعبة.

تحويل الأفكار المكتوبة إلى أجسام افتراضية تفاعلية

في وقت هذا المشروع، كانت جلسة SNaP تنتهي بوصف مكتوب للجسم الذكي الذي صمّمه الأطفال. وبالتوازي، كان مختبر i3Lab يطوّر «لوحًا ماديًا» يجمع جهازًا لوحيًا مع Arduino لتحويل تلك الأوصاف إلى نماذج أولية مادية. واستكشف Smart Codesign VR نهجًا آخر بالواقع الافتراضي، وهو وسيط لم يكن فريق البحث قد درسه لهذا الغرض بعد.

أتاح الواقع الافتراضي فرصتين. أولًا، يستطيع الأطفال بناء النماذج الأولية بحركات الجسد كله؛ فالإمساك والحمل وتسليط الضوء والطلاء بالفرشاة تصبح وسائل لتحديد الشروط والسلوكيات. وثانيًا، يمكن أن تتخذ أفكارهم شكل أجسام افتراضية مرئية يستطيعون التفاعل معها فورًا. وهكذا يتحوّل الوصف المكتوب إلى جسم له حجم وشكل أمامهم.

لمن صُمِّم

الفئة الأساسية أطفال بين 11 و13 عامًا، مع تركيز على الأطفال ذوي الاضطرابات النمائية العصبية. فتصوّر جسم ذكي يقتضي قدرًا من التفكير المنطقي، ولذلك تفترض SNaP وهذه النسخة الافتراضية معًا سنًّا معينة.

هدف المشروع إلى مساعدة الأطفال على التعبير عن أفكارهم من خلال النمذجة والتفاعل المباشرين. كانت هذه أهدافًا تصميمية، وليست نتائج علاجية أو تعليمية مثبتة؛ إذ لم يُقيّم النموذج الأولي مع أطفال.

العناية بالفضاء نفسه

استنادًا إلى المواد التي رجعنا إليها في المشروع، استرشد التصميم المكاني بأربعة محاور: الصوت، والضوء واللون، والتنظيم المكاني، والمواد. في الصوت، راعينا العزل عن الضوضاء، وإمكان ضبط مستوى الصوت، وصوتًا هادئًا ومتسقًا يراعي الحساسية السمعية. وفي الضوء واللون، راعينا خلفية هادئة منخفضة التشبّع، مع حصر الألوان الزاهية والمشبعة في مساحات صغيرة. وشملت الاعتبارات أيضًا حدودًا مكانية واضحة، وترتيبًا منظّمًا، وأشكالًا بسيطة سهلة الفهم، وحركة بلا عوائق. تتيح البيئة الافتراضية للمصمّم التحكم في هذه الجوانب، لكن المشروع لم يقيّم آثارها على راحة المستخدمين.

القيود التي يحملها الواقع الافتراضي بوصفه وسيطًا

تناول المشروع أيضًا قيود الواقع الافتراضي ومخاطره: تكلفة الأجهزة، ودوار الحركة، وإجهاد الرأس والرقبة بسبب وزن النظارة، والحوادث حين تحجب النظارة المحيط الفعلي، وإجهاد العين مع الاستخدام الطويل، والمخاوف من التعلّق المرتبط بالانغماس المفرط.

أفضت هذه الاعتبارات إلى ثلاثة قرارات تصميمية: إبقاء التفاعل بسيطًا مع توفير قدر كافٍ من التحدّي لدعم التعلّم، وتقديم صورة وصوت واضحين دون تحفيز مفرط، وتحديد نهاية واضحة للتجربة. فبعد إتمام بناء النموذج الأولي واختباره في الحديقة، ينتهي النشاط، بدلًا من تشجيع المستخدمين على البقاء في الواقع الافتراضي إلى أجل غير محدد.


ما بُني — مسار التجربة وتنفيذها

مشاهد التجربة الأربعة

يتألف التطبيق من أربعة مشاهد: شاشة الانتظار، واختيار البطاقات، وبناء النموذج، والتشغيل في الحديقة.

1. شاشة الانتظار

عند التشغيل تظهر أولًا شاشة العنوان، ولا يمضي شيء حتى يُضغط زر في وحدة التحكم. وهو توقّف مقصود، كي لا يبدأ الجزء الأساسي قبل أن تستقر النظارة ويستقيم وضع الجسد.

2. اختيار البطاقات — الإمساك ثم الوضع في الصندوق

في المشهد التالي تُختار بطاقة واحدة لكلٍّ من البيئة والمدخل والمخرج. وطريقة الاختيار أن يُمسَك الجسم الذي يمثّل البطاقة ويُحمَل إلى الصندوق المقابل ويوضع فيه. والإمساك والحمل بدل النقر هو ما يستثمر الفضاء ثلاثي الأبعاد الذي يوفّره الواقع الافتراضي. ومتى رُصد امتلاء الصناديق الثلاثة انتقل المشهد إلى بناء النموذج مع إرشاد صوتي. والترتيب غير مهم، لكن لا مضيّ قبل ملء الثلاثة جميعًا.

شاشة اختيار البطاقات في الواقع الافتراضي. أمام لوحة عليها بطاقات تقف ثلاثة صناديق شبه شفافة كُتب عليها input (المدخلات) وenvironment (البيئة) وoutput (المخرجات)، ويد تمسك جسمًا على هيئة مكبِّر صوت.
مشهد اختيار البطاقات. الصناديق الثلاثة في المقدمة تقابل البيئة والمدخل والمخرج، ووضع الجسم المُمسَك فيها يثبّت الاختيار. أما البطاقات التي لا يمكن التعامل معها في هذه المرحلة فتظهر باهتة.

3. بناء النموذج — تحديد الشرط والسلوك بالجسد

هنا قلب المنظومة. فلبطاقة المدخل المختارة يُحدَّد «متى»، ولبطاقة المخرج «ماذا يفعل». وطريقة التشغيل مبنية لكل بطاقة على حدة، وقد أُسندت إلى كل واحدة حركة لا تتحقق إلا بتتبّع ذي ست درجات حرية.

فإذا اختير مثلًا «النشرة الجوية» مدخلًا، ظهرت في متناول اليد أجسام تمثّل الصحو والغيم والمطر والرعد والثلج. ويكفي الإمساك بأحدها وتوجيه الشعاع الخارج منه إلى الجسم المستهدف ليثبت الشرط. وإذا اختير «أن يضيء» مخرجًا، أمسك اللاعب فرشاة وغمس طرفها في علبة الطلاء بحسب اللون ثم مسح بها الجسم ليحدّد لون الإضاءة. ولمحو لون سبق وضعه يكفي غمس الفرشاة في علبة «الماء» ثم المسح من جديد.

وكان الأهم على صعيد التنفيذ إتاحة تعريف عدة أزواج من المدخل والمخرج جنبًا إلى جنب. فالخطة الأولى لم تتضمن سوى زوج واحد: «إذا كان الجو صحوًا يضيء أحمر»، وانتهى الأمر. وبجعلها متعددة صار الجسم الواحد يردّ على مواقف عدة ردودًا مختلفة: «أحمر مع الصحو، أزرق مع المطر، أبيض مع الثلج». والزوج المُعرَّف يمكن تشغيله وتجربته قبل تثبيته، فإن لم يعجب أمكن الرجوع وتعديله.

شاشة بناء النموذج الأولي، مع إرشادات بطاقة المدخل «الطقس» (Weather) على اليسار، وثلاث فقاعات شروط في الوسط تعني: «عندما يُتوقّع أن يكون الجو مشمسًا / ممطرًا / مثلجًا»، وفقاعات المخرجات على اليمين. وتظهر شجرة وعلب طلاء في المقدمة. الشاشة نفسها منظورة من اليمين. على جانبي عمود إنارة مطليّ بالأصفر تصطف فقاعات المدخل والمخرج أزواجًا، وعند الطرف الأيمن لوحة شرح تشغيل بطاقة المخرج «الإضاءة» (Light up).
لقطات من النموذج الأولي عام 2021. تربط فقاعات مرقّمة شروط المدخلات بسلوكيات المخرجات. يضيف زر الجمع زوجًا ويحذف زر الطرح زوجًا. وتعرض لوحة المدخلات عبارة Maximum number of instances: 5، أي «الحد الأقصى لعدد المثيلات: 5».

4. الحديقة: اختبار الجسم

بعد تثبيت الجسم ينتقل المشهد إلى حديقة افتراضية. هنا يضع اللاعب الجسم الذكي الذي ركّبه، ويستدعي شرط المدخل الذي حدّده، ويتحقق بنفسه من سلوك المخرج. وحين يعمل الجسم يظهر مشهد احتفالي وتنتهي التجربة.

المسار في مجمله

يجمع الشكل التالي ذلك كله في مخططات نشاط بلغة UML. الأعلى يبيّن المسار العام، والاثنان في الأسفل يبسطان بالتفصيل تشغيل بطاقة «النشرة الجوية» وبطاقة «أن يضيء». وقد كُتبت على هيئة تفرّعات إمكانية العودة إلى إعادة الاختيار بعد اختيار البطاقات عند تلقّي الإرشاد، وإمكانية الرجوع إلى التحرير بعد التثبيت والتجربة.

مخططات نشاط بلغة UML. المخطط الأعلى «Overall Activity» يمتد من شاشة الانتظار إلى اختيار ثلاث بطاقات، فالإرشادات، فتعريف شروط المدخل وسلوكيات المخرج، فالتثبيت، فالتحقق من العمل، حتى التشغيل في الحديقة. وفي الأسفل إلى اليسار يُبسط تشغيل بطاقة النشرة الجوية، وإلى اليمين تشغيل بطاقة الإضاءة.
مخططات نشاط بلغة UML تمثّل أفعال المستخدم. ولأن التشغيل يختلف باختلاف نوع البطاقة، كُتب المسار المشترك وتفاصيل كل بطاقة على حدة.

الجهاز والأدوات

الجهاز المستهدف هو Oculus Quest 2. فهو يتيح تتبّعًا بست درجات حرية، بحيث يصير الالتفات والمشي والإمساك مدخلات مباشرة. ولمّا كان تناول الأجسام الافتراضية باليد مرارًا هو محور التجربة، حُكم بأن جهازًا بثلاث درجات حرية يُركَّب فيه هاتف لا يفي بالغرض.

محرّك اللعبة هو Unity واللغة C#؛ وللاتصال بجهاز Quest 2 استُخدمت حزمة Oculus Integration، ومنها جاء سلوك كاميرا الواقع الافتراضي والعرض وواجهة برمجية موحّدة لمدخلات وحدات التحكم.

أربعة مشاهد و13 صنفًا برمجيًا

ينقسم النظام إلى أربعة مشاهد في Unity، تقابل مباشرةً مشاهد التجربة الأربعة. والأصناف ثلاثة عشر إجمالًا، ثلاثة منها مجردة.

مشهد العنوان لا يحتوي سوى TitleSceneCore، الذي ينقل إلى المشهد التالي عند ضغط زر.

يتألف مشهد اختيار البطاقات من CardSelectionSceneCore وCardSelectionDetector. ينشئ الأول ثلاثة مثيلات من الثاني، واحدًا لكل صندوق للبيئة والمدخلات والمخرجات. يجذب كل صندوق جسم البطاقة القريب ويضع علامة على اختيار فئته. وعند اكتمال الاختيارات الثلاثة، يكتبها المشهد في الصنف الساكن SmartObject ثم ينتقل إلى المرحلة التالية. ويحتفظ الصنف SmartObject بالبيانات بين المشاهد، فيربط المشاهد الأربعة ضمن تجربة متصلة.

مشهد بناء النموذج هو المركز. يدير PrototypingSceneCore الإجراء كله إدارة مركزية، ويُعبَّر عن سلوك البطاقات بتسلسل وراثي على رأسه Card. وتحت Card يأتي InputCard وOutputCard، وتحتهما أصناف البطاقات المحدّدة: Weather وFire وMakeSound وLightUp. ولمّا كانت أصناف الطرف المحدّدة وحدها هي التي تتولى فعليًّا عمليات بناء النموذج، جُعلت الثلاثة الأعلى منها مجردة.

يحتفظ PrototypingSceneCore بقائمة لمثيلات شروط المدخلات وأخرى لمثيلات سلوكيات المخرجات. فإذا اختيرت بطاقتا «التنبؤ بالطقس» و«الإضاءة»، احتوت القائمتان على مثيلات Weather وLightUp على التوالي. يُنشأ مثيل واحد من كل صنف عند البدء، وتؤدي كل ضغطة على زر الإضافة إلى إنشاء زوج آخر. وفي كل إطار، يقيّم النظام شروط المدخلات ويستدعي سلوكيات المخرجات المقابلة. وعندما يؤكّد المستخدم الجسم، تُضبط isConfirmed على true وتُكتب بيانات السلوك المركّب في الخصائص الساكنة للصنف SmartObject.

مشهد التفاعل لا يحتوي سوى InteractionSceneCore، الذي يتولى وضع الجسم في الحديقة، وتشغيل شروط المدخل ومراقبة المخرجات، والمشهد الاحتفالي الختامي.

مخطط أصناف بلغة UML. رُسمت أربع حزم — Title Scene وCard Selection Scene وPrototyping Scene وInteraction Scene — إلى جانب الصنف الساكن Smart Object الذي تشير إليه جميعها. وداخل Prototyping Scene يرث الصنفُ Input Card والصنفُ Output Card الصنفَ المجرد Card، ويرثهما بدورهما Weather Card وFire Card وMake Sound Card وLight Up Card.
مخطط أصناف النظام بلغة UML. تقابل الحزم الأربع مشاهد Unity. ويحتفظ الصنف الساكن المسمّى Smart Object أسفل الوسط بالبيانات بين المشاهد. بُسّطت السمات والدوال لتيسير القراءة.

ما تحقّق وما بقي

تنفيذ 9 بطاقات من أصل 49

ينفّذ النموذج الأولي تسع بطاقات. وتعمل وظائفه الأساسية: اختيار البطاقات، وتعريف الشروط والسلوكيات، وإدارة المثيلات المتعددة، ونقل البيانات بين المشاهد. ويوفّر ذلك أساسًا لإضافة مزيد من البطاقات، لكن تنفيذها ما زال مطلوبًا. صُمّمت ست بطاقات أخرى دون تنفيذها، بينما تحتاج البطاقات الأربع والثلاثون المتبقية إلى تصميم التفاعل والتنفيذ معًا.

حال التنفيذ في النموذج الأولي
الحالةالبطاقات
مُنفَّذة (9)البيئة: شجرة، عمود إنارة، لافتة طريق، سلة مهملات، جسر
المدخل: نار، نشرة جوية
المخرج: إصدار صوت، إضاءة
مُصمَّمة فقط (6)المدخل: زر، سرعة، صوت
المخرج: حركة، اهتزاز، إرسال
لم يبدأ العمل عليها (34)15 بطاقة بيئة، و16 بطاقة مدخل، و3 بطاقات مخرج (عرض، تشغيل، تسجيل)

لم يُجرَ تقييم

لم يُجرَ تقييم مع مستخدمين فعليين. فقد تزامنت مدة التطوير مع المشاركة عن بُعد في ظل جائحة كوفيد-19، ولم يتيسّر تنظيم ورشة حضورية قائمة على نظارات الواقع الافتراضي ولا بديل عنها عن بُعد. يوضح المشروع إمكان تنفيذ التجربة المصمّمة في نموذج أولي يعمل. أما قابلية استخدامه لدى الأطفال وقيمته في السياق العلاجي، فلم تُختبرا بعد.

سيسأل تقييم مستقبلي عن مدى بداهة الواجهة في بناء النماذج الأولية. ومن المقاييس الممكنة زمن الإنجاز، ومدى مطابقة الجسم الذكي النهائي لفكرة المشارك الأولية، وعدد الضغطات غير المقصودة. ويمكن لاستبيان بعد الجلسة يستند إلى مقياس قابلية استخدام النظام (SUS) توفير بيانات كمية إضافية. كما يمكن النظر في تسجيل الجلسات لملاحظة حركات المشاركين، بموافقتهم ووفق إجراءات مناسبة. وفي مشروع 2021، كان العمر المقترح للتقييم 13 عامًا، لمواءمة الفئة العمرية المستهدفة في SNaP مع إرشادات Oculus التي استُخدمت آنذاك. وأي دراسة مستقبلية تحتاج إلى إعادة النظر في شروط المشاركة وفق الإرشادات وبروتوكول البحث المعمول بهما.

العمل الذي ينتظر

الأولوية الأولى للتطوير هي تحسين واجهة الاستخدام وتجربته. فقد أدت محدودية الوقت والخبرة إلى توجيه معظم الجهد لإنجاح تركيبات البطاقات، فبقي التصميم البصري والصوتي واللمسي أقل تطورًا. ويحتاج دور النص في الواقع الافتراضي إلى إعادة نظر أيضًا: فقد يكون عرض المعلومات المصمّمة لسطح مستوٍ أنسب عبر واجهة مستخدم مكانية (SUI). والتفاعل الصوتي اتجاه آخر يستحق الدراسة للمستخدمين المستهدفين.

حدّد المشروع ثلاثة اتجاهات بحثية. الأول هو المقارنة مع اللوح المادي الذي كان مختبر i3Lab يطوّره. فقد أفادت أبحاث سابقة بأن المشاركين تحاوروا أكثر عند لعب اللعبة التعاونية نفسها في بيئة افتراضية مقارنة ببيئة مادية، مما يشجّع على مقارنة المنصتين. والثاني هو إتاحة المشاركة المتزامنة لعدة مستخدمين، ليتمكّن الأطفال من بناء الأجسام معًا في الواقع الافتراضي، انسجامًا مع معنى «التصميم المشترك» في اسم Codesign. والثالث هو توحيد صيغة وصف الأجسام الذكية، بما يتيح نقل التصاميم بين المنصات.

خلاصة

أنشأ هذا المشروع بيئة لبناء نماذج أولية لأجسام ذكية. وحوّل أنواع بطاقات SNaP الثلاثة إلى عناصر بناء: الجسم، وشروط تفعيله، وسلوكياته. يربط اللاعب بينها بالإمساك والتوجيه والطلاء. ويحوّل النموذج الأولي العامل فكرة مكتوبة إلى جسم افتراضي تفاعلي، مع تمثيل سلوكه ببيانات يمكن تمريرها بين المشاهد.

Takafumi Horiuchi, Paul Cozma-Ivan, Elmira Katsajeva, and Olivia Ludkiewicz, «Design and Implementation of a Smart Object Prototyping Platform in Virtual Reality for Children with NDD», Advanced User Interfaces (A.Y. 2020–21) Final Exam Project، بوليتكنيكو دي ميلانو، فبراير 2021.