עם שחרורו שלmacOS Sonoma, אפל גם עדכנה את הגרסאות העדכניות של כלי מפתחי Metal לשימוש ב-Windows. הנה איך להשיג אותם ולהשתמש בהם.
מתכת היא המסגרת הגרפית של אפל עבורmacOS. מתכת מאפשרת לך ליצור גרפיקה דו-ממדית ותלת-ממדית עשירה ועשירה באמצעות המנוע הגרפי של אפל המותאם לכל מכשירי אפל.
בעוד Metal פועל על מכשירי Apple, אתה יכול גם להשתמש ב-Microsoft Windows כפלטפורמה ליצירת נכסים, תמונות, הצללות ומרקמים לשימוש ב- Metal.
לאפל יש שתי הורדות של Metal for Windows באתר כלי המפתחים שלה: Metal Developer Tools 4.0 עבור Windows ו- Metal Shader Converter עבור Windows. אתה יכול להוריד את שניהם על ידי כניסה לחשבון המפתח שלך באפל באופן מקוון.
כדי להוריד את Metal Developer Tools עבור Windows, היכנס לחשבון המפתח שלך ב-Apple, עבור אלעמוד הורדותבדפדפן האינטרנט שלך וגלול מטה אלכלי מפתחי מתכת עבור Windows:
הורד את כלי מפתחי מתכת עבור Windows 4.
לחץ עלהצג פרטיםהחץ ולאחר מכן לחץ עלMetal Developer Tools 4.0 Windows.pdfוMetal Developer Tools 4.0 Windows.exeכדי להוריד אותם לאחסון המחשב שלך.
לאחר מכן, גלול מעט למטה אלממיר הצללה מתכת עבור Windowsולחץ עלהצג פרטיםהחץ ולאחר מכן לחץ עלMetal Shader Converter עבור Windows.pdfוMetal Shader Converter עבור Windows.exeכדי להוריד אותם לאחסון המחשב שלך:
הורד את Metal Shader Converter עבור Windows.
הַתקָנָה
העבר את כל הפריטים שהורדת לתיקיה חדשה. כעת אמורים להיות לך ארבעה פריטים. ייתכן שתרצה לקרוא את שני קבצי ה-PDF לפני ההתקנה:
הורדת כלי Windows.
לאחר מכן, אם הורדת את הקבצים שלךמק, חבר כונן USB תואם Windows או דיסק אחר והעתק אליו את ארבעת הפריטים. אתה תשתמש בכונן האצבע כדי להעתיק את הקבצים למחשב Windows 10 או 11 שלך.
לאחר סיום ההעתקה, חבר את כונן ה-USB למחשב Windows שלך והעתק את ארבעת הקבצים. הפעל את שני קובצי ההתקנה של .exe כדי להתקין את הכלים במחשב Windows שלך.
כפי ש- Metal Developer Tools עבור Windows PDF קובע:
"כברירת מחדל, החבילה מותקנת לתוך%PROGRAMFILES%\Metal Developer Tools
. בהתקנה, תמצא:
bin
מכיל את הכלי TextureConverter.
include
מכיל את הכותרות עבור ספריית AppleTextureConverter.
lib
מכיל את ספריית AppleTextureConverter.
metal\ios
מכיל את קבוצת הכלים לשימוש בעת מיקודiOSוtvOS.metal\macos
מכיל את קבוצת הכלים לשימוש בעת מיקוד ל-macOS.
כלי המפתחים של מתכת צריכים להתאים לגרסה של ערכות ה-SDK של מערכת ההפעלה שאליו אתה מתכנן למקד עבור הגרסה שלך."
הוא גם קובע כי מלבד התקנות ה-GUI, המתקין יכול לתמוך גם בהתקנות שורת פקודה כמו:
"Metal Developer Tools-Windows.exe" /S /D=C:\Users\My Name\Sandbox\Tools
לאחר ההתקנה, אתה יכול להשתמש בכלים כדי להמיר shaders ונכסים במחשב Windows שלך לפורמטים שבהם מתכת משתמשת.
הכלי הראשון,TextureConverter
ממיר מרקמים שנוצרו על ידי Windows לפורמטי טקסטורה דחוסים של GPU שמקבל מתכת. כדי לראות פרטים ואפשרויות הפעלה עבורTextureConverter
, הקלד:
TextureConverter.exe --h
לתוך שורת פקודה ב-Windows ולחץלַחֲזוֹראוֹלְהַכנִיס.
כפי שמציינת הערת המפתח, לשלבTextureConverter
לתוך כלי מרקם Windows משלך, השתמש בספריית AppleTextureConverter המסופקת, וקרא אתAppleTextureConverter.h
קובץ כותרת למידע נוסף.
כלולים גם כלים להידור גרפיקה והצללות מחשוב מ-Windows לתוך אובייקטי ספריית מתכת באמצעות שפת Apple Metal Shading.
אין הערה מסופקת עם כלי Windows כיצד לעשות זאת, אז תצטרך לקרואבניית ספריית Shader על ידי קומפילציה מראש של קבצי מקורב-ספריית שאדרסעיף שלתיעוד->מתכתאזור תיעוד המתכת המקוון של אפל.
למעשה תשתמש בכלים כדי לעבור מפורמטים של Windows DXIL לפורמט .air הביניים, ולאחר מכן לקובץ .metalar ו-.metallib שניתן לטעון לתוךXcodeולהפעיל מהאפליקציה שלך בזמן ריצה. מתוך התיעוד:
"כלי מהדר המתכת ממיר כל קובץ מקור הצללה לקובץ ייצוג ביניים. הכלים metallib ו-metal-ar לאחר מכן מרכיבים קבצי ייצוג ביניים לספרייה וארכיון בינארי, בהתאמה".
כפי שצוין בתיעוד, כלי שורת הפקודה Metal עבור Windows משתמשים באותן אפשרויות וארגומנטים כמו עמיתיהם ב-macOS.
הכלי הנוסף עבור Windows שמתקין הוא Metal Shader Converter עבור Windows.
כלי זה ממיר ייצוגי ביניים בצורת bytecode LLVM IR לקוד בתים המתאים לטעינה לתוך Metal.
LLVM היא תשתית המהדר בקוד פתוח המשמשת Xcode במהלך הידור של פרויקטים.
תוכל לקרוא עוד על LLVM בכתובתllvm.orgופורמט ה-bytecode (LLVM קורא לזה "bitcode") בדף ה-bitcode באתר זה.
פורמט ה-bytecode מכוסה גם בספרספר בישול של LLVMמ-PACKT Publishing.
ממיר ה- Metal Shader מסופק גם ככלי עצמאי וגם כספרייה שתוכל לשלב בכלים משלך אם תרצה.
כמו כן, עיין בקובץ הכותרות המצורףmetal_irconverter_runtime.h
.
Metal Shader Converter עבור Windows דורש Microsoft Windows 10 ואילך, כמו גם Microsoft Visual Studio 2019 ואילך.
ספריות שנבנו באמצעות ממיר Metal Shader עבור Windows פועלות רק עם macOS 14 Sonoma, וiOS 17. אם הם בנויים עבור גרסאות מערכת הפעלה קודמות, ייתכן שחלק מהתכונות לא יהיו זמינות.
השימוש הראשון והפשוט ביותר בממיר Metal Shader עבור Windows הוא המרת הצללה של Windows DirectX DXIL (DirectX Intermediate Language) לספריית הצללה מתכת. ניתן לעשות זאת באמצעותmetal-shaderconverter
כלי שורת הפקודה.
לְדוּגמָה:
metal-shaderconverter shader.dxil -o ./shader.metallib
אתה יכול לקבל מידע נוסף עלmetal-shaderconverter
ב-Windows על ידי הפעלהmetal-shaderconverter --help
בשורת פקודה.
יש גם אlibmetalirconverter
ספריית קוד דינמית (dylib) מסופקת שעובדת עם C, C++, Objective-C ו-מָהִירפרויקטים המאפשרים לך להמיר DXIL למתכת באמצעות הקובץ המצורףIRCompiler
מַחלָקָה.
קוד המרה כזה הוא די פשוט וקוד לדוגמה של פחות מעמוד מסופק ב- Metal Shader Converter PDF.
בעיקרו של דבר להשתמש במסופקIRCompiler
מחלקה, תחילה אתה יוצר מופע של האובייקט, מגדיר שם נקודת כניסה, ממירה אובייקט DXIL לאובייקט IR באמצעותIRObject
class, קומפל אותו ל- Metal באמצעות הIRCompilerAllocCompileAndLink()
לתפקד, ולבדוק את הפלט.
המסופק
מהדר Metal Shader הארוך למדי בן שלושים עמודים עבור Windows PDF נכנס לשורה של אפשרויות אחרות בהן תוכל להשתמש להמרה מ-Windows ל-Apple Metal, כולל תכונות קודקוד, אובייקטי מצב דגימה, מאגרי ארגומנטים, מעקב אחר קרניים ועוד.
יש גם טיפים להשגת ביצועי מתכת אופטימליים ועצות לטיפול בצינורות הצללה מורכבים, כולל גיאומטריה וטסל.
ה-PDF ממליץ גם להסתכל על פרויקט הקוד לדוגמה Metal של אפל Learn Metal עם C++ עלקוד לדוגמא מתכתעַמוּד.
משאבים נוספים
אם אינך יודע C++, תרצה להתחיל עם ספר קלאסי פשוט על C תחילה, כמו ספר C הסופישפת התכנות Cמאת בריאן קרניגאן ודניס ריצ'י המנוח, שניהם כתבו את שפת ה-C ב-Bell Labs בשנות ה-70 כדי ליצור את מערכת ההפעלה UNIX.
C++, שנוצר על ידי Bjarne Stroustrup, מבוסס על C אך מספק תכונות מונחה עצמים (OOP) כגון מחלקות, אובייקטים, ספריית תבניות סטנדרטית (STL) ותכונות מודרניות אחרות. הטקסט של שטרוסטרופשפת התכנות C++ המהדורה הרביעיתהוא ספר חובה.
לסטרוסטרופ יש גם אאֲתַר אִינטֶרנֶטבְּ-ועוד מספר ספרים ומדריכים שימושיים C++.
כנס C++ שנתי,CppConמתקיים מדי שנה באוקטובר - השנה מתקיים ב-1-6 באוקטובר באורורה, CO. ל-CppCon יש גםערוץ יוטיובעם מספר לא מבוטל של הדרכות C++ מעולות.
C++ הגיע לפופולריות בשנת 1994 כאשר הגבולות של שפות מבוססות פרוצדורליות כמו C התבררו. ישנם מספר תקנים עבור C כולל C99, C11, C14, C17 ו-C22. ל-APRESS היו כמה ספרים טובים על כל אחד מהסטנדרטים.
אתה יכול להגדיר באילו מהסטנדרטים האלה המהדר Xcode משתמש בחלונית הגדרות ה-build של Xcode.
ב-NeXT Computer בשנת 1989, צוות NeXT יצרObjective-C, שהיא שפת OOP דומה המבוססת על C, אך בעלת יתרונות נוספים כמו קישור דינמי והתבוננות עצמית.
כאשר אפל רכשה את NeXT ב-1997, היא גם רכשה את כל טכנולוגיית NeXT כולל Objective-C. ספר נהדר ומובהק על Objective-C הוא של Big Nerd Ranchתכנות Objective-C: מדריך חוות החנון הגדול.
ראוי גם לציין שלחלק מתקני 3D של צד שלישי יש גם כמה דרישות, שרבות מהן מבוססות על תקני Windows DirectX/Direct3D DXIL.
ל-Steam, למשל, יש דרישות מסוימות של DirectX שחייבים לעמוד בהן - כך שאם אתה מפרסם לפלטפורמות Steam ו-Apple בו-זמנית, תרצה להיות מודע לדרישות הללו. ל-Steam יש אעַמוּדהמפרט את הדרישות.
מיקרוסופט מארחת DirectXShaderCompilerמאגר וויקיב-GitHub.
למיקרוסופט יש גם דף DirectX-Specs ו-DirectX Shader Model 6 במאגרים של DirectX-Specs ו-DirectXTK12 ב-GitHub.
איתור באגים וכוונון של Windows DXILPIXכלי זמין גם.
יש גם בלוג למפתחים של DirectX במיקרוסופט.
לבסוף, ל-NVIDIA יש כלי ניפוי באגים DirectX מבוסס Windows בשםגרפיקה של Nsight, אם אתה בעד להתעמת עם המורכב למדיתיעוד.
הוספה של כלי Windows Metal של אפל ב-macOS Sonoma פירושה שעכשיו הרבה יותר קל להעביר קווי צינורות גרפיים קיימים של משחקים ל- Metal כדי שיוכלו לפעול בצורה אופטימלית על פלטפורמות אפל. ככל שהזמן עובר, אנו יכולים לצפות שאפל תשפר את כלי המטאל שלה, מה שהופך את פיתוח משחקים חוצי פלטפורמות להרבה פחות כואב.