দুই নেটওয়ার্ক নেটওয়ার্কের মধ্যে ইন্টারপোলটিং?


11

আমার ক্লায়েন্ট পক্ষের অনেক সত্ত্বা রয়েছে যা সিমুলেটেড হয় (তাদের গতিবেগগুলি প্রতিটি ফ্রেম ভিত্তিতে তাদের পজিশনে যুক্ত হয়) এবং আমি তাদের মৃত গণনা করি। তারা সর্বশেষ কোথায় গিয়েছিল এবং তাদের বেগ পরিবর্তন হয়েছে সে সম্পর্কে আপডেটগুলি পাঠায়। এটি দুর্দান্ত কাজ করে এবং অন্যান্য খেলোয়াড়রা এই কাজের সন্ধানটি দেখে। যাইহোক, কিছুক্ষণ পরে এই খেলোয়াড়রা কিছু সময়ের পরে অবতরণ শুরু করে। বিলম্বের কারণেই এটি।

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

উত্তর:


9

এই কারণে, আপনি সিমিউলেশন প্রায়ই 1 বা বেশি ফ্রেম চালানো যিনি খুঁজুন এগিয়ে কি আসলে একটি দিতে ক্লায়েন্টের সময় নির্দিষ্ট বিন্দুতে অনুষ্ঠিত হচ্ছে। সুতরাং অন্য কথায়, আপনি যা রেন্ডার করেন তা আসলে দ্বিতীয় ফ্রেম হতে পারে, শেষ ফ্রেম নয়।

"সামনের" শব্দের সমস্ত দৃষ্টান্তের জন্য এই নিবন্ধটি অনুসন্ধান করুন এবং আমি মনে করি আপনি উপরে বর্ণিত চিত্রটির চেয়ে ছবিটি আরও ভাল পেতে শুরু করবেন।


ঠিক আছে, তাই আপনি কি বোঝাচ্ছেন যে আমি খেলোয়াড়ের সত্যই রেন্ডার করা উচিত যেমন তারা 300 এমএস আগে ছিল এবং ভবিষ্যতের দিকে বিভ্রান্ত হয়? (একটি পৃথক রাজ্যে, যখন একটি নতুন রাজ্য আসবে; এটি পরিবর্তন হবে)
ভাউন হিল্টস

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

2

যখন তুমি বললে:

এই প্লেয়ারগুলি কিছু সময়ের পরে অবতরণ শুরু করে

এটি আমাকে ভাবতে বাধ্য করে যে আপনার সমস্যাগুলি যে কোনও বিলম্বিত সমস্যার চেয়ে আপনার ঘড়িগুলি ধাপে ছাড়ার সাথে আরও জড়িত। যদি এটি বিলম্ব হয় তবে এটি 10 ​​মিনিটের চেয়ে শুরুতে ঠিক খারাপ হওয়া উচিত one যদি একটি গেমের ঘড়ি অন্যটির তুলনায় কিছুটা দ্রুত গতিতে চলতে থাকে তবে এমন কিছু অদ্ভুত কল্পনা শিল্প রয়েছে যা সময়ের সাথে সাথে আরও খারাপ হয়ে উঠবে। কোনও ক্লায়েন্ট ভবিষ্যতে সিমুলেশন করতে পারে, যখন বর্তমান প্যাকেটগুলি সার্ভার থেকে আসে তখন এটি ক্লায়েন্টটিকে পিছনে টানবে, যার ফলে সত্তাগুলি চারপাশে ঝাঁপিয়ে পড়ে। এটি জানতে আরও কিছু পরীক্ষা চালান।

যদি সিঙ্কের বাইরে গেমের ঘড়িগুলি আসলেই একটি সমস্যা হয় তবে আপনাকে আপনার আপডেট লুপটি খুব সাবধানতার সাথে দেখতে হবে এবং নিশ্চিত করতে হবে যে প্রতিটি আপডেট গেম-টাইম পার হয়ে গেছে (হয় স্থির বা পরিবর্তনশীল) এর উপর ভিত্তি করে এবং গেমটি -কাল প্রাচীর-ঘড়ির মতো কিছু ব্যবহার করে উন্নত হয় (সময় বা অন্যান্য ভেরিয়েবলগুলি রেন্ডার করে না)। গাফারের এ সম্পর্কে কিছু ভাল নিবন্ধ রয়েছে এবং এখানে ফিক্স বনাম ভেরিয়েবল টাইমস্টেপগুলি নিয়ে কথা বলার একটি শালীন প্রশ্ন রয়েছে । আশাকরি এটা সাহায্য করবে.


এটি কেস নয়, প্রকৃতপক্ষে ঘটনাটি সত্য যে আমি অনেক দূরে মারা গিয়েছিলাম (একটি ল্যাগ স্পাইক বা কোনও কিছু - 'থামানোর' প্যাকেটটি সময়মতো পাওয়া যায় না এবং ক্লায়েন্ট সময়মতো নিজেকে সংশোধন করতে পারে না I আমি এটি অবশ্যই জানি) কেস কারণ পর ক্লায়েন্ট বন্ধ করে দিয়েছে আমি করতে পারেন সবচেয়ে অবস্থানে DEFINTELAY প্রবেশ করান ফিরে।
ভন Hilts
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.