الميزات الجديدة في WebGPU (إصدار Chrome 138)

François Beaufort
François Beaufort

تاريخ النشر: 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

تقرير بنية وحدات معالجة الرسومات الحديثة

تعرض أحدث وحدات معالجة الرسومات من Nvidia وAMD الآن بنيتها في GPUAdapterInfo على النحو "blackwell" و"rdna4" على التوالي، بالإضافة إلى بعض الإضافات الثانوية الأخرى إلى قوائم بنية وحدة معالجة الرسومات. اطّلِع على المشكلة 417202748.

إيقاف سمة isFallbackAdapter في GPUAdapter نهائيًا

تم إيقاف سمة isFallbackAdapter في GPUAdapter نهائيًا. تم استبدالها بسمة isFallbackAdapter GPUAdapterInfo التي تم طرحها في الإصدار 136 من Chrome. اطّلِع على إشعار الإيقاف النهائي.

إشعارات الفجر

تتوافق Emscripten مع Dawn GLFW لعمليات إنشاء CMake، ما يتيح للمطوّرين تبسيط رمز تطبيقات WebGPU المتوافق مع عدة منصات عند استخدام Emdawnwebgpu، الذي ينفّذ أحدث إصدار موحّد من webgpu.h عبر واجهة برمجة التطبيقات للمتصفّح. راجِع تغيير dawn:242894.

للحصول على دليل كامل، اطّلِع على مستندات إنشاء تطبيق باستخدام WebGPU المحدّثة.

تم الآن تضمين منفذ Emdawnwebgpu "عن بُعد" في إصدارات الحزمة. تم تضمين لقطة من عملية النقل هذه في الإصدار 4.0.10 والإصدارات الأحدث من Emscripten، والتي تتيح الآن عمليات نقل مُستضافة خارجيًا. أصبح التبديل إلى Emdawnwebgpu يتطلّب تغيير علامة واحدة فقط من emcc -sUSE_WEBGPU إلى emcc --use-port=emdawnwebgpu. يُرجى الاطّلاع على طلب السحب في Emscripten‏ ‎ #24303 و‎#24220 وتغيير Dawn CL‏ ‎243214.

هذا يغطي بعض النقاط الرئيسية فقط. اطّلِع على قائمة عمليات الدمج الشاملة.

الميزات الجديدة في WebGPU

قائمة بكل ما تم تناوله في سلسلة الميزات الجديدة في WebGPU

‫Chrome 139

Chrome 138

‫Chrome 137

Chrome 136

Chrome 135

Chrome 134

‫Chrome 133

‫Chrome 132

Chrome 131

Chrome 130

Chrome 129

‫Chrome 128

Chrome 127

‫Chrome 126

‫Chrome 125

Chrome 124

Chrome 123

‫Chrome 122

Chrome 121

‫Chrome 120

‫Chrome 119

Chrome 118

Chrome 117

Chrome 116

Chrome 115

Chrome 114

‫Chrome 113