מה לעזאזל אני מפיל פה?

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

מה לעזאזל אני מפיל פה? | רשת 13

חביות וארגזים. הרבה חביות וארגזים. משום מה שני החפצים האלה תמיד היו חלק בלתי נפרד מעולמו של הגיימר. אני זוכר את עצמי, לפני 15 שנים, מפוצץ חביות ב-Doom ומטפס על ארגזים ב-Tomb Raider, והיום אני זורק חביות על זומבים ב-Half Life 2 או מתחבא מאחורי ארגזים ב-Metal Gear Solid 4. אין ספק, חביות וארגזים ממלאים תפקיד חשוב בחייו של הגיימר, ובלעדיהם הוא אבוד.

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

והפרחים לניוטון

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

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

פיזיקה שקופה

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

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

התוצאה – המודל נראה כמו ספל קפה אך מתנהג כמו גליל. שזה לא נורא היות וספל קפה באמת מתנהג קצת כמו גליל. אבל אם, למשל, תנסו לירות בידית של ספל הקפה, הוא ישאר במקומו ולא יזוז. מה זה אומר לגבינו? משחקים עם הרבה חביות וארגזים (אהם... Half life 2) שהם, כזכור לכם, צורות המחשב מאוד אוהב.

ומה עכשיו?

הייתם חושבים שנוסחאות ניוטוניות במשחקי מחשב יספקו את קהל הגיימרים, אך לא ולא. מנועי הפיזיקה החדשים, שעומדים לצאת לשוק בקרוב, יספקו לכם משהו חדש לשחק איתו – Digital Molecular Matter. מדובר בחומרים 'רכים' כמו בד שמתקמט ונקרע בצורה מציאותית, עץ שנשבר בדיוק במקום בו פגעתם בו, או מתכת שמתעוותת בתגובה למכה עוצמתית. כמו כן חומרים גמישים כמו גומי או ספוג ואפילו נוזלים כמו נפט, כספית או כל נוזל סמיך אחר.

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