প্রকল্প সম্পর্কে
Pebble হলো Rust-এর জন্য একটি লো-লেভেল অ্যাপ্লিকেশন এবং গ্রাফিক্স ফ্রেমওয়ার্ক, যা কোনো নির্দিষ্ট রেন্ডারিং বা সিমুলেশন মডেল চাপিয়ে না দিয়ে প্রয়োজনীয় প্রিমিতিভস প্রদান করার জন্য ডিজাইন করা হয়েছে। এটি hecs (ECS), wgpu (GPU API), এবং winit (windowing)-এর ওপর ভিত্তি করে তৈরি।
এর মূল বৈশিষ্ট্যগুলোর মধ্যে রয়েছে:
- **ECS Architecture**: এটি একটি সিস্টেম-ভিত্তিক পদ্ধতি ব্যবহার করে যেখানে নির্দিষ্ট স্টেজ (Startup, Ready, Update, Render ইত্যাদি) এবং সিঙ্গেলটন ভ্যালুর জন্য রিসোর্স ম্যানেজমেন্ট রয়েছে।
- **Plugin System**: অ্যাপ্লিকেশনটি প্লাগইনগুলোর চেইনিংয়ের মাধ্যমে গঠিত, যা উইন্ডোয়িং, GPU ব্যাকএন্ড এবং গেম লজিকের মডুলার সংযোজনের সুযোগ দেয়।
- **Flexible Asset Pipeline**: একটি ইউনিফাইড CPU/GPU অ্যাসেট মডেল যা অ্যাসিনক্রোনাস আপলোড এবং ডিপেন্ডেন্সি ম্যানেজমেন্ট পরিচালনা করে। এটি জেনেরিক মেশ (bytemuck::Pod-এর মাধ্যমে), টেক্সচার এবং ম্যাটেরিয়াল ও কম্পিউট পাসের জন্য র (raw) WGSL শেডার সমর্থন করে।
- **GPU Resource Builders**: এটি Textures, Meshes, Materials এবং Compute পাইপলাইনের জন্য বিল্ডার প্রদান করে, যা ব্যবহারকারীদের নিজস্ব ভার্টেক্স লেআউট এবং বাইন্ড-গ্রুপ শেপ সংজ্ঞায়িত করার অনুমতি দেয়।
- **Async Integration**: বাফার রিডব্যাক এবং ব্যাকএন্ড অ্যাকুইজিশনের মতো নন-ব্লকিং GPU অপারেশনের জন্য এটি Promise/Fulfiller প্যাটার্ন ব্যবহার করে।
- **Cross-Platform**: এটি নেটিভ এক্সিকিউশন এবং ওয়েব ডেপ্লয়মেন্টের জন্য wasm32-unknown-unknown উভয়ই সমর্থন করে।
হাই-লেভেল ইঞ্জিনের বিপরীতে, Pebble ইচ্ছাকৃতভাবেই বিল্ট-ইন স্কেলেটাল অ্যানিমেশন, মডেল লোডার বা কলিশন সিস্টেম বাদ দিয়েছে, যাতে এই গেম-স্পেসিফিক সিস্টেমগুলোর বাস্তবায়ন ডেভেলপারদের ওপর ছেড়ে দেওয়া হয়।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.