לאחר הופעתו של התלת מימד, שהתחקה אחר תלם עידן בהיסטוריה של משחקי הווידאו, ששינה לנצח את העיצוב ובכלל את הגישה לפיתוח המדיה האהובה עלינו, עקומת האבולוציה הגרפית עברה דרך רכה וליניארית יותר: מעל בשנים גדל כוח החומרה וכתוצאה מכך המצולעים גדלו, הרזולוציות ואיכות הטקסטורה השתפרו, הוצגו אפקטים של חלקיקים ולבסוף תאורה דינמית הפכה לקבועה.
הופעת הדור הראשון של כרטיסי הגרפיקה NVIDIA GeForce RTX, ואחריו מעבדי ה-AMD העדכניים ביותר ומלווה בהגעתה של בינה מלאכותית, עם טכנולוגיות כמו DLSS ו-FSR, סימנה צעד נוסף קדימה לעבר המטרה של פוטוריאליזם וכמה טכנולוגיות שעד אז היו שמורות לעולם הקולנוע והגרפיקה המקצועית עשתה את דרכם גם לקטע משחקי הווידאו.
אנחנו מדברים עלRay Tracing, טכניקת עיבוד שחוללה מהפכה בדרך הבנת התאורה במשחקי וידאו, ושיפרה משמעותית את האיכות הגרפית הכוללת עם השלכות, שעדיין לא באו לידי ביטוי במלואן, גם על הפיזיקה. אֲבָלמה זה Ray Tracing ואיך הטכנולוגיה הזו עובדת?בואו ננסה לברר ביחד.
Ray Tracing: הדמיית את הפיזיקה של האור
החל מההגדרה, הRay Tracing היא טכניקת עיבוד המדמה את נתיב האור דרך סצנה וירטואלית, חישוב מפורט של האינטראקציה שלו עם האובייקטים הקיימים בסצנה.
זה קורה על ידי מעקב אחר נתיב קרני האור מהמקור לעיני השחקן: כאשר קרן פוגעת באובייקט, יכולות להתרחש אינטראקציות שונות, כמו השתקפות, שבירה או בליעה. אינטראקציות אלו מחושבות במדויק עבור כל קרן, ומייצרות אפקטים של אור טבעי המדמים את ההתנהגות האמיתית של האור.
Ray Tracing משתמש באלגוריתמים מורכבים כדי לקבוע את התנהגות קרני האור, תוך התחשבות בגורמים כמו גיאומטריה של עצמים, חומרים ותכונות אופטיות של משטחים. כל קרן מתחקה דרך הסצנה, מקיימת אינטראקציה עם אובייקטים בדרך וצוברת מידע על התאורה והצבע הסופי של הפיקסלים שנתקלים בהם בדרך. תהליך זה דורש כוח מחשוב משמעותי: ככל שמדומים יותר קרניים, כך נדרשים יותר משאבי חומרה. השימוש ב-Ray Tracing לעיבוד הסצנה כולה בזמן אמת הוא אפוא, עד היום, תהליך תובעני מדי אפילו עבור החומרה המתקדמת ביותר.
כדי להתגבר על בעיה זו, "מוקרנות" רק הקרניים שבאמת תורמות להרכב הסצנה, ומבטלות את אלו שאינן מקיימות אינטראקציה ישירה עם האובייקטים הנוכחים או שמקפצות באופן בלתי מוגבל.
בין הטכניקות העיקריות המשמשות למיטוב Ray Tracing בתוך משחק וידאו, יש להזכיר את Ray Casting, Bounding Volume Hirarchy ו-Denoising Filtering: התהליך הבסיסי ב-Ray Tracing כולל "שיגור" של קרניים,ריי ליהוקבדיוק, מהמצלמה דרך כל פיקסל של התמונה בסצנה הווירטואלית. כל קרן מייצגת נתיב שאור יכול לעקוב אחריו ממקור האור למצלמה. במהלך תהליך זה, אובייקטים בסצנה נחתכים כדי לקבוע אילו אלמנטים נראים מנקודת המבט של המצלמה ולכן, למשל, מנקודת מבטו של השחקן.
Ilהיררכיית נפח תוחמת (BVH)או "Bounding Volume Hierarchy", היא טכניקה המשמשת באופטימיזציה של מעקב אחר קרניים ויישומי גרפיקה ממוחשבת אחרים כדי להאיץ את תהליך זיהוי התנגשות ועיבוד של סצנות מורכבות. BVH מארגן אובייקטים בתוך סצנה למבנה היררכי של נפחים תוחמים, הנקראים נפחים תוחמים. נפחים תוחמים אלה הם בדרך כלל פשוטים לחישוב ומתארים בקירוב את הצורה והמיקום של אובייקטים בתוך הסצנה. בהקשר של Ray Tracing, נעשה שימוש ב-BVH כדי לקבוע אילו אובייקטים או חלקים מהסצנה יש לחשב כדי להצטלב עם קרני האור המשוגרות על ידי המצלמה. באמצעות BVH ניתן לצמצם משמעותית את מספר הצמתים לחישוב, שכן ניתן להימנע מניתוח עצמים שאינם כלולים בנתיב קרן האור.
לאחר מכן לתקן את ה"רעש" שנוצר על ידי הקירוב, מה שנקראדנוייזר, שעליו דיברנו לעומק אצלנומדריך ל-DLSS 3.5 ו-Ray Reconstruction.
לבסוף, יש להדגיש שרוב היישומים של Ray Tracing במשחקי וידאו מודרניים משתמשיםטכניקות עיבוד היברידי, המעמידים בספק את הרסטריזציה המסורתית יותר.
הרסטריזציה היא השיטה המסורתית המשמשת במעבדי GPU לעיבוד גרפיקה תלת מימדיתבזמן אמת: זה מתחיל בתיאור הגיאומטרי של סצנה, הכולל קודקודים, משולשים ואלמנטים גיאומטריים אחרים. לאחר מכן, הסצנה מוקרנת על מסך שטוח, המחולק לפיקסלים: ה-GPU קובע אילו משולשים בסצנה חופפים לאותם פיקסלים. לבסוף, מופעלת סדרה של פעולות, כגון טרנספורמציות גיאומטריות, תאורה, מיפוי טקסטורה והצללה, כדי לחשב את הצבע הסופי של כל פיקסל על סמך המשולשים החופפים. כבד ככל שיהיה,תהליך הרסטריזציה פחות מכביד מאשר איתור קרניים: השתקפויות, צללים ושבירה עיקריים מואצלים לאחרונים, בעוד שהרסטריזציה משמשת לחישובי תאורה פשוטים יותר.
בדרך זו ניתן להשיג תוצאות מרהיבות מנקודת מבט של איכות גרפית,מבלי לפגוע בביצועי המשחקים.
כאשר החומרה עושה את ההבדל
Ray Tracing דורש כוח מחשוב משמעותי ביותר וכדי להשיג תוצאות אופטימליות מבלי לפגוע בשימושיות של משחק, נדרשת חומרה מעוצבת במיוחד. במובן זה, הגישה של יצרנים שונים כגון NVIDIA ו-AMD שונה באופן מהותי.
החברה בראשות Jensen Huang הובילה את "מהפכת" התאורה: NVIDIA השיקה לשוק קו של GPUs המצוידים ביחידות המתמחות בחישוב של Ray Tracing (ולאחר מכן Path Tracing). מאז האיטרציה הראשונה של טווח כרטיסי המסך NVIDIA GeForce RTX, עם ארכיטקטורת Turing,הבית הירוק הציב את ליבת RT (Ray Tracing Core): הליבות הללו תוכננו והוטבו לביצוע חישובים מורכבים הקשורים לסימולציה של מעקב אחר אור, כגון הצלבת קרניים עם אובייקטים של סצנה, חישוב השתקפויות ושבירה, צללים ועוד הרבה יותר. חומרה זו מנצלת יכולות מחשוב מקבילות ומשולבת בצורה מושלמת בארכיטקטורות ממותגות NVIDIA, עובדת בסימביוזה עם ליבות ה-CUDA, ליבות הטנסור ויחידות הרסטר: הניהול המתואם של עומס העבודה על כל הרכיבים מאפשר לך לקבל תהליך עיבוד מהיר ומדויק יותר. .
האבולוציה של כרטיסי המסך של NVIDIA תרמה לשיפור ביצועי Ray Tracing: עםקודם אדריכלות אמפר ואחר כך עדה לאבלייס, הבית הירוק הטמיע יותר ויותר ליבות RT בעלות ביצועים גבוהים ומספר רב יותר של יחידות מחשוב ייעודיות.
היישום והשילוב של בינה מלאכותית ב-GPUs שלה אפשרו ל-NVIDIA גם לשפר טכניקות רינדור קיימות, כמו גם להציג פתרונות חדשים: כפי שהסברנו בהרחבה במיוחד ב-DLSSוב-Ray Reconstruction, הענק הקליפורני הצליח להפוך את השימוש ב-Ray Tracing (ולאחר מכן Path Tracing) לאפשרות קונקרטית.
AMD במקום זאת אימצהגישה יותר ממוקדת תוכנה: לכרטיסים הגרפיים של הבית האדום אין יחידות חומרה ייעודיות ומנצלים את יכולות המחשוב שלארכיטקטורת RDNAכדי להשיג תוצאות דומות. החל מ- Radeon RX 6000 GPUs, ארכיטקטורת RDNA 2 הביאה איתהמה שנקרא מאיצי ריי, יחידות מחשוב שאמנם משולבות במחשובים ממוזגים רגילים (ולכן לא ניתנות להשוואה לליבות RT), מותאמות ל-Ray Tracing.
למרות שהאיכות והביצועים של הטכניקות שבהן משתמשת AMD עדיין ברמה נמוכה יותר מאלו של המתחרים, סוג זה של גישה אפשרה לבית האדום לספקתמיכה ב"קוד פתוח"., הרחבת התאימות של טכנולוגיות הגרפיקה שלה לרוב החומרה הזמינה בשוק.
נתיב נתווה
למרות ש-Ray Tracing היא טכנולוגיה צעירה למדי במגזר המשחקים, ההשפעה שהייתה לה על כל התעשייה כבר משמעותית, במיוחד בגזרת משחקי המחשב האישי. הדרך קדימה להגיע ליישום הכללי של טכניקת תאורה זו עדיין ארוכה ובהכרח עוברת דרךפיתוח מקביל של בינה מלאכותית ומעל הכל מעולם הקונסולות: אם הדור הנוכחי של מכונות המשחקים הביתיות השתמש ב-Ray Tracing יותר למטרות שיווק מאשר ככלי אמיתי לשיפור הגרפיקה, הסיבוב הבא של קונסולות לא יכול להיכשל במתן חומרה המסוגלת לתמוך באופן מלא בטכנולוגיה זו.
עם זאת, בחזית המשחקים, כבר ראינו כיצד Ray Tracing (ועוד יותר מכך Path Tracing) מסוגל לשנות באופן עמוק את החוויה הסופית: מההדגמה הנפיצה הראשונה של Metro Exodus, ועד להתבגרות המוחלטת שהתרחשה עםאלן ווייק 2מאת Remedy טכניקות תאורה אלו הוכיחו שהן יכולות למקסם את הביצועים החזותיים של כותר, להשפיע לטובה על הכיוון האמנותי וגם לספק טעימה ראשונה מהפוטנציאל ה"פיזי" שיכול להיות להדמיה נכונה של התנהגות האור.