HeadlinesBriefing favicon HeadlinesBriefing.com

SDF مقابل MSDF مقابل Slug: دليل عرض النص على GPU

Hacker News •
×

كيف أختار خوارزمية عرض النص بين SDF وMSDF وSlug وأطلس النسيج أو Rive؟ يبدو النص بسيطًا حتى تضطر إلى رسمه بنفسك. الحرف هو مجموعة من الخطوط العريضة: حلقات مغلقة من الخطوط المستقيمة ومنحنيات بيزير، مملوءة وفقًا لقاعدة اللف. رسم ذلك على وحدة المعالجة المركزية في صورة نقطية هو حل. رسمه على وحدة معالجة الرسومات، بوضوح، بأي حجم، تحت أي تحويل ثلاثي الأبعاد، بينما يتغير النص كل إطار، ليس كذلك.

تتجنب معظم المحركات الإصدار الصعب عن طريق خبز الحروف الرسومية في الأنسجة مسبقًا. في 2017، نشر Eric Lengyel Slug، الذي يعرض الحروف الرسومية مباشرة من الخطوط العريضة في تظليل الأجزاء، بدون أطلس نسيج وبدون تقسيم لكل إطار. حصل Lengyel على براءة اختراع في 2019، وفي 17 مارس 2026 كرس تلك البراءة للملكية العامة. يغطي هذا الدليل كيفية عمل عرض النص على GPU، من أطلس الصور النقطية إلى Slug.

الطريقة 1، أطلس النسيج، ينقط كل حرف رسومي مرة واحدة في نسيج مشترك. إنه سريع، لكن المشاكل تظهر عند التحجيم: تكبير ما بعد الحجم المخبوز يجعل الحرف ضبابيًا. كل حجم تريده واضحًا هو أطلس آخر، واللغات مثل الصينية واليابانية والكورية تسبب كارثة في الذاكرة. الطريقة 2، حقول المسافة الموقعة (SDF)، تخزن المسافة إلى أقرب حافة. نظرًا لأن المسافة تستوفي بسلاسة، يمكنك تكبير نسيج SDF صغير بشكل كبير والحصول على حافة نظيفة. لفترة طويلة، كان هذا هو الافتراضي لنص الواجهة الواضح، لكن SDF لا يزال نسيجًا مخبوزًا.