নেটওয়ার্ক স্মুথিং বাস্তবায়ন করা হচ্ছে


13

আমরা একটি গুণক প্রথম ব্যক্তি শুটার তৈরি করছি। ক্লায়েন্ট একটি স্থিত হারে (বর্তমানে 10Hz এ) সার্ভারে তার অবস্থানটি প্রেরণ করে। সার্ভারটি সমস্ত খেলোয়াড়ের একই হারে (10Hz) সমস্ত প্লেয়ারের অবস্থানকে সংকুচিত করে একটি একক বার্তা প্রেরণ করে।

যেমনটি প্রত্যাশা করা হয়েছে, 60fps গেমটি সেকেন্ডে 10 বার কেবল আপডেটগুলি পাচ্ছে তাই চলাচলটি বেশ চটকদার। এই আন্দোলনটি মসৃণ করার সর্বোত্তম উপায় কী? সর্বাধিক সুস্পষ্ট উপায় হ'ল শেষ দুটি প্যাকেটের মধ্যে বিভক্ত হওয়া, যাতে একটি নতুন প্যাকেট রিসিভ করার সাথে সাথে ইন্টারপোলেশন শেষ হয়। তবে এটি সমস্ত খেলোয়াড়ের জন্য তাত্ক্ষণিকভাবে 100 মিমি যোগ করে।

অন্য উপায়টি হ'ল শেষ কয়েকটি প্যাকেট থেকে অনুমান করা বেগ এবং ত্বরণটি ব্যবহার করে পরবর্তী প্যাকেট আসার আগে প্লেয়ারটি কোথায় রয়েছে তা অনুমান করার জন্য, তবে যদি ভবিষ্যদ্বাণীটি ভুল হয় তবে নতুন প্যাকেটটি পুনরুদ্ধার হওয়ার সাথে সাথে খেলোয়াড় ঝাঁপিয়ে পড়ে would ।

কেউ কি জানেন যে কীভাবে এএএ শিরোনামগুলি এই সমস্যার সমাধান করে?

উত্তর:


9

আপনার সবেমাত্র যা বলেছেন তারা ঠিক সেগুলি করে - এই দুটি পদ্ধতির মধ্যে একটির হয় বা তাদের মধ্যে কিছুটা আপস। (উদাহরণস্বরূপ, একটি সামান্য বিলম্ব গ্রহণ করুন এবং যেখানে সম্ভব বিরক্ত করুন, এবং পিং যখন বিলম্বকে ছাড়িয়ে যাবে তখন এক্সট্রপোলেট করুন)) সঠিকভাবে অবস্থানে ফিরে লাফানোর পরিবর্তে ('স্নেপিং' নামেও পরিচিত), আপনি সাধারণত ভুল পূর্বাভাসের মধ্যে কিছুটা ফাঁক ফেলে দেন typically এবং সঠিক মান, যদি সম্ভব হয় তবে তা মসৃণ করুন। আপনার অতীতের সংশোধনগুলির পরিমাণ হ্রাস করতে আপনি প্রয়োগ করতে হবে।

এটি একটি প্রায়শই জিজ্ঞাসিত প্রশ্ন এবং বেশ কয়েকটি প্রচলিত লিঙ্ক রয়েছে যা আপনি সম্ভবত গেমদেব.স্ট্যাকেক্সেক্সঞ্জ.কম এ অন্য কোথাও খুঁজে পাবেন এবং যদি আপনি অনুসন্ধান করেন তবে সেগুলিতে নিম্নলিখিতটি অন্তর্ভুক্ত করা হয়েছে:

গেম নেটওয়ার্কিং সম্পর্কে প্রতিটি প্রোগ্রামারকে কী জানতে হবে (এটি পরবর্তী দুটি লিঙ্কে সংক্ষিপ্তসার করে)

সোর্স মাল্টিপ্লেয়ার নেটওয়ার্কিং

অবাস্তব নেটওয়ার্কিং আর্কিটেকচার

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.