هذا مشروع لعبة/تجريبي يوضح كيفية البدء في تقديم الرسوم الرسومية مع خوارزمية سبيكة إريك لينجيل على كل من وحدات المعالجة المركزية ووحدة معالجة الرسومات.
أوصي بقراءة الشرائح المرتبطة على الأقل في القسم المرجعي قبل أي رمز.
| مشروع فرعي | غاية |
|---|---|
| مولد الخط | يقرأ ملف الخط truetype. |
| عارض البرمجيات | يقرأ ملف .sluggish ويخرج صورة .TGA لكل نقطة رمز محددة |
| عارض الأجهزة | يقرأ ملف .sluggish ويجعل ما يصل إلى 6 حروف رسومية محددة باستخدام OpenGL |
| ميزة | يدعم |
|---|---|
| نسيج المنحنيات (FP32) | نعم |
| نسيج النطاقات (U16) | نعم |
| قطع الحروف الرسومية إلى نطاقات (الأداء) | نعم |
| منحنيات الفرز (الأداء) | نعم |
| التنفيذ عالي الجودة لأي شيء | لا |
| أداء عالي | لا |
| تشفير نقطة عائمة 16 بت | لا |
| إزالة البيانات وضغط البيانات | لا |
| تخطيط النص | لا |
| الأشكال الملونة | لا |
| تكييف عينة فائقة | لا |
| تصحيح جاما | لا |
| المضلعات المحددة | لا |
كان الهدف هو إبقاء الأمور بسيطة للغاية مع عدم وجود أداء فظيع . على سبيل المثال ، تم تنفيذ قطع الحروف الرسومية إلى نطاقات لأنه بسيط ويحسن الأداء بشكل كبير .
بشكل افتراضي ، فإن هدف Debugger القابل للتنفيذ ليس في دليل الإخراج ولكن مسار الدليل المحدد بواسطة متغير بيئة SLUGGISH_APP_DIR .
يتم نسخ ملفات .exe و .pdb إلى هذا الدليل بعد كل بناء.
لتسهيل هذه العملية ، يمكنك تشغيل Visual Studio من خلال برنامج نصي دفعي بسيط:
:: This file would sit next to the Sluggish directory
cd Sluggishmakefilesvs2013
set SLUGGISH_APP_DIR=C:important_stuffsluggish
Sluggish.sln
لمعرفة المزيد حول كيفية عمل خوارزمية Slug ، راجع:
تقدم الخط المتمحور حول GPU مباشرة من الخطوط العريضة لـ Glyph بواسطة Eric Lengyel
مجلة تقنيات رسومات الكمبيوتر (JCGT) ، المجلد. 6 ، لا. 2 ، 31-47 ، 2017
ورقة: http://jcgt.org/published/0006/02/02
الشرائح: http://terathon.com/i3d2018_lengyel.pdf
| المشروع/الملف | ترخيص (ق) | ملف (ملفات) الترخيص |
|---|---|---|
| هذا المشروع | unisense (المجال العام) | unisense.md |
| SDL 2 | زلب | libs/sdl2/copying.txt |
| GLEW | ترخيص BSD المعدل ترخيص MESA ثلاثي الأبعاد (MIT) ترخيص Khronos (MIT) | libs/glew/license.txt |
| Premake 5 | Premake 5 | Makefiles/premake_license.txt |
| STB_TRUETYPE.H | Pick-A-Tercense: unisense (المجال العام) معهد ماساتشوستس للتكنولوجيا | رمز/مولد/stb_truetype.h |
| stb_image_write.h | Pick-A-Tercense: unisense (المجال العام) معهد ماساتشوستس للتكنولوجيا | الكود/RENTER_SW/STB_IMAGE_WRITE.H |
على الرغم من عدم وجود براءة اختراع على خوارزمية سبيكة اعتبارًا من وقت كتابة هذا التقرير ، فقد قدم إريك لينجيل طلبًا لأحدهم وما زالت العملية مستمرة ...