একটা মব নড়াচড়া না করলে দেখতে মূর্তির মতো লাগে। Animation দিয়ে আমরা bone-গুলো নাড়াই — হাঁটার সময় পা দোলে, আক্রমণে হাত ওঠে। এই কাজটা হাতে JSON লিখে নয়, Blockbench দিয়ে ভিজ্যুয়ালি করা হয়।
Blockbench-এ animation বানানোর ধাপ
- 1Blockbench-এ তোমার model খোলো (যেখানে bone-গুলো আছে)।
- 2উপরে Animate মোডে যাও।
- 3+ Add Animation দিয়ে একটা নতুন animation বানাও, নাম দাও যেমন
animation.dragon.fly। - 4Timeline-এ একটা সময় বেছে নাও, একটা bone সিলেক্ট করো, তার rotation/position বদলাও — এতে একটা keyframe তৈরি হয়।
- 5ভিন্ন সময়ে আরেকটা keyframe দাও — Blockbench মাঝের নড়াচড়া নিজে থেকে মসৃণ করে দেবে।
- 6Loop দরকার হলে (walk/fly) animation-কে Loop সেট করো।
Blockbench যে ফাইল বানায়
resource_pack/animations/dragon.animation.json (সরলীকৃত)
1{2"format_version": "1.8.0",3"animations": {4"animation.dragon.fly": {ⓘ5"loop": true,ⓘ6"animation_length": 1.0,ⓘ7"bones": {8"left_wing": {9"rotation": {10"0.0": [0, 0, 20],ⓘ11"0.5": [0, 0, -20],ⓘ12"1.0": [0, 0, 20]13}14}15}16}17}18}
- L4animation-এর নাম — পরে controller/entity ফাইলে এই নামে ডাকবে।
- L5loop: true — শেষ হলে আবার শুরু থেকে চলবে (ওড়া/হাঁটার জন্য)।
- L6animation_length: পুরো animation কত সেকেন্ড।
- L10"0.0"/"0.5"/"1.0" = সময় (সেকেন্ড), মান = bone-এর rotation [x,y,z]।
- L11এখানে ডানা +20° থেকে -20° এ গিয়ে আবার ফিরছে → ঝাপটানোর মতো।
Animation গেমে চেনানো (client entity-তে)
Blockbench animation export করলেই গেম জানে না কোন মব এটা ব্যবহার করবে। RP client entity ফাইলে animations অংশে একটা শর্ট-নাম দিয়ে map করতে হয়।
resource_pack/entity/dragon.json (description অংশে)
1"animations": {2"fly": "animation.dragon.fly",ⓘ3"idle": "animation.dragon.idle"4},5"scripts": {6"animate": ["idle"]ⓘ7}
- L2"fly" একটা শর্ট-নাম, ডান পাশে আসল animation ID।
- L6scripts.animate: কোন animation সবসময় চলবে। শর্ত-সাপেক্ষে চালাতে controller লাগবে (পরের লেসন)।