عن المشروع

# WaveFunctionCollapse يولّد هذا البرنامج صورًا نقطية مشابهة محليًا للصورة النقطية المدخلة. تعني التشابه المحلي أن المخرجات تحتوي فقط على أنماط البكسلات NxN الموجودة في الإدخال، وأن توزيع الأنماط في المخرجات مشابه لذلك في الإدخال. تهيئ الخوارزمية المخرجات في تراكب من الحالات الممكنة، ثم تكرر مراقبة المناطق ذات إنتروبيا شانون الأدنى وتنشر القيود، وتنهار في النهاية إلى حالة محددة. قد تواجه تناقضات، والتي يصعب تجنبها (NP-hard)، لكن في الممارسة العملية هذا نادر. يتضمن المستودع الخوارزمية الأساسية والأمثلة والوثائق. يدعم كلاً من النماذج المتداخلة ونماذج البلاطات البسيطة، مع خيارات للتناظر والقيود والأبعاد الأعلى. الكود هو تطبيق وحدة تحكم مكتوب بلغة C# باستخدام .NET Core، بدون تبعيات خارجية. يمكن بناؤه باستخدام `dotnet run` أو `dotnet publish`. ألهم المشروع العديد من المنافذ إلى لغات أخرى (C++، Python، Rust، JavaScript، إلخ) وتكييفات لمحركات الألعاب مثل Unity وUnreal Engine وGodot. تم استخدامه في ألعاب تجارية مثل Bad North وCaves of Qud وTownscaper، وأدى إلى بحث أكاديمي. يناقش ملف README أيضًا خوارزميات ذات صلة مثل ConvChain وتوليف النسيج، ويوفر وصفًا تفصيليًا للخوارزمية ومراجع للأعمال السابقة.