عن المشروع
Particle Effect For UGUI (وتسمى أيضًا UI Particle) هي حزمة Unity من mob-sakai تسمح بعرض تأثيرات ParticleSystem كجزء من تسلسل واجهة Unity (uGUI). أُنشئت لحل المشكلة القديمة المتمثلة في عرض تأثيرات الجسيمات داخل أقنعة الواجهة وفرزها بشكل صحيح مع عناصر الواجهة الأخرى.
تعمل الحزمة باستخدام واجهات برمجة التطبيقات `MeshBake` و`MeshTrailBake` من Unity (المتاحة منذ Unity 2018.2) لتحويل بيانات الجسيمات إلى هندسة شبكية يمكن لـ CanvasRenderer عرضها مباشرة. هذا يلغي الحاجة إلى الحلول التقليدية التي تتطلب كاميرات منفصلة أو RenderTextures أو Canvases إضافية، والتي غالبًا ما تسبب عبء أداء وتشوهات بصرية.
تشمل الميزات الرئيسية:
- **دعم القناع**: يعمل مع مكونات `Mask` و`RectMask2D` عند استخدام شادرات متوافقة.
- **قابل للفرز**: تحترم الجسيمات ترتيب فهرس الأشقاء مع عناصر الواجهة الأخرى.
- **دعم وحدة المسار**: توافق كامل مع وحدة مسار ParticleSystem.
- **شفافية CanvasGroup**: يتكامل مع إعدادات شفافية CanvasGroup.
- **بدون تخصيصات**: مصمم لتجنب عبء جمع القمامة لكل إطار.
- **أي وضع عرض Canvas**: متوافق مع أوضاع Overlay وWorld Space وCamera Space.
- **دعم خطوط العرض**: يعمل مع خط العرض المدمج وUniversal Render Pipeline (URP) وHigh Definition Render Pipeline (HDRP).
- **مشاركة الشبكة**: يمكن لتأثيرات متطابقة متعددة مشاركة نتائج المحاكاة، مما يقلل تكلفة الأداء بشكل كبير عند عرض العديد من الجسيمات المتشابهة.
- **تحجيم تكيفي**: ضبط تلقائي للمقياس عند تغير مقياس Canvas بسبب دقة الشاشة.
- **أوضاع موضع الانبعاث**: اختر بين الموضع المطلق (فضاء العالم) أو النسبي (مقياس محلي).
- **UIParticleAttractor**: مكون يسحب الجسيمات نحو موضع هدف، مع أنواع حركة ومنحنيات قابلة للتكوين.
- **ParticleSystemPreviewer**: مكون محرر فقط لمعاينة تأثيرات الجسيمات في عرض المشهد.
توفر الحزمة ثلاثة مكونات رئيسية:
1. **UIParticle** — المكون الأساسي. أرفقه بكائن GameObject يحتوي أو سيحتوي على ParticleSystem. يدير خبز وعرض الجسيمات في خط uGUI. يدعم تحريك خصائص المواد عبر AnimationClip، ومواد متعددة، ومضاعفات مقياس الوقت.
2. **UIParticleAttractor** — مكون اختياري يجذب الجسيمات من ParticleSystem محدد نحو نقطة وجهة، مع سرعة ونوع حركة (خطي أو سلس أو كروي) وأحداث اكتمال قابلة للتكوين.
3. **ParticleSystemPreviewer** — مساعد محرر فقط يولّد ParticleSystem مؤقتًا للمعاينة عند تحديد الكائن في عرض المشهد. غير مشمول في البناءات.
التثبيت مدعوم عبر OpenUPM (`openupm add com.coffee.ui-particle`)، أو UPM من رابط git، أو كحزمة مدمجة. تتطلب الحزمة Unity 2018.3 أو أحدث.
قيود الشادرات: لا تدعم الحزمة معظم الشادرات المدمجة باستثناء `UI/Default`. يجب أن تتضمن الشادرات المخصصة دعم الاستنسل للقناع، وفي Unity 2018–2019، تُتجاهل مكونات UV zw، مما قد يؤثر على بعض الشادرات. النهج الموصى به هو استخدام الشادرات المدمجة `UI/Additive` أو `UI/Default`، أو إنشاء شادر مخصص باتباع قالب الاستنسل الموثق في الوثائق.
للأداء، يعرض نسخ متعددة من نفس التأثير يستفيد كثيرًا من ميزة مشاركة الشبكة، التي تزيل تكرار المحاكاة وتقلل استدعاءات الرسم. بدون مشاركة الشبكة، يستخدم UIParticle كائنات أقل من ParticleSystems الخام في فضاء الواجهة ولكنه لا يزال أكثر تكلفة من ParticleSystem قياسي مستخدم خارج الواجهة.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.