LVBen দ্বারা সরবরাহিত কণা সিস্টেম সমাধানটি কাজ করে, আপনার স্প্রাইটের জন্য 2D টুলকিট ব্যবহার করার সময় এটি সেরা উপযুক্ত সমাধান নয়। প্রাথমিক কারণটি হ'ল মূল প্রিফাবের বর্তমান স্প্রিট অ্যানিমেশনটিতে কণা সিস্টেমের প্রেতাত্মা ট্রেইল উপাদান সিঙ্ক করা অসম্ভব।
এখানে আমি ব্যবহার করে শেষ করেছি এমন 2 ডি টুলকিট বন্ধুত্বপূর্ণ সমাধান।
আপনি যে প্রিফ্যাবটিতে ভূতের ট্রেইলটি চান তা থেকে, এটি শূন্য হিসাবে কাজ করতে একটি খালি গেমের বিষয়টিকে এটিতে সংযুক্ত করুন। এই মূলের অধীনে, গেম অবজেক্টগুলি (যদি আপনি অ্যানিমেটেড স্প্রাইটস চান বা না চান তবে নির্ভর করে) যে কোনও সংখ্যক tk2dSprite বা tk2dSpriteAnimator সংযুক্ত করুন এবং ঘোস্টিং / বিবর্ণ প্রভাবটি অর্জনের জন্য যথাযথ হিসাবে তাদের বর্ণ আলফা মানগুলিকে সামঞ্জস্য করুন।
শীর্ষ প্যারেন্ট আপডেটে
// AmountToMove is a Vector3 of the amount we will translate this gameobject.
float y = (int)AmountToMove.y == 0 ? 0 : -AmountToMove.y;
float distanceFactor = 0.05f;
for (int i = 0; i < GhostingRoot.childCount; ++i) {
// Based on the player's current speed and movement along the x and y axes,
// position the ghost sprites to trail behind.
Vector3 ghostSpriteLocalPos = Vector3.Lerp(
GhostingRoot.GetChild(i).localPosition,
new Vector3((-CurrentSpeed * distanceFactor * i),
(y * distanceFactor * i), 0),
10f * Time.deltaTime);
// GhostingRoot is the root gameobject that's parent to the ghost sprites.
GhostingRoot.GetChild(i).localPosition = ghostSpriteLocalPos;
// Sync the animations.
// _ghostSprites is a List of the tk2dSpriteAnimator ghost sprites.
_ghostSprites[i].Play(SpriteAnimator.CurrentClip.name);
_ghostSprites[i].Sprite.FlipX = Sprite.FlipX;
}
এই দ্রবণটি মুখ্য স্প্রিটের সাথে ভূত স্প্রিটের অ্যানিমেশনগুলিকে সিঙ্ক করার সময় পেছনের ঘোস্টিং প্রভাব তৈরি করবে create