WebGPU
واجهة برمجة تطبيقات WebGPU هي واجهة برمجة تطبيقات مكتوبة بلغات JavaScript و Rust و C++ و C ، تتيح الوصول الفعال إلى وحدة معالجة الرسومات (GPU) عبر مختلف المنصات. وباستخدام تقنيات Vulkan أو Metal أو Direct3D 12 الأساسية للنظام ، تُمكّن WebGPU من معالجة الرسومات، وتشغيل الألعاب، وغير ذلك الكثير، بالإضافة إلى تطبيقات الذكاء الاصطناعي والتعلم الآلي. وتهدف WebGPU إلى أن تحل محل WebGL الأقدم كمعيار رئيسي للرسومات على الويب. [ 2 ]
في لغة جافا سكريبت، يمكن توفير WebGPU من خلال متصفح الويب أو بيئات جافا سكريبت الأخرى مثل Node.js و Deno . ويمكن للغتين Rust وC++ استخدام تطبيقاتهما الخاصة لمواصفات WebGPU. أما لغات أخرى مثل Python و Java و Go، فيمكنها استخدام WebGPU عن طريق توسيع مواصفات لغة C.
أطلق كل من جوجل كروم ومايكروسوفت إيدج دعم WebGPU لأول مرة في أبريل 2023. [ 2 ] [ 3 ] وأطلق سفاري دعم WebGPU في يونيو 2025 مع الإصدار 26. [ 4 ] وأطلق فايرفوكس دعم WebGPU لأول مرة في يوليو 2025 مع الإصدار 141. [ 3 ] ويُعد معيار W3C توصية مرشحة.
تكنولوجيا
تُمكّن تقنية WebGPU الرسومات ثلاثية الأبعاد داخل لوحة HTML . كما أنها تتمتع بدعم قوي لحسابات وحدة معالجة الرسومات للأغراض العامة . [ 5 ]
تستخدم WebGPU لغة تظليل خاصة بها تُسمى لغة تظليل WebGPU (WGSL)، والتي صُممت لتكون قابلة للترجمة بسهولة إلى SPIR-V ، إلى أن أدت الشكاوى إلى إعادة توجيهها نحو تصميم أكثر تقليدية، على غرار لغات التظليل الأخرى. يشبه تركيبها النحوي لغة Rust . [ 6 ] Tint هو مُترجم من تطوير جوجل للغة WGSL. [ 7 ] Naga هو مشروع مشابه طُوّر لتلبية احتياجات wgpu-rs. [ 8 ]
التطبيقات
يدعم كل من جوجل كروم وفايرفوكس تقنيتي WebGPU وWGSL. يستخدم فايرفوكس ودينو مكتبة wgpu المكتوبة بلغة Rust. [ 9 ] يتبع سفاري المواصفات الأصلية لكل من WebGPU وWGSL. [ 3 ]
أتاح الإصدار 113 من متصفح كروم دعم WebGPU مبدئيًا على أجهزة ويندوز المزودة بتقنية Direct3D 12 ، وأجهزة ChromeOS المزودة بتقنية Vulkan ، وأجهزة macOS المزودة بتقنية Metal . [ 2 ] وتم تفعيل هذا الدعم لنظام أندرويد في الإصدار 121. [ 3 ]
تاريخ
في 8 يونيو 2016، عرضت جوجل عرضًا تقديميًا بعنوان "واجهة برمجة تطبيقات رسومات الويب الصريحة" على فريق عمل WebGL (خلال الاجتماع نصف السنوي المباشر). [ 10 ] استعرض العرض الأفكار والمبادئ الأساسية لبناء واجهة برمجة تطبيقات جديدة لتحل محل WebGL في نهاية المطاف، والمعروفة أيضًا باسم "WebGL Next".
في 24 يناير 2017، استضافت كرونوس اجتماعًا مفتوحًا لمناقشة أفكار "WebGL Next"، بالتزامن مع اجتماع فريق عمل WebGL في فانكوفر. [ 11 ] قدّم فريق جوجل نموذج NXT الأولي الذي يُطبّق واجهة برمجة تطبيقات جديدة (API) قابلة للتشغيل على متصفح كروميوم باستخدام OpenGL، أو بشكل مستقل باستخدام OpenGL وMetal. استعار NXT مفاهيم من واجهات برمجة تطبيقات Vulkan وDirect3D 12 وMetal الأصلية. كما عرض ممثلو آبل وموزيلا نماذجهم الأولية المبنية على متصفحي سفاري وسيرفو على التوالي ، وكلاهما يُحاكي واجهة برمجة تطبيقات Metal بدقة.
في 7 فبراير 2017، اقترح فريق WebKit التابع لشركة Apple إنشاء مجموعة W3C لتصميم واجهة برمجة التطبيقات (API). وفي الوقت نفسه، أعلنوا عن إثبات تقني للمفهوم واقتراح تحت اسم "WebGPU"، استنادًا إلى مفاهيم في Metal من Apple . [ 12 ] [ 13 ] [ 14 ] لاحقًا، اعتمدت المجموعة اسم WebGPU كاسم عمل للمعيار المستقبلي بدلًا من مجرد اقتراح Apple الأولي. [ 15 ] أُعيد تسمية الاقتراح الأولي إلى "WebMetal" لتجنب أي لبس إضافي. [ 16 ]
أُطلقت مجموعة W3C "GPU for the Web" في 16 فبراير 2017. في ذلك الوقت، كانت كل من آبل وجوجل وموزيلا تُجري تجارب في هذا المجال، ولكن اقتراح آبل فقط هو الذي قُدِّم رسميًا إلى مستودع "gpuweb-proposals". [ 17 ] [ 18 ] [ 19 ] بعد ذلك بوقت قصير، في 21 مارس 2017، قدّمت موزيلا اقتراحًا لـ WebGL Next ضمن مستودع Khronos، استنادًا إلى تصميم Vulkan. [ 20 ] [ 21 ]
في الأول من يونيو 2018، أعلن فريق جوجل كروم ، مستنداً إلى "حل معظم القضايا ذات المستوى الأعلى" في جهود توحيد المعايير عبر المتصفحات، عن نيته تطبيق معيار WebGPU المستقبلي. [ 15 ]
في 13 فبراير 2020، كشفت جوجل عن Tint كبديل لاقتراح لغة WHLSL النصية لواجهة برمجة تطبيقات WebGPU، وأصبحت اللغة في النهاية لغة التظليل القياسية لـ WebGPU (WGSL) ، وأصبح Tint اسم المترجم داخل Dawn، وهو تطبيق WebGPU لـ Chromium.
مراجع
- ↑ "WebGPU: مسودة توصية مرشحة من W3C" .
- 1 2 3 "يدعم متصفح كروم تقنية WebGPU" . مطورو كروم . تم الاطلاع عليه بتاريخ 8 أبريل 2023 .
- 1 2 3 4 "حالة تنفيذ WebGPU" . GitHub . تم الاطلاع عليه في 16 يونيو 2025 .
- ↑ "ملاحظات إصدار النسخة التجريبية من Safari 26.0" . تم الاطلاع عليها بتاريخ 11 يوليو 2025 .
- ↑ "واجهة برمجة تطبيقات WebGPU" . developer.mozilla.org . تم الاطلاع عليه بتاريخ 17 مارس 2024 .
- ↑ "لغة تظليل WebGPU" . gpuweb.github.io . تم الاطلاع عليه بتاريخ 17-07-2025 .
- ↑ "tint - Git at Google" . dawn.googlesource.com . تم الاطلاع عليه بتاريخ 17 يوليو 2025 .
- ↑ gfx-rs/wgpu/naga ، Rust Graphics Mages، 2025-08-06 ، تم الاطلاع عليه بتاريخ 2025-08-08
- ↑ wgpu ، Rust Graphics Mages، 2024-01-03 ، تم الاطلاع عليه في 2024-01-03
- ↑ واليز، كورنتين. "واجهة برمجة تطبيقات رسومات الويب الصريحة" . تم الاسترجاع في 25-06-2019 .
- ↑ واليز، كورنتين؛ نينوميا، كاي. "دراسات WebGL Next" . تم الاسترجاع في 25-06-2019 .
- ↑ "الجيل القادم من الرسومات ثلاثية الأبعاد على الويب" . WebKit . 2017-02-07 . تم الاطلاع عليه بتاريخ 2018-08-13 .
- ↑ «تسعى آبل إلى وضع تقنية ميتال كجزء من معيار جديد للرسومات ثلاثية الأبعاد للويب» . AppleInsider . تم الاطلاع عليه بتاريخ 13 أغسطس 2018 .
- ↑ كلابورن، توماس (2017-02-08). "أبل، التي تعاني من حساسية تجاه معايير الويب، تكشف النقاب عن WebGPU، وهو معيار لرسومات الويب" . ذا ريجستر . تم الاسترجاع في 2017-08-14 .
- 12Wallez, Corentin (2018-05-31). "Intent to Implement: WebGPU". blink-dev (Mailing list). Retrieved 2018-08-13.
- ↑"WebGPU Prototype and Demos". WebKit. 2017-04-05. Retrieved 2019-01-10.
- ↑Jackson, Dean (2017-02-16). "Welcome and Getting Started". public-gpu (Mailing list). Retrieved 2018-09-11.
- ↑Jackson, Dean. "Add Apple's WebGPU proposal". GitHub. Retrieved 2019-03-08.
- ↑Malyshau, Dzmitry. "Prototyping a new 3D API for the Web". Retrieved 2016-12-16.
- ↑Malyshau, Dzmitry (2017-03-21). "Defining the Web platform". Retrieved 2018-09-11.
- ↑Malyshau, Dzmitry. "Mozilla's contribution: Obsidian API". GitHub. Retrieved 2019-03-08.
External links
- 3D graphics APIs
- Cross-platform software
- Graphics standards
- Web development
