תאורה נכונה

מדריכים ספציפיים לפלטפורמות

אחד הגורמים החשובים ביותר ליצירת חוויות AR מציאותיות הוא תאורה נכונה. אם לאובייקט וירטואלי חסר צל או שהוא עשוי מחומר מבריק שלא משקף את המרחב שמסביב, המשתמשים יכולים לחוש שהאובייקט לא ממש מתאים, גם אם הם לא יכולים להסביר למה. הסיבה לכך היא שבני אדם תופסים באופן לא מודע רמזים לגבי האופן שבו אובייקטים מוארים בסביבה שלהם. Lighting Estimation API מנתח תמונות נתונות לסימנים כאלה, ומספק מידע מפורט על התאורה בסצנה. לאחר מכן תוכלו להשתמש במידע הזה כשאתם מבצעים עיבוד (רנדרינג) של אובייקטים וירטואליים כדי להאיר אותם באותם תנאים כמו הסצנה שבה הם ממוקמים, וכך לשמור על תחושת מציאותיות ועל רמת עניין גבוהה בקרב המשתמשים.

איתותים של תאורה

Lighting Estimation API מספק נתונים מפורטים שמאפשרים לחקות אותות תאורה שונים כשמריצים רינדור של אובייקטים וירטואליים. האותות האלה הם צללים, אור הסביבה, הצללה, הדגשות ספקולטיביות והשתקפויות.

אזורים כהים

לעתים קרובות, הצללים הם בכיוון מסוים ומאפשרים לצופים לדעת מאיפה מגיעים מקורות האור.

אור מהסביבה

אור הסביבה הוא האור הכולל המפזר שנפלט מהסביבה והופך את כל התוכן לגלוי.

הצללה

הצללה היא עוצמת האור. לדוגמה, לחלקים שונים של אותו אובייקט יכולות להיות רמות שונות של צללים באותה סצנה, בהתאם לזווית ביחס לצופה ולקרבה שלו למקור אור.

הדגשות ספקולטיביות

נקודות אור רפלקטיביות הן החלקים המבריקים במשטחים שמשקפים ישירות מקור אור. ההדגשות על אובייקט משתנות בהתאם למיקום של הצופה בסביבה.

רגעים מהחיים

האור ניתז מהמשטחים באופן שונה בהתאם לתכונות של המשטח – ספקולרי (רפלקטיבי מאוד) או מפוזר (לא רפלקטיבי). לדוגמה, כדור מתכתי יהיה בעל חזית חזיתית גבוהה וישקף את הסביבה שלו, בעוד שכדור אחר שצבוע באפור מט דהוי יהיה מפוזר. לרוב החפצים בעולם האמיתי יש שילוב של המאפיינים האלה – למשל, כדור באולינג שרואים בו שריטות או כרטיס אשראי שנעשה בו שימוש רב.

משטחים עם השתקפויות גם מקבלים צבעים מהסביבה. צבע האובייקט יכול להיות מושפע ישירות מצבע הסביבה שלו. לדוגמה, כדור לבן בחדר כחול יקבל גוון כחלחל.

מצב HDR סביבתי

המצבים האלה כוללים ממשקי API נפרדים שמאפשרים לבצע הערכת תאורה מפורטת ומציאותית עבור תאורה כיוונית, צלליות, אזורים בהירים והשתקפויות.

במצב HDR סביבתי, המערכת משתמשת בלמידת מכונה כדי לנתח את תמונות המצלמה בזמן אמת ולמזג את התאורה הסביבתית כך שתומכת ברינדור ריאליסטי של אובייקטים וירטואליים.

במצב הערכת התאורה אפשר:

  1. תאורת כיוון עיקרית. מייצג את מקור האור הראשי. אפשר להשתמש בהם כדי ליצור צללים.

  2. הרמוניה כדורית סביבתית. מייצג את האנרגיה הנותרת של האור הסביבתי בסצנה.

  3. מַפְת 立方体 (cubemap) של HDR. אפשר להשתמש בהם כדי ליצור שיקוף באובייקטים מבריקים ממתכת.

תוכלו להשתמש בממשקי ה-API האלה בשילובים שונים, אבל הם נועדו לשימוש יחד כדי להשיג את האפקט הכי מציאותי.

נורית חיווי עיקרית

ה-API הראשי של התאורה הכיוונית מחשב את הכיוון והעוצמה של מקור האור הראשי של הסצנה. המידע הזה מאפשר להציג אובייקטים וירטואליים בסצנה עם הדגשים חזותיים (specular highlights) במיקום סביר, ולהטיל צללים בכיוון שתואם לאובייקטים אמיתיים אחרים שגלויים.

כדי להבין איך זה עובד, נבחן את שתי התמונות הבאות של אותה רקטה וירטואלית. בתמונה שבצד ימין יש צל מתחת לרקטה, אבל הכיוון שלו לא תואם לכיוון של הצללים האחרים בסצנה. בטיל שמימין, הצללית פונה בכיוון הנכון. זהו הבדל קטן אבל חשוב, והוא מבסס את הטיל בסצנה כי הכיוון והעוצמה של הצל תואמים טוב יותר לצלליות אחרות בסצנה.

     

כשמקור האור הראשי או אובייקט מואר נמצאים בתנועה, ההדגשה הזוהרת על האובייקט משווה את המיקום שלה בזמן אמת ביחס למקור האור.

גם האורך והכיוון של צללים כיווניים משתנים בהתאם למיקום של מקור האור הראשי, בדיוק כמו בעולם האמיתי. כדי להמחיש את האפקט הזה, נבחן את שני הדוגמניות האלה, אחת וירטואלית והשנייה אמיתית. הדמות הווירטואלית היא הדמות שמשמאל.

הרמוניות סגליות של סביבה

בנוסף לאנרגיית האור של האור הראשי המכוון, ARCore מספקת הרמוניות כדוריות שמייצגות את תאורת הסביבה הכוללת שמגיעה מכל הכיוונים בסצנה. אפשר להשתמש במידע הזה במהלך העיבוד כדי להוסיף רמזים עדינים שמדגישים את ההגדרה של אובייקטים וירטואליים.

נבחן את שתי התמונות האלה של אותו דגם טיל. הרקטה בצד ימין עוברת עיבוד באמצעות מידע על אומדני התאורה שזוהה על ידי ממשק ה-API הראשי של תאורת הכיוון. העיבוד של הטיל מימין מעובד באמצעות מידע שזוהה על ידי אור הכיוון העיקרי וממשק ה-API של ההרמוניה כדורית בסביבה. לטיל השני יש בבירור הגדרה ויזואלית יותר והוא משתלב בצורה חלקה יותר בסצנה.

     

מפת קוביות HDR

אפשר להשתמש במפה של קוביית HDR כדי ליצור עיבוד גרפי של השתקפויות מציאותיות על אובייקטים וירטואליים עם רמת ברק בינונית עד גבוהה, כמו משטחים מתכתיים מבריקים. מפת הקובייה משפיעה גם על ההצללה והמראה של האובייקטים. לדוגמה, החומר של אובייקט מבריק מוקף בסביבה כחולה ישקף גוונים כחולים. חישוב מפת הקוביות של HDR דורש כמות קטנה של חישובים נוספים במעבד.

כדאי להשתמש במפה של קוביית HDR בהתאם לאופן שבו האובייקט משקף את הסביבה שלו. מכיוון שהרקטה הווירטואלית היא מתכתית, יש לה רכיב חזק של חזית מבריקה שמשקפת ישירות את הסביבה שמסביב. לכן, הוא נהנה מהיתרונות של מפת הקוביות. לעומת זאת, לאובייקט וירטואלי עם חומר מאט אפור עמום אין רכיב רפלקטיבי בכלל. הצבע שלו תלוי בעיקר ברכיב ההתפזרות, והוא לא ייהנה מ-cubemap.

כל שלושת ממשקי ה-API של HDR בסביבה שימשו לעיבוד הגרפי של הטיל שבהמשך. מפת הקוביות ב-HDR מאפשרת להציג את האותות של ההשתקפות ולהדגיש עוד יותר את האובייקט בסביבה.

הנה אותו דגם של טיל בסביבות מוארות שונות. כל הסצנות האלה עובדו באמצעות מידע משלושת ממשקי ה-API, עם הצללות כיווניות.

           

מצב תאורת אווירה

מצב עוצמת התאורה הסביבתית קובע את עוצמת הפיקסלים הממוצעת ואת המכפילים של תיקון הצבע בתמונה נתונה. זוהי הגדרה גסה שמיועדת לתרחישי שימוש שבהם תאורה מדויקת לא חיונית, כמו אובייקטים עם תאורה מובנית.

עוצמת הפיקסלים

תיעוד עוצמת הפיקסלים הממוצעת של התאורה בסצינה. אפשר להחיל את התאורה הזו על אובייקט וירטואלי שלם.

צבע

זיהוי של איזון הלבן בכל פריים בנפרד. לאחר מכן תוכלו לבצע תיקון צבע של אובייקט וירטואלי כדי שהוא ישתלב בצורה חלקה יותר בצביעה הכוללת של הסצנה.

בדיקות סביבה

סנסורים לסביבה מאפשרים לארגן תצוגות מצלמה של 360 מעלות כטקסטורות של סביבה, כמו מפות קוביות. לאחר מכן אפשר להשתמש במרקמים האלה כדי להאיר אובייקטים וירטואליים באופן ריאליסטי, כמו כדור מתכת וירטואלי ש"משקף" את החדר שבו הוא נמצא.