▷ אונגל: מה זה ולשם מה זה
תוכן עניינים:
האם שמעת פעם על OpenGL ? זה הפך במהרה לממשק ה- API הגרפי המוביל בתעשייה בזמן אמת מכיוון שהוא בעצם היחיד הזמין בפלטפורמות מרובות. היום אנו מביאים לכם את המאמר הזה בו אנו מסבירים מה זה OpenGL ולמה הוא מיועד.
מדד התוכן
היסטוריה
בשנות ה -80 פיתוח תוכנה שתואם מגוון רחב של חומרה הקשורה לעולם הגרפי היה אתגר אמיתי עבור המפתחים. היית צריך להתמודד עם ממשקים שונים מאוד ולכתוב מנהלי התקנים ספציפיים עבור כל סוג חומרה, והיה יקר מאוד , ולכן צוותי מתכנתים הוצאו למיקור חוץ כדי להאיץ את הפיתוח. מכיוון שכל צוות עבד בנפרד על הממשקים שלהם, הופק קוד מיותר. בשנת 1992 הוביל SGI את הקמת מועצת הסקירות של OpenGL Architecture Review (OpenGL ARB), קבוצת חברות שתחזק ותארך את המפרט בשנים שלאחר מכן. OpenGL התפתח מ- IRIS GL, והתגבר על בעיית תלות החומרה שלה בכך שהיא מציעה אמולציה של תוכנה עבור אותם תכונות שאינן נתמכות. לפיכך, יישומים יכולים להשתמש בגרפיקה מתקדמת במערכות חלשות יחסית.
כדי להבין מה זה OpenGL עלינו לדעת תחילה מה זה API.
הבנת OpenGL, מה זה API?
ממשק API או תכנות יישומים הוא קבוצה של קודים שניתן להשתמש בהם עבור יישומים שונים כדי לתקשר זה עם זה. זה דבר שמבצע משימה הדומה לממשק המשתמש בקידום האינטראקציה בין אדם לתוכנית, בלבד, המיושמת אך ורק בסביבת התוכנה. הוא משמש לחיבור קודים או פונקציות בין פלטפורמות שונות, כך שתוכלו לנצל את השירותים של אתר אחד באתר אחר.
מה זה OpenGL?
זה נחשב בעיקר לממשק API המספק לנו מערכת נהדרת של פונקציות בהן אנו יכולים להשתמש כדי לתפעל גרפיקה ותמונות דו-ממדיות ותמונות. עם זאת, כשלעצמו זה לא סתם ממשק API, אלא מפרט, שפותח ומתוחזק על ידי קבוצת חרונוס. הוא משמש גם לפיתוח משחקי וידאו, שם הוא מתחרה עם Direct3D בפלטפורמת מיקרוסופט.
מציין בדיוק מה הפלט של כל פונקציה צריך להיות ואיך הוא אמור לעבוד. מכיוון שמפרט ה- OpenGL אינו מספק פרטי יישום, ייתכן שלגירסאות המפותחות בפועל יש יישומים שונים, כל עוד תוצאותיהן תואמות את המפרט (ולכן זהות למשתמש).
מפתחים של ספריות OpenGL הם בדרך כלל יצרני כרטיסי מסך. כל GPU תומך בגרסאות ספציפיות של API זה, שהן גרסאות OpenGL שפותחו במיוחד עבור אותו כרטיס גרפי. לדוגמה, כאשר משתמשים במערכת מחברה כמו אפל, הם מתחזקים את ספריית OpenGL, ותחת לינוקס יש שילוב של גרסאות של ספקי גרפיקה והתאמות לספריות אלה. פירוש הדבר יכול להיות שבכל פעם ש- OpenGL מציגה התנהגות מוזרה שאסור שהיא אמורה לעשות זאת, סביר להניח כי אשמתם של יצרני כרטיסי הגרפי. בכל פעם שיש שגיאה ביישום, זה נפתר בדרך כלל על ידי עדכון מנהלי ההתקן של הכרטיס הגרפי. מנהלי התקנים אלה כוללים את הגרסאות האחרונות בהן ה- GPU תומך. מסיבה זו מומלץ תמיד לעדכן את מנהלי ההתקנים.
מטרות OpenGL
היעדים העיקריים הם:
- צמצם את המורכבות של הממשק עם כרטיסי הגרפיקה השונים , והציגו למתכנת ממשק API ייחודי ואחיד. הסתר את היכולות השונות של פלטפורמות חומרה שונות , ומחייב שכל היישומים יתמכו במערך המלא של תכונות OpenGL (באמצעות אמולציה של תוכנה במידת הצורך).
הפעולה הבסיסית של OpenGL היא לקבל פעולות פרימיטיביות כמו נקודות, קווים ומצולעים ולהמיר אותן לפיקסלים. תהליך זה מבוצע על ידי צינור גרפי המכונה OpenGL State Machine. מרבית פקודות OpenGL מפעילות פעולות פרימיטיביות לפילוח גרפים. עד ליציאת גרסה 2.0, כל שלב בפילוח בוצע בפונקציה מבוססת, מה שהביא לתצורה מועטה. החל מגרסה זו, ניתן לשלוט כמה שלבים באמצעות GLSL.
הרחבות
תכונה נהדרת ומעניינת מאוד היא תמיכה בהרחבה. בכל פעם שחברת GPUs מציגה טכנולוגיה חדשה או דרך חדשה של אופטימיזציה לייצור תמונות תלת ממד , זה נמצא בתוסף המיושם במנהלי התקנים. אם החומרה עליה פועלת אפליקציה תומכת בתוסף זה, היזם יכול להשתמש בפונקציונליות המסופקת על ידי התוסף כדי להשיג גרפיקה מתקדמת או יעילה יותר. באופן זה, מפתח משחקי וידאו יכול להשתמש בטכניקות העיבוד החדשות הללו מבלי שיצטרך לחכות עד ש- OpenGL יכלול את הפונקציונליות בגרסאות עתידיות, פשוט על ידי בדיקה אם הכרטיס הגרפי תומך בתוסף. לעתים קרובות, כאשר סיומת פופולרית או שימושית מאוד, היא הופכת בסופו של דבר לחלק מהגרסאות העתידיות של OpenGL.
אנו ממליצים לכם כי Mad Mad משחרר תמיכה ב- Vulkan בטא הציבורי החדש שלה עבור Linuxאבולוציית OpenGL
במרץ 2015 הוצג ממשק ה- API של Vulkan כיורש של OpenGL בכנס מפתחי המשחקים. נקרא בתחילה "Next Generation OpenGL" או "glNext", ממשק התכנות הוא קוד פתוח ופלטפורמה חוצה. ההבדל עם OpenGL הוא בכך שמקדיש תשומת לב רבה יותר לחומרה במהלך התכנות, מה שמגדיל את ההספק באופן משמעותי. חלק ממשחקי המחשב כבר תומכים ב- Vulkan, אך רובם משתמשים ב- DirectX. וולקן מפותח גם על ידי קבוצת חרונוס.
אנו ממליצים לקרוא את הכרטיסים הגרפיים הטובים ביותר בשוק.
עד כה המאמר שלנו בנושא OpenGL, אני מקווה שהבנת ממה הוא מורכב ועוד. בכל מקרה, תוכלו להשאיר כל שאלה בתגובות.
התקליטור הטוב ביותר עבור אתר האינטרנט שלך או WordPress: בשביל מה הם ולשם מיועד?
אנו מסבירים מה זה CDN ומה הם ה- CDN הטובים ביותר כרגע. ביניהם ניתן למצוא את CloudFlare, Amazon AWS / Cloudfront ו- MaxCDN.
מהו זיכרון המטמון ולשם מה הוא נועד?
מהו זיכרון המטמון ולשם מה הוא נועד? אנו מסבירים לך את זה בצורה מאוד פשוטה ומובנת במאמר זה בספרדית.
מה זה amd freesync? ולשם מה זה נועד?
אנו מסבירים מה הטכנולוגיה של AMD FreeSync ומה אתה צריך כדי להפיק תועלת ממנה ✅. תאימות למסך ולכרטיס הגרפי של AMD Radeon ✅