איך מבטלים את ההגדרה של מאגר קודקודים
העברת null
במקום GPUBuffer
אל setVertexBuffer()
ב-GPURenderPassEncoder
או ב-GPURenderBundleEncoder
מאפשרת לבטל את ההגדרה של מאגר קודקודים שהוגדר קודם בחריץ נתון. issue dawn:1675
// Set vertex buffer in slot 0.
myRenderPassEncoder.setVertexBuffer(0, myVertexBuffer);
// Then later, unset vertex buffer in slot 0.
myRenderPassEncoder.setVertexBuffer(0, null);
ביטול ההגדרה של קבוצת הקישור
העברת הערך null
במקום GPUBindGroup
אל setBindGroup()
ב-GPURenderPassEncoder
או ב-GPURenderBundleEncoder
מאפשרת לבטל את ההגדרה של קבוצת קישור שהוגדרה בעבר בחריץ נתון. issue dawn:1675
// Set bing group in slot 0.
myRenderPassEncoder.setBindGroup(0, myBindGroup);
// Then later, unset bind group in slot 0.
myRenderPassEncoder.setBindGroup(0, null);
השבתת שגיאות שנובעות מיצירת צינור עיבוד נתונים אסינכררוני כשהמכשיר אבד
השיטות createComputePipelineAsync()
ו-createRenderPipelineAsync()
של GPUDevice
מחזירות הבטחה (promise) שמתמלאת כשהיצירה של צינור עיבוד הנתונים מסתיימת. מעכשיו והלאה, שגיאות שנוצרות במהלך יצירת צינור עיבוד נתונים אסינכררוני יושתקו כשהערך של GPUDevice
הוא lost
, כדי שהמכשירים שאבדו ייראו כפועלים ככל האפשר. dawn issue:1874
עדכונים בנושא יצירת מודולים של שגיאות SPIR-V
יצירת מודול שדר (shader) של SPIR-V באמצעות createShaderModule()
גורמת עכשיו להודעת שגיאה מסוג TypeError, אלא אם מריצים את Chrome עם הדגל 'תמיכה לא בטוחה ב-WebGPU', כי SPIR-V לא נכלל במפרט של WebGPU. לפני השינוי הזה, שימוש ב-SPIR-V היה גורם ליצירה של GPUInternalError במקום זאת.
ראו שינוי chromium:4711911.
שיפור חוויית המפתחים
הודעה משופרת על שגיאת אימות של קישורים של פריסה של קבוצת קישורים ב-vertex shader, עבור מאגר אחסון לקריאה וכתיבה וקישור של טקסטורה לאחסון לכתיבה בלבד. issue dawn:1883
אחסון צינורות עיבוד נתונים במטמון עם פריסה שנוצרת באופן אוטומטי
צינורות עיבוד נתונים שנוצרו באמצעות createRenderPipeline({ layout: "auto" })
מנצלים עכשיו את מנגנוני האחסון במטמון ב-Chrome. המשמעות היא שהצינורות האלה ייוצרו בצורה יעילה יותר וישתמשו בפחות זיכרון. issue dawn:1933
עדכונים של Dawn
ה-wgpu::RequestAdapterOptionsBackendType
הוא עכשיו חלק מ-wgpu::RequestAdapterOptions
כדי שיהיה קל יותר לאפליקציות לבקש קצה עורפי ספציפי כשהן מקבלות מתאם. אפשר לעיין בדוגמה הבאה ובבעיה dawn:1875.
wgpu::RequestAdapterOptions options = {
.backendType = wgpu::BackendType::D3D12};
// Request D3D12 adapter.
myInstance.RequestAdapter(&options, myCallback, myUserData);
הטמענו כמה שיטות נוספות ל-Node.js. change dawn:142465
סוג הערכים הבוליאניים ב-API ל-C webgpu.h השתנה מ-stdbool
ל-WGPUBool
, שהוא uint32_t
. השינוי הזה בוצע כדי להבטיח של-API יש ABI מקביל ב-C וב-C++.
כאן מפורטות רק חלק מהנקודות העיקריות. רשימת ההצהרות המלאה
מה חדש ב-WebGPU
רשימה של כל מה שנדון בסדרה מה חדש ב-WebGPU.
Chrome 131
- חיתוך מרחקים ב-WGSL
- GPUCanvasContext getConfiguration()
- אסור שתהיה הטיה לעומק בפרימיטיבים של קווים ונקודות
- פונקציות מובנות של סריקה כוללת לקבוצות משנה
- תמיכה ניסיונית בקריאה עקיפה עם כמה משיכות
- Shader module compilation option strict math
- הסרת השיטה requestAdapterInfo() של GPUAdapter
- עדכונים לגבי Dawn
Chrome 130
- שילוב של שני מקורות
- שיפורי זמן הידור של שפות Shader ב-Metal
- הוצאה משימוש של requestAdapterInfo() של GPUAdapter
- עדכונים לגבי Dawn
Chrome 129
Chrome 128
- ניסוי עם תתי-קבוצות
- הוצאה משימוש של הגדרת הטיה של עומק לקווים ולנקודות
- הסתרת אזהרת DevTools על שגיאה שלא תועדה אם preventDefault
- WGSL מבצעת אינטרפולציה של הדגימה קודם ואז
- עדכונים לגבי Dawn
Chrome 127
- תמיכה ניסיונית ב-OpenGL ES ב-Android
- מאפיין המידע של GPUAdapter
- שיפורים בתאימות הדדית של WebAssembly
- שיפור שגיאות של מקודד הפקודות
- עדכונים לגבי Dawn
Chrome 126
- הגדלת המגבלה של maxTextureArrayLayers
- אופטימיזציה של העלאה למאגר לצד העורפי של Vulkan
- שיפורים בזמן הידור של שגיאות (shader)
- מאגרי הפקודות שנשלחים חייבים להיות ייחודיים
- עדכונים לגבי 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