תאריך פרסום: 17 ביוני 2025
קיצור דרך לשימוש במאגר כמשאב קישור
עכשיו מפתחים יכולים להשתמש ב-GPUBuffer ישירות כ-GPUBindingResource כדי לחשוף אותו לשניידר לצורך קישור. כך הוא תואם לסוגים אחרים של קישורים, והשימוש בו פשוט יותר מאשר ב-GPUBufferBinding כשגם בגודל וגם בהיסט נעשה שימוש בערכים שמוגדרים כברירת מחדל. בעיה מס' 419223794
const bindGroup = myDevice.createBindGroup({
layout: myPipeline.getBindGroupLayout(0),
entries: [
{ binding: 0, resource: mySampler },
{ binding: 1, resource: myTextureView },
{ binding: 2, resource: myExternalTexture },
{ binding: 3, resource: myBuffer }, // Same as { buffer: myBuffer }
{ binding: 4, resource: { buffer: myOtherBuffer, offset: 42 },
],
});
שינויים בדרישות לגבי גודל מאגרים שממופים בזמן היצירה
יצירת מאגר עם mappedAtCreation
מוגדר כ-true מפעילה עכשיו שגיאת RangeError אם size
הוא לא מכפיל של 4. בעבר, האכיפה בוצעה באמצעות GPUValidationError בלבד. בעיה מס' 405883445
myDevice.createBuffer({
mappedAtCreation: true,
size: 42,
usage: GPUBufferUsage.STORAGE,
});
// Throws RangeError
דוח ארכיטקטורה למעבדי GPU מהדורות האחרונות
מעבדי ה-GPU העדכניים ביותר של Nvidia ו-AMD מדווחים עכשיו על הארכיטקטורה שלהם ב-GPUAdapterInfo כ-"blackwell"
ו-"rdna4"
, בהתאמה, ויש גם כמה תוספות קטנות אחרות לרשימות של ארכיטקטורת ה-GPU. בעיה מס' 417202748
הוצאה משימוש של המאפיין isFallbackAdapter ב-GPUAdapter
המאפיין isFallbackAdapter
של GPUAdapter הוצא משימוש. הוא הוחלף במאפיין isFallbackAdapter
של GPUAdapterInfo, שהושק ב-Chrome 136. כוונה להוצאה משימוש
עדכונים בנושא Dawn
Emscripten נתמך ב-Dawn GLFW עבור גרסאות build של CMake, ומאפשר למפתחים לפשט עוד יותר את קוד האפליקציה שלהם ל-WebGPU בפלטפורמות שונות באמצעות Emdawnwebgpu, שמטמיע את הגרסה הסטנדרטית האחרונה של webgpu.h דרך API של הדפדפן. change dawn:242894
למדריך מלא, אפשר לעיין במסמכי התיעוד המעודכנים בנושא פיתוח אפליקציות באמצעות WebGPU.
יציאה 'מרוחקת' של Emdawnwebgpu כלולה עכשיו במהדורות של חבילות. קובץ snapshot של השקע הזה נכלל ב-Emscripten מגרסה 4.0.10 ואילך, שתומכת עכשיו ביציאות שמתארחות באופן חיצוני. המעבר ל-Emdawnwebgpu הוא עכשיו שינוי של דגל אחד מ-emcc -sUSE_WEBGPU
ל-emcc --use-port=emdawnwebgpu
. אפשר לעיין בבקשת התמיכה של Emscripten #24303, ב-#24220 וב-Dawn CL 243214.
הרשימה הזו כוללת רק חלק מהנקודות העיקריות. רשימת ההצהרות המלאה
מה חדש ב-WebGPU
רשימה של כל מה שנדון בסדרה מה חדש ב-WebGPU.
Chrome 138
- קיצור דרך לשימוש במאגר כמשאב קישור
- שינויים בדרישות לגבי גודל מאגרים שממופים בזמן היצירה
- דוח ארכיטקטורה של מעבדי GPU מהדורות האחרונות
- הוצאה משימוש של המאפיין isFallbackAdapter ב-GPUAdapter
- עדכונים לגבי Dawn
Chrome 137
- שימוש בתצוגת טקסטורה לקישור של externalTexture
- העתקה של מאגרים בלי לציין את האופסים והגודל
- WGSL workgroupUniformLoad using pointer to atomic
- המאפיין powerPreference של GPUAdapterInfo
- הסרת המאפיין compatibilityMode של GPURequestAdapterOptions
- עדכונים לגבי Dawn
Chrome 136
- המאפיין isFallbackAdapter של GPUAdapterInfo
- שיפורים בזמן הידור של שגיאות ב-D3D12
- שמירה והעתקה של תמונות על קנבס
- הגבלות במצב תאימות של Lift
- עדכונים לגבי Dawn
Chrome 135
- אישור ליצירת פריסה של צינור עיבוד נתונים עם פריסה של קבוצת קישור null
- מתן אפשרות לחלונות תצוגה להרחיב מעבר לגבולות של יעדי הרינדור
- גישה קלה יותר למצב התאימות הניסיוני ב-Android
- הסרת המגבלה maxInterStageShaderComponents
- עדכונים לגבי Dawn
Chrome 134
- שיפור עומסי העבודה של למידת המכונה באמצעות קבוצות משנה
- הסרת התמיכה בסוגי מרקמים שניתנים לסינון באמצעות רכיבי float כרכיבים שניתן למזג
- עדכונים לגבי Dawn
Chrome 133
- פורמטים נוספים של קודקודים מסוג unorm8x4-bgra וקודקודים עם רכיב אחד
- איך מאפשרים לבקש מגבלות לא ידועות עם ערך לא מוגדר
- שינויים בכללי היישור של WGS84
- שיפור בביצועים של WGSL באמצעות ביטול
- שימוש ב-displaySize של VideoFrame לצורך טקסטורות חיצוניות
- טיפול בתמונות עם כיוונים שאינם ברירת המחדל באמצעות copyExternalImageToTexture
- שיפור חוויית המפתחים
- הפעלת מצב תאימות באמצעות featureLevel
- ניקוי של תכונות ניסיוניות של קבוצות משנה
- הוצאה משימוש של המגבלה maxInterStageShaderComponents
- עדכונים לגבי Dawn
Chrome 132
- שימוש בתצוגת טקסטורה
- מיזוג של מרקמים מסוג float ב-32 ביט
- המאפיין adapterInfo של GPUDevice
- הגדרת הקשר של לוח הציור בפורמט לא חוקי גורמת לשגיאת JavaScript
- הגבלות על סינון של טקסטורות
- ניסוי עם תת-קבוצות מורחבות
- שיפור חוויית המפתחים
- תמיכה ניסיונית בפורמטים של טקסטורות מנורמלות ב-16 ביט
- עדכונים לגבי Dawn
Chrome 131
- חיתוך מרחקים ב-WGSL
- GPUCanvasContext getConfiguration()
- אסור שתהיה הטיה של עומק בפרימיטיבים של נקודות וקווים
- פונקציות מובנות של סריקה כוללת לקבוצות משנה
- תמיכה ניסיונית בקריאה עקיפה של כמה פריימים
- Shader module compilation option strict math
- הסרת השיטה requestAdapterInfo() של GPUAdapter
- עדכונים לגבי Dawn
Chrome 130
- שילוב של שני מקורות
- שיפורי זמן הידור של שגיאות ב-Metal
- הוצאה משימוש של requestAdapterInfo() של GPUAdapter
- עדכונים לגבי Dawn
Chrome 129
Chrome 128
- ניסוי עם תתי-קבוצות
- הוצאה משימוש של הגדרת הטיה של עומק לקווים ולנקודות
- הסתרת אזהרת DevTools על שגיאה שלא תועדה אם preventDefault
- WGSL מבצעת אינטרפולציה של הדגימה קודם ואז
- עדכונים לגבי Dawn
Chrome 127
- תמיכה ניסיונית ב-OpenGL ES ב-Android
- מאפיין המידע של GPUAdapter
- שיפורים בתאימות הדדית של WebAssembly
- שיפור שגיאות של מקודד הפקודות
- עדכונים לגבי Dawn
Chrome 126
- הגדלת המגבלה של maxTextureArrayLayers
- אופטימיזציה של העלאה למאגר לצד העורפי של Vulkan
- שיפורים בזמן הידור של שגיאות (shaders)
- מאגרי הפקודות שנשלחים חייבים להיות ייחודיים
- עדכונים לגבי Dawn
Chrome 125
Chrome 124
- טקסטורות אחסון לקריאה בלבד ולקריאה וכתיבה
- תמיכה ב-Service Workers וב-Shared Workers
- מאפיינים חדשים של פרטי מתאם
- תיקוני באגים
- עדכונים לגבי Dawn
Chrome 123
- תמיכה בפונקציות מובנות של DP4a ב-WGSL
- פרמטרים של מצביע ללא הגבלה ב-WGSL
- תחביר פשוט יותר לביטול ההפניה לרכיבים ב-WGSL
- מצב נפרד לקריאה בלבד של אספקטים של תבנית ועומק
- עדכונים לגבי Dawn
Chrome 122
- הרחבת פוטנציאל החשיפה באמצעות מצב תאימות (תכונה בפיתוח)
- הגדלת המגבלה של maxVertexAttributes
- עדכונים לגבי Dawn
Chrome 121
- תמיכה ב-WebGPU ב-Android
- שימוש ב-DXC במקום ב-FXC לצורך הידור של שגיאות ב-Windows
- שאילתות של חותמות זמן בשלבי המחשוב והעיבוד
- נקודות כניסה שמוגדרות כברירת מחדל למודולי Shader
- תמיכה ב-display-p3 כמרחב צבע של GPUExternalTexture
- מידע על ערמות זיכרון
- עדכונים לגבי Dawn
Chrome 120
- תמיכה בערכים של נקודה צפה (floating-point) באורך 16 ביט ב-WGSL
- מעבר למגבלות
- שינויים במצב של עומק-המרחק
- עדכונים לגבי פרטי המתאם
- קידוד נתונים של שאילתות עם חותמות זמן
- תכונות לניקוי האביב
Chrome 119
- טקסטורות של מספרים ממשיים (float) ב-32 ביט שניתן לסנן
- פורמט קודקוד unorm10-10-10-2
- פורמט טקסטורה של rgb10a2uint
- עדכונים לגבי Dawn
Chrome 118
- תמיכה ב-HTMLImageElement וב-ImageData ב-
copyExternalImageToTexture()
- תמיכה ניסיונית ברקמות אחסון לקריאה וכתיבה ולקריאה בלבד
- עדכונים לגבי Dawn
Chrome 117
- ביטול ההגדרה של מאגר הנקודות
- ביטול ההגדרה של קבוצת הקישור
- השתקת שגיאות שנוצרות ביצירת צינור עיבוד נתונים אסינכררוני כשהמכשיר אבד
- עדכונים ביצירת מודולים של שַדְררים מסוג SPIR-V
- שיפור חוויית המפתחים
- אחסון צינורות עיבוד נתונים במטמון עם פריסה שנוצרה באופן אוטומטי
- עדכונים לגבי Dawn
Chrome 116
- שילוב WebCodecs
- מכשיר שאבד שהוחזר על ידי GPUAdapter
requestDevice()
- שמירה על הפעלה חלקה של סרטונים אם מתבצעת קריאה ל-
importExternalTexture()
- תאימות למפרט
- שיפור חוויית המפתחים
- עדכונים לגבי Dawn
Chrome 115
- תוספים נתמכים לשפת WGSL
- תמיכה ניסיונית ב-Direct3D 11
- קבלת GPU נפרד כברירת מחדל בחשמל AC
- שיפור חוויית המפתחים
- עדכונים לגבי Dawn
Chrome 114
- אופטימיזציה של JavaScript
- getCurrentTexture() ב-Canvas לא מוגדר מפעילה שגיאה מסוג InvalidStateError
- עדכונים מ-WGSL
- עדכונים לגבי Dawn