Published: Jun 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 على "صحيح" إلى ظهور خطأ RangeError إذا لم يكن size من مضاعفات الرقم 4. في السابق، كان يتم فرض ذلك باستخدام GPUValidationError فقط. يمكنك الاطّلاع على المشكلة رقم 405883445.
myDevice.createBuffer({
mappedAtCreation: true,
size: 42,
usage: GPUBufferUsage.STORAGE,
});
// Throws RangeError
تقرير بنية وحدات معالجة الرسومات الحديثة
تعرض الآن أحدث وحدات معالجة الرسومات من Nvidia وAMD بنيتها في GPUAdapterInfo على أنّها "blackwell" و"rdna4" على التوالي، بالإضافة إلى بعض الإضافات الطفيفة الأخرى إلى قوائم بنية وحدات معالجة الرسومات. يمكنك الاطّلاع على المشكلة رقم 417202748.
إيقاف سمة isFallbackAdapter في GPUAdapter نهائيًا
تم إيقاف سمة isFallbackAdapter في GPUAdapter نهائيًا. تم استبدالها بسمة isFallbackAdapter في GPUAdapterInfo التي تم طرحها في Chrome 136. يمكنك الاطّلاع على نية الإيقاف نهائيًا.
آخر الأخبار في Dawn
يتوافق Dawn GLFW مع Emscripten لإنشاءات CMake، ما يتيح للمطوّرين تبسيط رمز تطبيق WebGPU من عدّة منصات بشكل أكبر عند استخدام Emdawnwebgpu، الذي ينفّذ أحدث إصدار موحّد من webgpu.h على واجهة برمجة التطبيقات للمتصفح. يمكنك الاطّلاع على التغيير dawn:242894.
للحصول على دليل كامل، يمكنك الاطّلاع على مستند إنشاء تطبيق باستخدام WebGPU المعدَّل.
تم الآن تضمين منفذ "بعيد" من Emdawnwebgpu في إصدارات الحِزم. تم تضمين لقطة من هذا المنفذ في Emscripten 4.0.10 والإصدارات الأحدث، التي تتوافق الآن مع المنافذ المستضافة خارجيًا. أصبح التبديل إلى Emdawnwebgpu الآن تغييرًا واحدًا في العلامة من emcc -sUSE_WEBGPU إلى emcc --use-port=emdawnwebgpu. يمكنك الاطّلاع على طلب السحب في Emscripten رقم #24303 و#24220 وطلب التغيير في Dawn رقم 243214.
لا يغطي هذا القسم سوى بعض النقاط الرئيسية. يمكنك الاطّلاع على القائمة الشاملة لعمليات الإرسال.
الميزات الجديدة في WebGPU
في ما يلي قائمة بكل ما تم تناوله في سلسلة "الميزات الجديدة في WebGPU".
Chrome 147-148
Chrome 146
- التوافق مع وضع التوافق مع WebGPU على OpenGL ES 3.1
- المرفقات المؤقتة
- إضافة texture_and_sampler_let في WGSL
- آخر الأخبار في Dawn
Chrome 145
- إضافة subgroup_uniformity في WGSL
- ربط المخزن المؤقت المتزامن التجريبي في العاملين
- آخر الأخبار في Dawn
Chrome 144
- إضافة subgroup_id في WGSL
- إضافة uniform_buffer_standard_layout في WGSL
- WebGPU على Linux
- عمليات writeBuffer وwriteTexture أسرع
- آخر الأخبار في Dawn
Chrome 143
Chrome 142
Chrome 141
- اكتمل Tint IR
- تحليل نطاق الأعداد الصحيحة في برنامج تجميع WGSL
- تعديل SPIR-V 1.4 للواجهة الخلفية في Vulkan
- آخر الأخبار في Dawn
Chrome 140
- تستهلك طلبات الجهاز المحوّل
- اختصار لاستخدام الزخرفة عندما يتم استخدام طريقة عرض الزخرفة
- تتوافق WGSL textureSampleLevel مع الزخارف الأحادية الأبعاد
- إيقاف استخدام زخرفة التخزين للقراءة فقط bgra8unorm نهائيًا
- إزالة سمة isFallbackAdapter في GPUAdapter
- آخر الأخبار في Dawn
Chrome 139
- التوافق مع الزخارف الثلاثية الأبعاد لتنسيقات BC وASTC المضغوطة
- ميزة "core-features-and-limits" الجديدة
- مرحلة التجربة والتقييم لوضع التوافق مع WebGPU
- آخر الأخبار في Dawn
Chrome 138
- اختصار لاستخدام المخزن المؤقت كمورد ربط
- تغييرات في متطلبات الحجم للمخازن المؤقتة التي يتم ربطها عند الإنشاء
- تقرير بنية وحدات معالجة الرسومات الحديثة
- إيقاف سمة isFallbackAdapter في GPUAdapter نهائيًا
- آخر الأخبار في Dawn
Chrome 137
- استخدام طريقة عرض الزخرفة لربط externalTexture
- نسخ المخازن المؤقتة بدون تحديد الإزاحات والحجم
- WGSL workgroupUniformLoad باستخدام مؤشر إلى قيمة ذرية
- سمة powerPreference في GPUAdapterInfo
- إزالة سمة compatibilityMode في GPURequestAdapterOptions
- آخر الأخبار في Dawn
Chrome 136
- سمة isFallbackAdapter في GPUAdapterInfo
- تحسينات على وقت تجميع برنامج التظليل على D3D12
- حفظ صور لوحة الرسم ونسخها
- إزالة القيود المفروضة على وضع التوافق
- آخر الأخبار في Dawn
Chrome 135
- السماح بإنشاء تنسيق خط أنابيب باستخدام تنسيق مجموعة ربط فارغ
- السماح لمنافذ العرض بالتوسّع إلى ما بعد حدود أهداف العرض
- الوصول بسهولة أكبر إلى وضع التوافق التجريبي على Android
- إزالة الحدّ الأقصى maxInterStageShaderComponents
- آخر الأخبار في Dawn
Chrome 134
- تحسين أحمال عمل تعلُّم الآلة باستخدام المجموعات الفرعية
- إزالة التوافق مع أنواع الزخارف القابلة للفلترة من النوع float على أنّها قابلة للمزج
- آخر الأخبار في Dawn
Chrome 133
- تنسيقات الرأس الإضافية unorm8x4-bgra وذات المكوّن الواحد
- السماح بطلب حدود غير معروفة بقيمة غير محدّدة
- تغييرات في قواعد المحاذاة في WGSL
- تحسينات على الأداء في WGSL باستخدام discard
- استخدام displaySize في VideoFrame للزخارف الخارجية
- التعامل مع الصور ذات الاتجاهات غير التلقائية باستخدام copyExternalImageToTexture
- تحسين تجربة المطوّرين
- تفعيل وضع التوافق باستخدام featureLevel
- تنظيف الميزات التجريبية للمجموعات الفرعية
- إيقاف الحدّ الأقصى maxInterStageShaderComponents نهائيًا
- آخر الأخبار في Dawn
Chrome 132
- استخدام طريقة عرض الزخرفة
- مزج زخارف float ذات 32 بت
- سمة adapterInfo في GPUDevice
- ضبط سياق لوحة الرسم بتنسيق غير صالح يؤدي إلى ظهور خطأ JavaScript
- قيود فلترة أداة أخذ العينات على الزخارف
- تجربة المجموعات الفرعية الموسّعة
- تحسين تجربة المطوّرين
- الدعم التجريبي لتنسيقات الزخارف العادية ذات 16 بت
- آخر الأخبار في Dawn
Chrome 131
- مسافات القطع في WGSL
- GPUCanvasContext getConfiguration()
- يجب ألا يكون للعناصر الأساسية النقطية والخطية انحياز في العمق
- وظائف الفحص الشامل المضمّنة للمجموعات الفرعية
- الدعم التجريبي للرسم المتعدد غير المباشر
- خيار تجميع وحدة برنامج التظليل strict math
- إزالة GPUAdapter requestAdapterInfo()
- آخر الأخبار في Dawn
Chrome 130
- المزج الثنائي المصدر
- تحسينات على وقت تجميع برنامج التظليل على Metal
- إيقاف GPUAdapter requestAdapterInfo() نهائيًا
- آخر الأخبار في Dawn
Chrome 129
- التوافق مع النطاق العالي الديناميكية (HDR) باستخدام وضع ربط درجات الألوان في لوحة الرسم
- التوافق الموسّع مع المجموعات الفرعية
- آخر الأخبار في Dawn
Chrome 128
- تجربة المجموعات الفرعية
- إيقاف ضبط انحياز العمق للخطوط والنقاط نهائيًا
- إخفاء تحذير "أدوات مطوري البرامج" بشأن الخطأ غير الذي لم يتم رصده إذا تم استخدام preventDefault
- WGSL interpolate sampling first and either
- آخر الأخبار في Dawn
Chrome 127
- الدعم التجريبي لـ OpenGL ES على Android
- سمة info في GPUAdapter
- تحسينات على التوافق التشغيلي مع WebAssembly
- أخطاء محسّنة في أداة ترميز الأوامر
- آخر الأخبار في Dawn
Chrome 126
- زيادة الحدّ الأقصى maxTextureArrayLayers
- تحسين تحميل المخزن المؤقت للواجهة الخلفية في Vulkan
- تحسينات على وقت تجميع برنامج التظليل
- يجب أن تكون المخازن المؤقتة للأوامر التي تم إرسالها فريدة
- آخر الأخبار في Dawn
Chrome 125
Chrome 124
- زخارف التخزين للقراءة فقط والقراءة والكتابة
- التوافق مع عاملي الخدمة والعاملين المشترَكين
- سمات معلومات المحوّل الجديدة
- إصلاح الأخطاء
- آخر الأخبار في Dawn
Chrome 123
- التوافق مع وظائف DP4a المضمّنة في WGSL
- مَعلمات المؤشر غير المقيدة في WGSL
- التجميل اللغوي لبنية إلغاء الإشارة إلى المركّبات في WGSL
- حالة منفصلة للقراءة فقط لجوانب الاستنسل والعمق
- آخر الأخبار في Dawn
Chrome 122
- توسيع مدى الوصول باستخدام وضع التوافق (ميزة قيد التطوير)
- زيادة الحدّ الأقصى maxVertexAttributes
- آخر الأخبار في Dawn
Chrome 121
- التوافق مع WebGPU على Android
- استخدام DXC بدلاً من FXC لتجميع برنامج التظليل على Windows
- طلبات الطابع الزمني في عمليات الحوسبة والعرض
- نقاط الدخول التلقائية إلى وحدات أداة التظليل
- التوافق مع display-p3 كمساحة ألوان GPUExternalTexture
- معلومات عن مساحات الذاكرة
- آخر الأخبار في Dawn
Chrome 120
- التوافق مع قيم النقطة العائمة ذات 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
- الحصول على وحدة معالجة الرسومات المنفصلة تلقائيًا عند استخدام طاقة التيار المتردد
- تحسين تجربة المطوّرين
- آخر الأخبار في Dawn
Chrome 114
- تحسين JavaScript
- يؤدي استدعاء getCurrentTexture() على لوحة رسم غير مضبوطة إلى ظهور InvalidStateError
- آخر الأخبار في WGSL
- آخر الأخبار في Dawn