שתף קטע נבחר

Direct מה?- חלק ב'

מה זה בכלל DirectX ולמה הוא נדחף לכל משחק? מה נרוויח מהתקנתו (לבד מ-Restart)? על הרכיב הכי פאנקי במערכת ההפעלה שלכם. חלק שני ואחרון

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

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

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

Direct - בגלל הגישה הישירה לחומרה; "X" - בגלל מגוון ההתקנים אליהם נפתחה הגישה: Sound, Input, Draw, 3D ו-Play.

 

ספריית קוד לתוכניתנים

 

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

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

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

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

 

לא להתעסק עם המשוגעים

 

DirectX חזקה פחות ממה שהייתה יכולה להיות, אבל אילו הייתה חזקה יותר לא הייתה מתקיימת כלל. מבלבל? כדי להבין את המשפט הזה יש להבין את אופי התעשייה.

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

למרות ההמנעות המופגנת של מיקרוסופט מלהוסיף אלמנטים החורגים מהרמות הבסיסיות ביותר, DirectX הכניסה את התעשייה כולה לסחרור. הקלות בה ניתן לפתח היום משחק ל-PC מאפשרת לקבוצות קטנות של מפתחים לפתח בעלויות מינימליות משחקים עתירי כישרון וחזון. דוגמא אחת לקבוצה כזו היא Croteam. זהו הצוות הקרואטי שפיתח את Serious Sam, ה-Shooter הכי נטול פואנטה (קשה להאשים אותו בהתחשב בזה שהוא נועד בעיקר כדי להדגים יכולות של המנוע), והכי היפראקטיבי של השנים האחרונות (המשחק רץ על Serious Engine המופלא).

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

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

 

מה נשתנה?

 

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

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

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

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

פורסם לראשונה

 

  תגובה חדשה
הצג:
אזהרה:
פעולה זו תמחק את התגובה שהתחלת להקליד
מומלצים