التحقّق من حالة عرض Vulkan

للتحقّق من حالة العرض بعد طلب محدّد تم إرساله، انقر على الأمر في لوحة الأوامر. يتيح لك جزء State فحص حالة العرض باستخدام العناصر التالية.

نص بديل

قائمة انتظار آخر رابط (قائمة انتظار مرتبطة حاليًا)

تحتوي العقدة LastBoundQueue على معلومات قائمة الانتظار المستخدمة في vkQueueSubmit، والتي ترسل الأمر المعني. سيتم استخدام VulkanHandle للعثور على معلومات الرسم لحالة العرض الحالية في LastDrawInfos.

نص بديل

  1. وتعرِض VulkanHandle قيمة آخر عنصر VkQueue تم استخدامه، وهي في الواقع قائمة الانتظار المرتبطة حاليًا للأمر الذي تم إرساله.

  2. يتم تخزين معلومات حالة العرض الحالية في LastDrawInfos وتتم فهرستها من خلال القيمة VkQueue.

معلومات آخر رسم (معلومات حالة العرض الحالية)

تحتوي العقدة LastDrawInfos على معلومات الرسم الأخير لكل VkQueue، وتتضمّن المعلومات التالية:

  • معلومات المخزن المؤقت للإطارات
  • معلومات العرض
  • مجموعات الكلمات الوصفية المرتبطة
  • الموارد الاحتياطية المرتبطة بالرأس والفهرس
  • مسار الرسومات
  • معلمات الرسم

مخزن إطارات ضيق مرتبط

نص بديل

  • العقدة Framebuffer: تعرض معلومات المخزن المؤقت للإطارات المرتبط حاليًا. يتم تعديل هذه العقدة بعد تنفيذ كل vkCmdBeginRenderPass في قائمة الانتظار نفسها.

  • عقدة Renderpass: تعرض معلومات تمرير العرض المستخدمة لإنشاء المخزن المؤقت للإطارات. يُرجى العلم أنّ هذا الإذن ليس تصريح العرض المرتبط حاليًا بالرسم.

  • العقدة Imageattachments: إدراج جميع مرفقات الصور (VkImageViews) المرتبطة بالمخزن المؤقت للإطارات. يوضح كل عنصر بالقائمة معلومات طريقة عرض الصورة.

  • تُظهر العقدة الصورة معلومات الصورة المرتبطة بعرض الصورة.

ممر عرض مرتبط

نص بديل

  • عقدة Renderpass: تعرض معلومات ممر العرض المستخدمة حاليًا للعرض. ويتم تعديله بعد تنفيذ كل VkCmdBeginRenderPass في قائمة الانتظار نفسها.

  • عقدة attachmentDescriptions: إدراج كل VkAttachmentDescription لتمرير العرض الحالي قيد الاستخدام.

  • عقدة SubpassDescriptions: تسرد VkSubpassDescription لكل تمريرة فرعية.

  • عقدة SubpassCredentialions: تدرج VkSubpassDependency لكل ممر فرعي.

مجموعات الكلمات الوصفية المرتبطة

نص بديل

  • العقدة DescriptorSets: إدراج جميع مجموعات أدوات الوصف المرتبطة حاليًا. تعكس قائمة مجموعات الواصفات المحدّدة الحالة بعد طرح آخر vkCmdBindDescriptorSets في قائمة الانتظار نفسها، وسيتم استبدال معلومات مجموعة الواصف الأصلية أو ستتم إضافة معلومات جديدة وفقًا لمَعلمات آخر vkCmdBindDescriptorSets تم تنفيذها.

  • الارتباطات: تسرد العقدة جميع روابط الواصف المرتبطة حاليًا في مجموعة الوصف.

    يسرد كل رابط واصف أيضًا الواصفات المرتبطة به.

  • عقدة التنسيق: تعرض معلومات VkDescriptorSetLayout المستخدَمة لتخصيص مجموعة الواصف.

مسار الرسومات المرتبطة

نص بديل

عقدة GraphicsPipeline: تحتوي على معلومات حول آخر مسار للرسومات المرتبطة. يتم تعديل هذه العقدة بعد تنفيذ كل VkCmdBindPipeline في قائمة الانتظار الحالية.

الموارد الاحتياطية المحدودة

نص بديل

  • تسرد عقدة BoundVertexBuffers جميع المخازن المؤقتة المرتبطة. لكل مورد احتياطي مرتبط، يتم عرض معلومات المورد الاحتياطي الاحتياطي. يتم تعديل القائمة وفقًا لذلك بعد تنفيذ كل vkCmdBindVertexBuffers في قائمة الانتظار نفسها.

  • تعرض العقدة BoundIndexBuffer آخر مخزن مؤقت للفهرس المرتبط، بما في ذلك نوع الفهرس ومعلومات المخزن المؤقت الاحتياطي.

رسم مَعلمات الأوامر

نص بديل

العقدة CommandParameters: تحتوي على المعلمات إلى vkCmdDraw وvkCmdDrawIndexed وvkCmdDrawIndirect وvkCmdDrawIndirectIndexed. لكل نوع من أوامر الرسم، هناك عقدة فرعية مقابلة تحتوي على قيم المعلمات. نظرًا لأنه لا يمكن استخدام هذه الأنواع الأربعة من أوامر الرسم في نفس الوقت، يمكن تعبئة عقدة فرعية واحدة فقط من العقد الفرعية الأربع في كل مرة. يتم تحديث محتوى CommandParameters بعد تنفيذ أي من أوامر الرسم الأربعة التي يتم تنفيذها في قائمة الانتظار نفسها.