إذا كنت تحب الاحتفاظ بعلامة التبويب على أحدث التقنيات ، يجب أن تكون قد سمعت عن Vulkan. تعد واجهة Vulkan API هي أحدث وأكبر واجهات برمجة تطبيقات الرسومات ، التي أعلنت عنها مجموعة Khronos Group ، والتي تعد الأشخاص الذين يقفون وراء OpenGL القياسي الحالي في المجال. تم الإعلان رسميًا عن اسم المشروع Vulkan في مؤتمر مطوري الألعاب في عام 2015 ، وتم إطلاق الإصدار الأول من واجهة برمجة التطبيقات في فبراير 2016. تهدف واجهة برمجة التطبيقات الجديدة إلى أخذ رسومات اللعبة إلى المستوى التالي ، لذلك إذا كنت مهتمًا التفاصيل ، نحن هنا لتقديمها لك.
نناقش ما هي Vulkan API ، وكيف تختلف عن سابقتها OpenGL ، وكيف يمكن لـ Vulkan API تغيير طريقة تطوير الألعاب وغيرها من تطبيقات الرسومات المكثفة في المستقبل القريب. تابع القراءة لاستكشاف هذا التطور المثير في عالم التقديم والرسومات.
ما هي Vulkan API؟
قبل عامين ، عرضت AMD من Mantle ، التي قادت واجهة برمجة التطبيقات التي استهدفت الألعاب ثلاثية الأبعاد ، وبينما أظهرت أنها واعدة في حل أكثر جاذبية لتقديم الرسومات ، قتلت AMD من المشروع. ثم ، أعطت AMD مكونات API عباءة لمجموعة Khronos لتطوير واجهة برمجة التطبيقات القياسية لتقديم. حسنًا ، النتيجة هي Vulcan API الجديدة.
واجهة برمجة التطبيقات Vulkan API هي واجهة برمجة تطبيقات تقديمية منخفضة يمكنها الاستفادة بشكل أفضل من وحدات المعالجة المركزية متعددة المراكز الموجودة في كل مكان هذه الأيام وستوفر أيضًا برامج ذات وصول مباشر أكبر لوحدة المعالجة المركزية ووحدة معالجة الرسومات الخاصة بالنظام. هو أيضا نظام التشغيل لا أدري. هذا يعني أن التطبيقات التي تستخدم Vulkan API ستكون محمولة بسهولة.
نظرًا لكوننا متعطشين للاعبين ومحبي الألعاب ، قررنا إلقاء نظرة على مستقبل كيفية تطوير الألعاب قريبًا وكيف ستحسن تجربة الألعاب (إن وجدت).
المميزات
يحتوي Vulkan API على الكثير من الميزات التي تجعله مختلفًا وأفضل من OpenGL السابق:
1. يحاول Vulkan API موازنة الأحمال المعالجة بالتساوي بين كل نواة في بيئة متعددة النواة. وهذا يعني أن كل نواة في المعالج تستخدم ، وبالتالي زيادة الكفاءة .
- سيؤدي ذلك إلى حدوث فرق ملحوظ في عرض الرسومات التي تتطلب الكثير من المكالمات.
- مع واجهات برمجة التطبيقات القديمة ، في أكثر الأحيان ، وحدة المعالجة المركزية هي عنق الزجاجة. ومع ذلك ، فإن Vulkan يضع وحدات المعالجة المركزية متعددة النواة في مثل هذا الاستخدام الجيد ، ومن المرجح أن يتم العثور على عنق زجاجة في GPU بدلاً من ذلك.
2. ستوفر Vulcan API إمكانية الوصول المباشر إلى GPU ، والتي ستتأكد من تجنب النفقات غير الضرورية في الوصول إلى GPU لإجراء مكالمات السحب وغيرها من مرافق GPU.
- هذا يعني أن الألعاب الأثقل لن تكون الآن مكثفة لوحدة المعالجة المركزية كما هي حاليا. أيضا ، سيلعب السائقين دورا أصغر في توفير الوصول إلى GPU ، مما يجعل نقل المعلومات أسرع بكثير.
3. تم تصميم واجهة برمجة التطبيقات أيضًا لتكون نظامًا أساسيًا تمامًا .
- لا مزيد من واجهات برمجة التطبيقات المتفرعة للهواتف المحمولة والمكتبية ولوحات المفاتيح. ستكون Vulkan API هي نفسها عبر أي جهاز وكله مع GPU متوافق.
4. في الوقت الذي أبقت فيه OpenGL استخدام ذاكرة GPU ومزامنتها مخفية ، فإن Vulkan يعرض ذلك ويعطي المطورين تحكمًا أفضل على GPU وكيف يتم استخدامه.
- يسمح Vulkan للمطورين بالتحكم في كيفية تنسيق وحدات معالجة الرسومات ، وإدارة الذاكرة وتنفيذ المزامنة.
- ومع ذلك ، فإنه لا يزال يخفي معلومات كافية للحفاظ على التوافق عبر النظام الأساسي .
5. تستخدم Vulkan لغة SPIR-V المتوسطة للحوسبة والرسومات المتوازية. تم تطوير SPIR-V ، مثل سابقاتها ، SPIR1.2 و SPIR2.0 ، من قبل مجموعة Khronos ، مع اختلاف أن SPIR-V لا يستخدم LLVM. يسمح SPIR-V لـ Vulkan بالحصول على مترجم أمامي مشترك على كل منصة. لا يحتاج المطورون أيضًا إلى شحن kernel أو shader code أو تم تبسيط تطبيق برنامج التشغيل.
كيف يمكن أن يساعدنا فولكان كمستخدمين نهائيين
يمكن لـ Vulkan API ، عند تطبيقها على إمكاناتها الكاملة من قبل المطورين ، تحسين تجربة الألعاب الخاصة بالمستخدم النهائي (تلك أنت ولي!) بشكل كبير. اعتقد رسومات مستوى وحدة التحكم على الأجهزة المحمولة ، وربما حتى الرسومات الصف سطح المكتب للسفالات الرائدة الراقية مع المعالجات المختصة!
1. نظرًا لأن معظم الشبكات الجوالة المتنقلة في هذه الأيام تعد أيضًا متعددة المراكز ، فستستخدم فولكان المعالجات إلى أقصى حد ممكن ، مما يجعل الألعاب أكثر سلاسة (أعلى FPS).
2. أيضا ، لأن Vulkan يوفر وصولا منخفضا إلى GPU للجهاز ، فهذا يعني أن الألعاب ستتمكن الآن من تقليل الوقت المستغرق للوصول إلى موارد GPU إلى حد كبير. مرة أخرى ، يترجم هذا إلى رسومات أفضل في إطارات أعلى في الثانية عن طريق الاستفادة القصوى من قدرات GPU .
3. على الرغم من أن قدرات النظام الأساسي عبر المنصات ، فإن قابلية التنقل للألعاب قد لا تؤثر بشكل مباشر عليك كمستخدم نهائي ، فهذا يعني أن الألعاب المفضلة لديك والتطبيقات الرسومية المكثفة قد تكون متاحة على كل نظام أساسي تقريبًا . الاحتمالات لا حصر لها ومحدودة فقط من خيالنا.
4. ستتمكن الألعاب أيضًا من ضمان أداء أكثر سلاسة من خلال ضمان أن يولي GPU مزيدًا من الاهتمام (اقرأ: يخصص المزيد من الذاكرة ويعطي الأفضلية) للأشياء المرئية للمستخدم على الفور ، مما يجعل اللعبة أكثر حصانة من التأخر والإطار .
خيارات للمطورين
على الرغم من أن واجهة برمجة التطبيقات منخفضة المستوى ذات المستوى المنخفض للرسومات هي بلا شك فكرة جيدة ، إلا أنها ليست عامل جذب واضح لكل مطور ، خاصة الجديدة منها. تتطلب البرمجة في مستوى أدنى ، أقرب إلى مستوى الأجهزة ، براعة أكثر قليلاً من البرمجة على مستوى أعلى ، وهو أكثر تجريدًا. هذا ليس بأي حال من الأحوال صدمة. من الواضح جداً ، ولهذا السبب بالضبط سيكون لدى المطورين ثلاثة خيارات مختلفة حول كيفية استخدام Vulkan لمشاريع التطوير الخاصة بهم.
1. استخدم Vulkan API مباشرة
- سيوفر ذلك وصولاً أدنى مستوى إلى الأجهزة ، ومن الواضح أنه لن يكون خيارًا للجميع. ومع ذلك ، يمكن استخدام هذا المستوى لإنشاء أدوات قياس الأداء للتطبيقات الأخرى التي تم تطويرها باستخدام Vulkan.
2. استخدام المكتبات
- ربما يكون الخيار الأكثر قابلية للتطبيق للمطورين الذين ينتقلون من OpenGL إلى Vulkan.
- ستكون معظم المكتبات مفتوحة المصدر ، لذلك يمكن للمطورين الذين لديهم خبرة في التطوير باستخدام OpenGL محاولة توصيل تطبيقات OpenGL الخاصة بهم إلى Vulkan API بسهولة نسبية ، بدلاً من الاضطرار إلى إجراء فحص كامل أو البدء من الصفر.
3. استخدام محركات اللعبة الأمثل مع Vulkan
- نحن على يقين من أن هذا هو المكان الذي سيحصل فيه معظم المطورين. يتم تصميم وتطوير محركات الألعاب من قبل أصحاب الخبرة العالية في الصناعة ، وذوي الخبرة ، ويمكن استخدامها بسهولة من قبل المطورين (من ذوي الخبرة والمبتدئين) لإنشاء ألعاب تستخدم مزايا المقدمة من Vulkan API.
- وقد أعلن مطورو مثل Epic Games (Unreal Engine) و Unity (Unity Engine) عن دعم Vulkan في محركاتهم القادمة ، وأعلن الكثيرون عن خطط أخرى.
راجع أيضًا: فهم APFS: نظام الملفات الجديد من Apple
تحمس!
في حال لم تقنعك هذه المقالة ... كن متحمسًا! الآن! تعد Vulkan بأن تكون نوعًا من التطوير الرائد في واجهات برمجة تطبيقات الرسومات التي من شأنها تحسين حياتنا في الألعاب. توجد بالفعل مقاطع فيديو لمقارنات بين أداء Vulkan و OpenGL ، والنتائج - بكل بساطة - مذهلة. إذا كانت مقاطع الفيديو هذه مؤشراً ، استعد لتجربة جودة رسومات مذهلة في كل مكان ، بما في ذلك الهواتف المحمولة الخاصة بك ، وكل ذلك بفضل وصول Vulcan API!
لذا ، ما رأيك في فولكان؟ هل تعتقد أنه سيكون بمثابة تحسين كبير على معيار OpenGL الحالي؟ واسمحوا لنا أن نعرف في قسم التعليقات أدناه.