গেম লুপে (সি ++) উইন্ডোজটিতে স্লিপ () ফাংশনটি ব্যবহার করা কি নিরাপদ? আমি স্থির ফ্রেম রেট রাখতে চাই।
গেম লুপে (সি ++) উইন্ডোজটিতে স্লিপ () ফাংশনটি ব্যবহার করা কি নিরাপদ? আমি স্থির ফ্রেম রেট রাখতে চাই।
উত্তর:
না এইটা না. ঘুম কেবলমাত্র ঘুমানোর জন্য ন্যূনতম সময়ের গ্যারান্টি দেয় তবে এটি যে কোনও সময় নির্বিচারে পরিমাণে ঘুমাতে পারে। আপনার টাইমার রেজোলিউশন (টাইমবেগিনপিরিয়ডের মাধ্যমে সেট করা) এটির জন্যও গুরুত্বপূর্ণ এবং আপনি যদি আপনার টাইমারের জন্য অন্য কিছু (যেমন কোয়েরি পারফরম্যান্স কাউন্টার) ব্যবহার করেন তবে আপনার স্লিপ নিয়ন্ত্রণের জন্য এখনও টাইমবেজিণপিডিয়ো প্রয়োজন need
সুতরাং সংক্ষেপে:
ঘুম ব্যবহারের একমাত্র যুক্তিসঙ্গত ক্ষেত্রে যদি আপনি যেমন মোবাইল ডিভাইসগুলির জন্য সিপিইউ ব্যবহার হ্রাস করতে চান। তারপরেও আপনি স্লিপ (1) ব্যবহার করবেন; ফ্রেমরেটগুলি নিয়ন্ত্রণ করতে এটি ব্যবহার করা উপায় নয়।
কোনও স্থির ফ্রেমরেট পাওয়ার জন্য ভিএনসিএনকে বাধ্য করা সম্ভবত একটি সাধারণ উপায়, তবে তারপরেও বিভিন্ন হার্ডওয়্যার বিভিন্ন রিফ্রেশ রেটে চলবে এবং আপনি বিভিন্ন মেশিনে একটি ধারাবাহিক স্থির ফ্রেমরেট রাখতে সক্ষম হবেন না (এটি কোন ধরণের হার্ডওয়্যারের উপর নির্ভর করে আপনি অবশ্যই লক্ষ্য করছেন)।
এই সময়ে এই নিবন্ধটি উল্লেখ করা প্রয়োজন: গেমস অন গেমস - আপনার টাইমস্টেপ ঠিক করুন! । এটি আপনার সিমুলেশনে সামঞ্জস্যপূর্ণ টাইমস্টেপ পাওয়ার জন্য প্রয়োজনীয় পদক্ষেপগুলি বর্ণনা করে।
সংক্ষিপ্ত উত্তর: না, তা নয়।
একটি নির্দিষ্ট ফ্রেম রেট পেতে আপনাকে একটি নির্দিষ্ট কলব্যাক ফাংশন কল করতে হবে যা একটি নির্দিষ্ট ফ্রেম হারকে বাধ্য করে। স্পষ্টতই, আপনি যদি এখন লুপের মধ্যে একক পুনরাবৃত্তি নিতে না পারেন তবে আপনি স্থির ঘুমের সময় নির্ধারণ করতে পারবেন না।
GLUT glutTimerFunc () সরবরাহ করে , যা আপনি যদি ওপেনজিএলে প্রোগ্রামিং করেন তবে আপনার সঠিক ফাংশনটি প্রয়োজন। এই উদাহরণটি দেখুন বা এটি একটি দেখুন।
Sleep
?