איך מחשב מצייר עולם תלת־ממדי: קרן דרך כל פיקסל, קרני צל אל מקור האור, החזרות שמביאות השתקפויות ואור מוחזר, וכמה קרניים צריך כדי שהרעש ייעלם.
שלב 1 מתוך 6 · שתי תמונות
שלב 1 מתוך 6
שתי תמונות
כל משחק מחשב, כל סרט מונפש וכל סצנה באתר הזה צריכים לענות על אותה שאלה, פעם אחת לכל פיקסל: איזה צבע יש כאן? ביחידה על ביטים ונתונים ראיתם שתמונה היא טבלה של פיקסלים, ושצבע הוא שלושה מספרים. עכשיו השאלה היא איך מחשבים את המספרים האלה מתוך עולם תלת־ממדי.
יש שתי דרכים. רסטריזציה לוקחת כל משולש של כל חפץ, מטילה אותו אל המסך וצובעת את הפיקסלים שהוא מכסה. היא מהירה מאוד, וכך מצוירים בסצנה הסטודיו, המצלמה והחצובה. מעקב קרניים הולך בדרך אחרת: מכל פיקסל הוא שולח קרן אל העולם ושואל מה היא פוגשת. כך חושבה התמונה שעל המסגרת שלפני המצלמה, כאן בדפדפן שלכם.
הסתכלו על כדור המראה בשתי התמונות.
שלב 2 מתוך 6
קרני מצלמה
מעקב אחר הקרניים עומד על קרני מצלמה. מהמצלמה יוצאות קרניים, כל אחת דרך פיקסל אחר במסגרת, עד המשטח הראשון שהיא פוגשת. הצבע של המשטח הזה, באור שמגיע אליו, הוא הצבע של הפיקסל.
זו לולאה פשוטה, מהסוג שמעבד מריץ: לכל שורה, לכל פיקסל בשורה, שלח קרן, מצא את הפגיעה הראשונה, חשב צבע וכתוב אותו לזיכרון. רק שבתמונה אחת היא רצה מאות אלפי פעמים.
שלב 3 מתוך 6
קרני צל
כדי לדעת אם נקודה מוארת, מעקב הקרניים שולח ממנה קרן צל אל נקודה על מקור האור. אם משהו חוסם אותה בדרך, הנקודה בצל. מקור האור כאן הוא לוח מרובע, וכל קרן צל יוצאת אל נקודה אקראית עליו.
נסו: הזיזו את מעקב אחר הקרניים אל קרני צל. הקרניים הזהובות מגיעות אל האור, והאדומות נחסמות. אחר כך החזירו אותו אל תמונה.
גודל מקור האור עומד עכשיו על 2 m. הסתכלו על שולי הצל של הכדור האדום, ונבאו.
שלב 4 מתוך 6
החזרות
קרן שפוגעת במראה ממשיכה בכיוון המוחזר. קרן שפוגעת במשטח מט, כמו הקיר או הקופסה הכחולה, מתפזרת לכיוון אקראי ולוקחת איתה את הצבע שלו. כך אור שחוזר מהקיר מאיר גם את הצד המוצל של הכדור, כמו בחדר אמיתי. החזרות קובע כמה פעמים קרן יכולה לשנות כיוון, והוא נעול עכשיו על 3.
כל החזרה עולה עוד קרניים, ומי שכותב מעקב קרניים צריך לדעת כמה עבודה מחכה לו בכל פיקסל.
שלב 5 מתוך 6
רעש
כל קרן שמתפזרת בוחרת כיוון אקראי, ולכן שתי קרניים דרך אותו פיקסל מחזירות צבעים שונים. הפיקסל הוא ממוצע של הקרניים שלו. עם מעט קרניים הממוצע קופץ מפיקסל לפיקסל, והתמונה מנומרת: זה רעש. קרניים לפיקסל נעול עכשיו על 16, והגרף שליד הסצנה מראה כמה רעש נשאר.
סרטים מונפשים מחשבים אלפי קרניים לכל פיקסל, במשך שעות לכל תמונה. משחקים חייבים לצייר תמונה בכל חלקיק שנייה, ולכן הם שולחים מעט קרניים ומנקים את הרעש בעזרת מסנן.
שלב 6 מתוך 6
התמונה כולה
כמה עבודה דורשת תמונה אחת? סופרים פיקסלים, קרניים לפיקסל, וקרניים לכל מסלול.
הגרסה האינטראקטיבית נטענת…
הגרסה האינטראקטיבית נטענת…
כל שלב מכין לכם את הסצנה, ובקר שמסומן „קבוע” נשאר במקומו בשלב הזה.
תרגול · בחרו
בסצנה שתי תמונות של אותו סט. הסטודיו כולו מצויר כמו כל סצנה באתר, ברסטריזציה. התמונה שעל המסגרת שלפני המצלמה חושבה במעקב קרניים. מה מראה כדור המראה בכל אחת מהן?
תרגול · בחרו
בסצנה שתי תמונות של אותו סט. הסטודיו כולו מצויר כמו כל סצנה באתר, ברסטריזציה. התמונה שעל המסגרת שלפני המצלמה חושבה במעקב קרניים. מה מראה כדור המראה בכל אחת מהן?
תרגול · בחרו
באור אמיתי הפוטונים יוצאים ממקור האור, פוגעים בחפצים, ורק חלק זעיר מהם מגיע אל המצלמה. מאיפה יוצאות הקרניים שהמחשב עוקב אחריהן?
תרגול · בחרו
באור אמיתי הפוטונים יוצאים ממקור האור, פוגעים בחפצים, ורק חלק זעיר מהם מגיע אל המצלמה. מאיפה יוצאות הקרניים שהמחשב עוקב אחריהן?
תרגול · נבאו, ואז הסתכלו
גודל מקור האור עומד על 2 m, סופטבוקס גדול. מה יקרה לשולי הצללים כשתורידו את גודל מקור האור עד 0.1 m?
תרגול · נבאו, ואז הסתכלו
גודל מקור האור עומד על 2 m, סופטבוקס גדול. מה יקרה לשולי הצללים כשתורידו את גודל מקור האור עד 0.1 m?
תרגול · חשבו
החזרות עומד על 3. בכל פגיעה במשטח מט נשלחת קרן צל אחת אל מקור האור, ואם נשארו החזרות, הקרן ממשיכה מהנקודה בכיוון חדש. לכל היותר, כמה קרניים בסך הכול יכולה קרן מצלמה אחת לגרור, כולל היא עצמה?
תרגול · חשבו
החזרות עומד על 3. בכל פגיעה במשטח מט נשלחת קרן צל אחת אל מקור האור, ואם נשארו החזרות, הקרן ממשיכה מהנקודה בכיוון חדש. לכל היותר, כמה קרניים בסך הכול יכולה קרן מצלמה אחת לגרור, כולל היא עצמה?
תרגול · נבאו, ואז הסתכלו
ב־16 קרניים לפיקסל, הגרף שליד הסצנה מראה כמה רעש נשאר ביחס לקרן אחת. מה יקרה לרעש כשתעברו ל־64 קרניים לפיקסל, פי ארבעה?
תרגול · נבאו, ואז הסתכלו
ב־16 קרניים לפיקסל, הגרף שליד הסצנה מראה כמה רעש נשאר ביחס לקרן אחת. מה יקרה לרעש כשתעברו ל־64 קרניים לפיקסל, פי ארבעה?
תרגול · חשבו
התמונה ברוחב 96 פיקסלים ובגובה 60. קרניים לפיקסל: , והחזרות: , כך שכל קרן מצלמה גוררת עד קרניים. כמה קרניים לכל היותר דורשת התמונה כולה?
תרגול · חשבו
התמונה ברוחב 96 פיקסלים ובגובה 60. קרניים לפיקסל: , והחזרות: , כך שכל קרן מצלמה גוררת עד קרניים. כמה קרניים לכל היותר דורשת התמונה כולה?
השיעור הושלם. עניתם על כל שאלות התרגול בו.
