الواقع الافتراضي مع Google



نشرها نيكولاي خاباروف ، خبير DataArt مضمن ، مبشر تكنولوجيا المنزل الذكي ، المخترع.

هذه المقالة هي خلاصة موجزة في أساسيات العمل مع الواقع الافتراضي والمعزز. لم أحدد المهمة للكشف الكامل عن جميع ميزات Google VR SDK وخططت لإعطاء الحد الأدنى من القاعدة لأولئك المهتمين بهذه التقنيات ويرغبون في بدء العمل معهم.

من تاريخ 3D


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

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

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

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

البساطة هي مفتاح النجاح


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


تطور آخر من Cardboard كان ظهور أحلام اليقظة- لا يختلف الجهاز عن سلفه بمبدأ التشغيل ، ولكن بالمقارنة معه ، له مزايا كبيرة. على وجه الخصوص ، لم تعد المواد التي يتم تصنيع Daydream نفسها منها مجرد كرتون ، بل هي ذات جودة أعلى بكثير. زائد آخر لا جدال فيه هو دعم برنامج Daydream نفسه.

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

عند استخدام Daydream ، يكفي فقط وضع الجهاز بحيث يقرأ معلمات النظارات نفسها باستخدام NFC. الملصق نفسه مخفي في الغلاف الخلفي.

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

يمكن استخدام Cardboard مع أي هاتف مناسب فعليًا في الصندوق نفسه وكان رخيصًا جدًا. للعمل مع Daydream في وقت كتابة هذا التقرير ، تم اعتماد ثلاثة هواتف فقط: ZTE Axon 7 و Google Pixel و Motorola Moto Z ، وهم يخططون لإضافة نماذج جديدة لهم ، ولكن لاستخدام Daydream ، يلزم وجود نظام تشغيل يعمل بنظام Android 7.0 على الأقل.

التفاعل مع الواقع الافتراضي


يبدأ الجزء الأكثر إثارة للاهتمام عندما لا ننظر فقط إلى صورة ثلاثية الأبعاد (يمكن أيضًا مشاهدة 3D على التلفزيون) ، ولكننا نبدأ في قلب رؤوسنا.

تم تجهيز أي هاتف حديث بأجهزة استشعار كهروميكانيكية دقيقة. هذه هي الأجهزة المجهرية التي يتم فيها جمع الإلكترونيات والأجزاء الميكانيكية المتحركة الصغيرة على بلورة ، مما يجعل من الممكن تتبع العوامل الخارجية المختلفة. ربما يعرف الجميع ما هو الجيروسكوب - جهاز يمكنك من خلاله معرفة زاوية الدوران. في حالة مستشعرات MEMS ، لا يعطي الدوران زاوية الدوران نفسها ، ولكن السرعة الزاوية. يوجد بداخلها عنصر صغير يتحرك تحت تأثير قوة كوريوليس (آمل أن تتذكر ما هو عليه ، من مسار الفيزياء). هذا يسمح لك بمعرفة السرعة الزاوية ، ودمجها بالفعل ، يمكننا تحديد زاوية الدوران. صحيح ، هذه الطريقة سيئة في ذلك ، حيث أن تحويل الهاتف في اتجاهات مختلفة ، على الأرجح لن نتمكن من العودة إلى نفس النقطة التي كنا فيها في الأصل.

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

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

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


تدرب


أصدرت Google Google VR SDK لأجهزة Cardboard و Daydream. هذا الأخير عبارة عن مجموعة من المكونات التي تساعدنا على تطوير التطبيقات خصيصًا لعرض الواقع ثلاثي الأبعاد ، وهي متوفرة على كل من iOS و Android. تجعل حزمة SDK هذه من السهل إنشاء تطبيقات لكل من الواقع الافتراضي والمعزز.

يهتم Google VR SDK بكل العمل مع المستشعرات ، وبفضل ذلك ، لا نحتاج إلى حساب quaternations لفهم كيفية تدوير مشهد في OpenGL عند قلب رؤوسنا. ما عليك سوى وضع العرض على النشاط ، وستقوم SDK بكل ذلك بمفردها.

دعنا نلقي نظرة سريعة على كيفية البدء بسرعة باستخدام Google VR SDK وكيفية إنشاء تطبيق Android بسيط. أولاً ، ستحتاج إلى تثبيت Android Studio مسبقًا.
قم بتنزيل SDK من مستودع git الرسمي . وثائق SDK متاحة هنا .

الآن فقط افتح الدليل الجذر للمستودع باستخدام Android Studio. هناك يمكنك العثور على أمثلة يمكن تجميعها من المصدر وتشغيلها على جهاز Android الخاص بك. يحتوي المشروع على الفور على تكوينات لتشغيل الأمثلة.



يحتوي Daydream أيضًا على وحدة تحكم صغيرة خاصة به ، والتي يدعمها أيضًا SDK. لديها مجموعة من وظائف رد الاتصال ، ويمكنك استخدام وحدة التحكم هذه بأمان في التصميمات الخاصة بك. يوجد مثال خاص في SDK 'sdk-controlerclient'.

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

المثال 'sdk-Treasurehunt' هي لعبة بسيطة إلى حد ما يتم تنفيذها على برنامج OpenGL النقي. كما يستخدم GvrAudioEngine لإعطاء اللعبة تأثيرات صوتية محيطة.

هناك Google VR SDK ومجموعة رائعة من العروض التي يمكنك تضمينها في تطبيقاتك ، وإن كانت صغيرة. على وجه الخصوص ، VrPanoramaView هو مكون لعرض الصور البانورامية بزاوية 360 درجة ، والعرض المجسم. يمكنك ببساطة وضع الصورة في موارد التطبيق واستدعاء VrPanoramaView.loadImageFromBitmap () في سطر واحد فقط لالتقاط هذه الصورة الخاصة وعرضها. ونتيجة لذلك ، تحصل على مكون جاهز يمكن للمستخدم رؤيته في تطبيقه - هذا هو العرض العادي ، مثل أي شخص آخر في Android.

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

يُظهر نموذجان من SDK 'sdk-simplepanowidget' و 'sdk-simpleevideowidget' مدى بساطة إنشاء تطبيقات بهذه الكائنات المضمّنة.

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



حل Odyssey 16 كاميرا متزامنة.


التطبيق


أين يمكن تطبيق التقنيات الموصوفة؟ الخيار الأول هو لعبة من الواضح. كقاعدة ، OpenGL هي ألعاب إطلاق نار وألعاب أخرى حيث نحتاج إلى إحساس بالعمق. أطلقت Netflix مؤخرًا خدمة لعرض محتوى ثلاثي الأبعاد ، ويمكن لهذه المكتبة أيضًا مساعدتك في كتابة نوع من حلول عرض الأفلام المخصصة.

يمكنك تمكين العملاء في المتجر باستخدام الهواتف لرؤية وصفهم الإضافي بجوار بطاقات الأسعار.

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

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


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

فكرة أخرى مثيرة للاهتمام للغاية لاستخدام مثل هذه التقنيات هي الطباعة ثلاثية الأبعاد.

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

Source: https://habr.com/ru/post/ar401809/


All Articles