سلامبرای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید ارسالی توسط 0reza666 برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
ببینید این مشکل افت فریم ، که میگین در لحظه ی خیلی کوتاهی انجام میشه ، از چند لحاظ هست :
- یکی از لحاظ تنظیمات بازی .
وقتی در تنظیمات بازی ، گزینه ی v-sync یا هر چیزی که فریم ریت را با مانیتور بخواد هماهنگ کنه ، فعال کنید ، یه کمی کندی در فریم ریت و این مشکل حس میشه .
این گزینه را در بازی غیر فعال کنید .
- یکی از لحاظ گرافیک بازی .
فرضا ماشین بازی را در نظر بگیرید که دارید در جاده ی آسفالت راه میرید ، بعد از جاده منحرف میشید و توی جاده ی خاکی ای میرید که پر از گرد و خاک هست و صحنه را بسیار زیاد گرد و خاک پُر میکنه . رندر ذرات اگه خیلی زیاد باشن ، مخصوصا در اون لحظاتی که گرد و خاک به اوجش میرسه و خیلی زیاد میشه ، رندرشون خیلی بیشتر از محیط عادی طول میکشه و اینجا باعث افت فریم میشه .
که این به نویسنده ی بازی بستگی داره که فرضا مقدار گرد و خاک را چقدر در نظر بگیره که باعث افت شدید در فریم نشه .
حالا من گرد و خاک را مثال زدم . ولی خیلی چیزهای دیگه هستن که رندرشون در بازی ، بخاطرِ رندرِ سنگین ترشون ، باعث افت فریم میشن که بسته به برنامه نویس بازی داره که کاری کنه که این افت فریم ، شدید و محسوس باشه و یا خفیف و نامحسوس .
- یکی از لحاظ پردازنده هست . این ، داستان اش خیلی زیاده .
توضیح خیلی مختصر اینکه شما وقتی در task manager میبینید که فرضا عملکرد پردازنده ، بصورت متوسط روی 50 درصد هست ، این در طول بازه ی زمانیِ بسیار طولانیِ 1 ثانیه ، اون هم بصورت متوسط هست .
1 ثانیه ، برای پردازنده ، بسیار طولانی هست . ممکنه (نه حتما) در طول این یک ثانیه ، فرضا در 0.4 از ثانیه (در فاصله های زمانیِ مختلف) تا 100 درصد رفته باشه و 0.6 ثانیه را اعدادِ دیگه ای بوده باشه که میانگین اش در این یک ثانیه ، 50 درصد شده باشه .
فرض کنید باز در اون 0.4 از ثانیه ، در 0.3 از ثانیه اش ، به همون 100 درصد از پردازنده تون نیاز داشت و بیشتر از اون را نیاز نداشت (یعنی چه تعداد هسته هاتون بیشتر بود یا نه ، برای اون بازی در این 0.3 از ثانیه ، فرقی نداشت) اما در 0.1 از ثانیه ، یک (یا چند) هسته ، بیشتر از پردازنده ای که شما دارین را احتیاج داشت .
یعنی ، پردازنده ی فعلی شما 8 نخ را همزمان اجرا میکنه اما در اون 0.1 از ثانیه (بصورت میانگین) ، این بازی ، 9 نخ (یا بیشتر) را میخواست اجرا کنه.
همین 0.1 از ثانیه که پردازنده تون به اندازه ای که اون بازی تون ، هسته ی پردازنده نیاز داشت برای پردازش شدن و پردازنده ی شما ، اون مقدار از هسته (ی منطقی یا فیزیکی) را نداشت ، باعث میشه که اون افت فریم را در اون لحظه ی کوتاه حس کنید .
اما برای بازی های روز ، پردازنده ی 6 هسته ای (به اصطلاح 12 نخ) اون هم اگه به روز باشه ، برای بازی های غیر استراتژیک نهایتا کافی هست مثل پردازنده ی 10400 (همچنان تاکید میکنم که پردازنده ی 4 هسته ای به اصطلاح 8 نخ روز مثل 10100 ، اقتصادی ترین انتخاب موجود برای بازی های غیر استراتژیک هست) .
اما نه اینکه بشه تضمین داد که توی این پردازنده ، برای بازی های غیر استراتژیک ، همچین اتفاقی در هیچ یک از بازی ها اصلا و اصلا برای یک بار و یک لحظه ی کوتاه هم نیفته .
فرضا ممکنه بازی ای باشه که شما یه پردازنده ی 12 هسته ی (به اصطلاح 24 نخ) هم بگیرین ، برای 0.05 از ثانیه ، همزمان به 30 نخ احتیاج داشته باشه که باعث میشه در اون بازی و در اون مدت کوتاه ، یه افت فریم خیلی کوتاهی را داشته باشید .
- علت دیگه از افت فریم ، کم آوردنِ اون قطعه هست که باعث گلوگاه میشه .
که تشخیص اش اغلب ، چندان مشکل نیست .
اغلب ، هر وقت در task manager (بهتره که update speed اش روی high باشه) یا هر برنامه ی دیگه ای که میزان کارکرد اون قطعه را نشون میده (مثل msi after burner) ، هر وقت در لحظه ی افت فریم ، میزان کارکرد واِشغالِ هر قطعه ، بالاتر از 90 درصد بود و مخصوصا بالاتر از 97 درصد بود ، اغلب موارد ، گلوگاه ، به اون قطعه برمیگرده (نه اینکه صد درصد بشه این حرف را زد ولی اغلب ، این طوره . چون خودِ این هم داستان داره) .
==========
میشه گفت عوامل بالا ، از مهمترین عوامل افت فریم در مدت بسیار کوتاه هستن .
اولی که دست خودتونه .انجام بدین (همچنین محدودیت قفل فریم در بازی را بردارین) .
اگه انجام دادین و درست نشد ، احتمالش هست که بخاطر قضیه ی اون پردازنده باشه که توضیح داده بودم (صد درصد نمیشه گفت) . یعنی احتمالش هست که با ارتقای پردازنده به پردازنده ی به روز مثل 10100 یا 10400 (و البته ارتقاء رم) ، افت فریم حداقل بهتر از قبل بشه (باز هم احتمال هست . نمیشه قطعی گفت) .
همه ی این احتمالات برای وقتی معنا داره که چارچوبِ اون برنامه ، بهینه نوشته شده باشه . یعنی ممکنه ساختار برنامه بهینه نباشه و ببا ارتقاء هم این مشکل حل نشه (مثل قضیه ی میزان گرد و خاک ای که توضیح داده بودم) .
باید در شرایط برابر با هم تست بشن . وقتی میگید یکی high بود و یکی دیگه ultra ، همین یکی اش ، تفاوت شون زمین تا آسمون هست .برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید ارسالی توسط 0reza666 برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید






پاسخ با نقل قول
Bookmarks