שאלה ב OPENGL :

the another one

New member
שאלה ב OPENGL :

שלום ! מישהו יודע איך אפשר להאיץ תוכנית ב openGL ? (כבר העברתי ל 16bit ברמת צבע ואני מעדיף לא להוריד את הרזולוציה ל 800x600 ) תודה !
 
יש הרבה מאד דרכים..

תלוי מה "מעכב" אותה. אפשר להשתמש בצורה יותר חכמה ב-depth testing ואפילו לשלב alpha testing חכם כדי לחסוך רוחב סרט (שים לב שה-alpha test לא דורש גישה ל-framebuffer ולכן הוא חוסך גישה לזיכרון של המאיץ הגרפי). ויש טכניקות מפה ועד להודעה החדשה לשיפור הביצועים מבחינת גיאומטריה (שימוש ב-triangle strips במקום משולשים נפרדים איפה שאפשר וכו').
 

erezsh

New member
יש הרבה מאוד דרכים

להוריד רזולוציה/רמת צבע זה לא הפתרון. חפש חומר באינטרנט על זה. בגדול, נסה לא לצייר דברים שאתה לא רואה (Frustum Culling) וגם לבטל צדדים נסתרים של צורות (Occlision Culling). נסה להימנע מפקודת ה-scale, ולא לתת לו לעשות normalize בעצמו (זו ברירת המחדל). בפרט, כמה שפחות קריאות API, יותר טוב - כלומר אם ניתן לאגד לדוגמא כמה משולשים תחת פקודת GL_TRIANGLES אחת, זה עדיף בהרבה מלתת אותה כל פעם עבור כל משולש. עדיף לספק את הנתונים ב-float, כדי לחסוך ל-opengl את ההמרה, ובכלל לנסות להימנע מהמרות בין שלמים לשברים. יש עוד הרבה הרבה דברים. אתה בטוח שההאטה היא ב opengl, ולא בקוד שלך?
 

the another one

New member
אני בטוח שההאטה היא בקוד שלי ../images/Emo6.gif

אבל יש דרך אחרת לעשות scale ?? ולמה אתה מתכוון בלא לתת לו לעשות normalize ?
 

the another one

New member
אוף...אני צריך לממש את

ה Occlision Culling ?
לא מצאתי ב google
( אני עובד כמו prolog : אם לא מצאתי - אז אין)
 

erezsh

New member
לא

תקרא את The Red Book. אתה תחסוך לי הרבה הסברים, ותבין הרבה יותר טוב. חפש בגוגל OpenGL The Red Book
 
למעלה