עבור לתוכן

NV25's nfiniteFX II Pixel Shaders

Featured Replies

פורסם

& NV25's nfiniteFX II Vertex Shaders

תסבירו לי בבקשה על שתי המאפיינים האלה אני פשוט קורא עליהם ולא מבין כלום תודה

פורסם

ה-nfiniteFX II הוא חלק מהמעבד הגראפי שנמצא בשבבי ה-GF4 TI שהוא בעצם שיפור של המנוע שהיה ב-GF3 TI ה-nfiniteFX והוא כולל בתוכו שני חלקים:

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

Pixel Shaders

2-Vertex Shaders - הוא החלק במנוע (יש שניים ב-GF4) שמעגל את הפינות והחיבורים בין המשולשים בסצנה תלת מימדית, בכרטיסים שקדמו ל-GF3 TI לא היה הרכיב הזה והמעבד נאלץ לעשות את העבודה.

Vertex Shaders

ההסברים הם על רגל אחת והוספתי קישורים עם הסברים יותר מפורטים באתר של טום.

פורסם

אני רואה שהחבר'ה פה לא ממש בקיאים בתלת מימד. ;D ;D

Vertex Shader:

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

Pixel Shader:

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

פורסם

תודה לך Toxigun על ההודעה המדויקת והמעניינת.

פורסם

8)

פורסם

גם אני חייב לך תודה, העשרת את ידיעותיי.

פורסם

אני רואה שהחבר'ה פה לא ממש בקיאים בתלת מימד. ;D ;D

Vertex Shader:

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

Pixel Shader:

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

אמרת בדיוק את אותו דבר רק במילים אחרות.

פורסם

הוא ממש לא אמר את אותו הדבר, והוא גם צודק.

ifiniteFX II הוא חלק מהמעבד הגראפי שנמצא בשבבי ה-GF4 TI שהוא בעצם שיפור של המנוע שהיה ב-GF3 TI ה-nfiniteFX והוא כולל בתוכו שני חלקים:

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

Pixel Shaders-

זה ידידי תפקידה של מערכת ה Occular culing engine

2-Vertex Shaders - הוא החלק במנוע (יש שניים ב-GF4) שמעגל את הפינות והחיבורים בין המשולשים בסצנה תלת מימדית, בכרטיסים שקדמו ל-GF3 TI לא היה הרכיב הזה והמעבד נאלץ לעשות את העבודה.

Vertex Shaders.

זה ה Anti Aliasing Engine

פורסם

אני רואה שהחבר'ה פה לא ממש בקיאים בתלת מימד. ;D ;D

Vertex Shader:

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

התוצאה היא שהוא קובע מה יוצג ומה לא, אתה רק הסברת את הדרך.

Pixel Shader:

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

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

ואין שום קשר ל-FSAA שתפקידו הוא להעלים את המדרגות שנוצרות בחיבורים בגלל צורתן הרבועה של הפיקסלים.

פורסם

הנה תגובתי:

1) קודם כל תפתחו קצת ב-OpenGL ותקראו קצת ספרות מקצועית בנושא התלת-מימד

2) קיימים מספר דברים שקובעים אילו פיסלים יוצגו, ואילו לא יוצגו:

* בדיקת עומק (Depth Test). בודק את קואורדינטת ה-Z של כל פיקסל.

* בדיקת אלפא (Alpha Test). בדיקה זו בודקת את רכיב ה-Alpha של כל פיקסל.

* בדיקת שכפול (Stencil Test). בדיקה זו בודקת מאפיין שנקרא Stencil של פיקסלים קיימים. אני לא הולך להרחיב בנושא.

פיקסל שלא עובר את אחת מהבדיקות הללו לא מוצג. בדיקות אלו הן לא חלק ב-Pixel Shaders והן מתבצעות אחרי הרצתם.

3) אילו חלקים של הגאומטריה יוצגו ואילו לא קובעים מספר דברים:

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

* Hidden Surface Removal - שיטות שונות לבדיקה של גאומטריה "מוסתרת".

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

Vertex Shaders מהווים את תהליך הטרנספורמציה.

יחידת ה-Vertex Shader לא יכולה לפסול גאומטריה כך שלא תעבור לשלבי העיבוד הבאים.

כל מי שחושב אחרת - טועה.

פורסם

הנה תגובתי:

1) קודם כל תפתחו קצת ב-OpenGL ותקראו קצת ספרות מקצועית בנושא התלת-מימד

2) קיימים מספר דברים שקובעים אילו פיסלים יוצגו, ואילו לא יוצגו:

* בדיקת עומק (Depth Test). בודק את קואורדינטת ה-Z של כל פיקסל.

* בדיקת אלפא (Alpha Test). בדיקה זו בודקת את רכיב ה-Alpha של כל פיקסל.

* בדיקת שכפול (Stencil Test). בדיקה זו בודקת מאפיין שנקרא Stencil של פיקסלים קיימים. אני לא הולך להרחיב בנושא.

פיקסל שלא עובר את אחת מהבדיקות הללו לא מוצג. בדיקות אלו הן לא חלק ב-Pixel Shaders והן מתבצעות אחרי הרצתם.

3) אילו חלקים של הגאומטריה יוצגו ואילו לא קובעים מספר דברים:

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

* Hidden Surface Removal - שיטות שונות לבדיקה של גאומטריה "מוסתרת".

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

Vertex Shaders מהווים את תהליך הטרנספורמציה.

יחידת ה-Vertex Shader לא יכולה לפסול גאומטריה כך שלא תעבור לשלבי העיבוד הבאים.

כל מי שחושב אחרת - טועה.

אני לא חושב שהוא רצה הסברים כל כך מעמיקים.

אבל כבר נמאס לי להתווכח...אתה צודק!

פורסם

התגובה לא הייתה בשבילו - היא היתה בשבילך. 8)

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

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים