সংক্ষিপ্ত উত্তর: না
দীর্ঘ কাহিনী:
আমি যখন স্কুলে কিছু গেম প্রোগ্রামিং শিখি তখন আমাদের নিম্নলিখিতটি করা শিখিয়ে দেওয়া হয়েছিল:
গেমটিতে আমরা কী fps রেট চেয়েছি তা স্থির করুন (উদাহরণস্বরূপ 30)।
এমন কিছু কোড লিখুন যা প্রতিটি বিরতিতে একটি কাউন্টারে 1 যুক্ত করে (30 fps এর জন্য 33 মেসি)। এই কোডটি গেম লুপের সাথে একই সাথে চলে।
তারপরে গেমের জন্য গণনাগুলি করে এমন গেম লুপ (গেম স্টেট আপডেট) প্রতিটি ফ্রেমের জন্য একই কাউন্টারকে 1 দ্বারা হ্রাস করবে। তবে গ্রাফিক্সের গণনা এবং স্ক্রিনে অঙ্কন কেবল তখনই করা হবে যখন কাউন্টারটি শূন্যে থাকবে।
ফলাফলটি হচ্ছে সিপিইউ গেমের গণনাগুলি কতটা ভালভাবে পরিচালনা করে তার উপর নির্ভর করে গ্রাফিকাল ফ্রেম হারটি সামঞ্জস্য হবে। যখন গেমটিতে খুব বেশি কিছু ঘটছে না, তখন গণনাগুলি সহজ হয় এবং গ্রাফিক্স ফ্রেমের হারটি আসল গেম স্টেট আপডেটের চেয়ে বেশি হবে (মূলত আমরা চক্রের অপচয় করছি যেহেতু আমরা একই গেমের অবস্থা একাধিকবার স্ক্রিনে আঁকি)।
তবে তারপরে গেমটিতে অনেক কিছু ঘটছে, সিপিইউতে আরও কাজ করতে হবে এবং স্ক্রিনে আঁকার চেয়ে গেম স্টেট আপডেটগুলি অগ্রাধিকার দেওয়া হবে।
বেশিরভাগ সময়, গেমটি নিয়মিত হারে আপডেট করতে থাকবে, তবে "ল্যাগি" প্রদর্শিত হবে কারণ আপনি প্রতিটি আপডেট পর্দায় দেখতে পাবেন না। এটি পুরো গেমের গতি কমিয়ে দেওয়ার পক্ষে পছন্দনীয় হতে পারে কারণ আপনি এটি পর্দার প্রতিটি আপডেট আঁকতে বাধ্য করেন।
এটি সমস্ত সি ++ এবং কোনও গেম ইঞ্জিন, বা গ্রাফিক্স কার্ড দিয়ে করা হয়নি। সমস্ত কিছু একক কোর সিপুতে চলেছিল। আমরা 2 ডি গ্রাফিক্সের জন্য কিছু গ্রন্থাগার ব্যবহার করেছি।