צפייה בנושא: direct x - מורה נבוכים?! פורום Vgames   
כתבות   
direct x - מורה נבוכים?!   

הנושא הבא החדש ביותר | הנושא הבא הישן ביותר שלח נושא חדש  שלח תגובה פרופיל | הרשמה | העדפות | עזרה | חיפוש
מחבר נושא:   direct x - מורה נבוכים?!
mass
משתמש רשום

הודעות: 761
מ: תל אביב, ישראל
נרשם: יוני 2001

נכתב 22-09-2003 02:33     לחץ כאן על מנת לראות את הפרופיל של massפרופיל   לחץ כאן על מנת לשלוח דואל אל massדואל   ערוך/מחק את ההודעהעריכה   תגובה עם ציטוטציטוט   לחץ כאן על מנת לראות את אתר הבית של massאתר בית IP: נרשם

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

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

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

"ה-T&L; היה קונספט מהפכני. ראשית, הוא הוריד הרבה מהלחץ על המעבד הראשי, בכך שלקח ממנו חלק גדול מהעבודה הגרפית. בנוסף, עד אז המתכנתים יכלו רק להגדיר איך תראה סצנה מסויימת על המסך באופן סטטי לחלוטין ובלי שום אפשרות להגדיר תאורה דינמית או משהו מתקדם בסגנון הזה. כל זה השתנה עם הופעת כרטיסי הג`יפורס ומאוחר יותר גם כרטיסי הג`יפורס 2 - להם ניתן היה להגיד איך ישפיע מצב מסויים על התצוגה באופן דינמי. לדוגמה, צל. אותו אפקט שנראה לנו היום כל כך טריוויאלי היה בלתי אפשרי ליישום לפני צאת ה-DirectX 7, משום שהוא אפקט דינמי - צל של אדם משתנה כשאותו אדם זז."

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


"אחד הדברים הכי חשובים ש- DX9 יכול לעשות, שהוא אחד הגורמים העיקריים ליופי הוויזואלי של HL2 ושל Doom 3, הוא Displacement Mapping. בעבר, הדרך היחידה לתאר גוף תלת מימדי במרחב היתה להגדיר נקודות, לחבר אותן בקווים ולהדביק על המסגרת (Mesh) שנוצרה טקסטורות (מעין "טפטים"). DX9 מציעה שיטה חדשה לעשות את אותו דבר - שימוש ב-Displacement Mapping. בשיטה זו, לוקחים Mesh בסיסי, ועליו "מלבישים" טקסטורה מיוחדת בשחור-לבן, שמגדירה נתוני גובה. הטכניקה דומה מאוד לתמונת תבליט. התוצאה הסופית המתקבלת היא מודל תלת מימדי, כפי שמודגם בתמונות המצורפות."

שוב לא נכון! המשחק DELTA FORCE השתמש בטכנולוגיית הDISPLACEMENT MAPPING. הכותב מדבר על הBUMB MAPPING שהנה שיטה ליצור משטחים לא ישרים, וכמו כן נתנת ליצירה בלי DIRECT X 9.


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

מעבד 286 מסוגל להראות על המסך BUMP MAPPING PIXEL SHADERS ומה לא, פשוט זה לא יהיה REALTIME בדיוק.
זה המטרה שלשמה צורבים פקודות על השבבים ולא משאירים על השבבים את הפקודות הבסיסיות.

------------------

MORIDIN
משתמש רשום

הודעות: 1222
מ: חיפה, ישראל
נרשם: אפריל 2001

נכתב 22-09-2003 16:22     לחץ כאן על מנת לראות את הפרופיל של MORIDINפרופיל   לחץ כאן על מנת לשלוח דואל אל MORIDINדואל   ערוך/מחק את ההודעהעריכה   תגובה עם ציטוטציטוט   לחץ כאן על מנת לראות את אתר הבית של MORIDINאתר בית IP: נרשם

אתקן את עצמי - כל דבר אפשרי תאורטית, כמו ה-DP ב-Delta Force, רק שזה כמעט בלתי אפשרי מעשית מפני שה-CPU יעשה את כל העבודה, במקום ה-GPU.

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

כפי שכתבת, כל דבר אפשרי לביצוע על ידי המעבד הראשי. ה-DirectX עושה את זה אפשרי מעשית (ולא רק תאורטית) על ידי העברת כל העבודה הגרפית ל-GPU. כתבת שצריבת הפונקציה על ה-GPU מעלה ביצועים - וזה ה-Understatement של השנה. אם זכור לך, יצא כלי שמאפשר אמולציה של DX9 על כרטיס DX8 - אנשים הריצו את הדמואים של ATI בקצב פריימים פשוט מזעזע. זה אפשרי לביצוע על ידי ה-CPU, אבל לא אם אתה רוצה יותר מ-2FPS בדוחק. הכתבה באה לפרט את הפונקציות החדשות שצרובות על שבבים שתומכים ב-DX9 וזה בדיוק מה שהיא עשתה.

[הודעה זו נערכה על ידי MORIDIN בתאריך 22-09-2003]

mass
משתמש רשום

הודעות: 761
מ: תל אביב, ישראל
נרשם: יוני 2001

נכתב 22-09-2003 23:23     לחץ כאן על מנת לראות את הפרופיל של massפרופיל   לחץ כאן על מנת לשלוח דואל אל massדואל   ערוך/מחק את ההודעהעריכה   תגובה עם ציטוטציטוט   לחץ כאן על מנת לראות את אתר הבית של massאתר בית IP: נרשם

לא אמרתי שDISPLACEMENT MAPPING לא קיים בפונקציות שDIRECTX 9 מביאה.
אני די בטוח שעם הרבה אופטימיזיציה הם היו מריצים גם את הדמואים הללו...

------------------

הנושא הבא החדש ביותר | הנושא הבא הישן ביותר שלח נושא חדש  שלח תגובה
אפשרויות ניהוליות: סגור נושא | העבר פורום / שלח לארכיון | מחק נושא
דלג אל:

צור עמנו קשר | www.vgames.co.il

כל הזכויות שמורות ל- Vgames


Ultimate Bulletin Board 5.47d