همه ما مواقعی دچار تردید شدهایم: «این تلویزیون به درد من میخورد یا آن یکی؟ آیفون بخرم بهتر است یا تلفن هوشمند اندرویدی، لپتاپ بخرم یا رایانه رومیزی؟، پلیاستیشن یا ایکسباکس؟» و....
یکی از اهداف ما در کلیک، رفع بسیاری از این ابهامات و کمک به مخاطب در گرفتن تصمیم صحیحتر و صریحتر است. به همین دلیل سلسله مقالاتی در باب وجوه تمایز ایکسباکس، پلیاستیشن و رایانههای شخصی در سایت کلیک آنلاین منتشر کردیم. حال نوبت آن است که به یک موضوع پیچیده دیگر بپردازیم؛ بحث تنظیمات گرافیکی بازیهای رایانهای. برای بیشتر ما پیش آمده که وارد یک بازی شده و از تنظیمات پیشفرض بازی خوشمان نیاید. احساس میکنیم سیستمی که خریدهایم بیشتر از اینها کشش دارد. پس حس ماجراجوییمان گل میکند و به تنظیمات تخصصی بازی وارد میشویم. هر جا به نظرمان منطقی بیاید، دستکاری میکنیم و دوباره وارد بازی میشویم. این بار کیفیت بازی بهتر شده، اما تصویر مدام لنگ میزند.
دوباره به تنظیمات مراجعه میکنیم. چند تا از گزینهها را غیرفعال کرده یا کاهش میدهیم. وارد بازی میشویم و این بار حس میکنیم کیفیت بیش از حد افت کرد. دوباره به تنظیمات میرویم و این دور باطل را تا جایی که حوصله داشته باشیم، ادامه میدهیم. اینجاست که به خود میگوییم ایکاش اشراف بیشتری روی ذات این تنظیمات داشتیم و اینجاست که کلیک به کمک ما میآید. در این نوشته سعی شده موارد تا حد ممکن بسادگی و صراحت بیان شود تا با یکی دو بار مطالعه، یک عمر خیالتان را راحت کند، بنابراین از ورود به جزئیات پیچیده تکنیکی حذر شده است.
رزولوشن و فریم بر ثانیه
پیکسل (Pixel) سادهترین واحد تصویری دیجیتال است – یک نقطه ریز رنگی – و تفکیکنمایی یا رزولوشن به مجموعهای از ردیف و ستون پیکسل (مجموع افقی و عمودی) گفته میشود که ساختار تصویر مورد نمایش را تشکیل میدهد. فراگیرترین رزولوشنهای امروزی عبارت است از:
1280×720 (720p), 1920×1080 (1080p), 2560×1440 (1440p)
و 3840×2160 معروف به 4K یا ultra ـ HD. اینها رزولوشنهای مناسب نمایشگرهای 16×9 است. برای نمایشگرهای 16×10، رزولوشنها اندکی تفاوت دارند ازجمله 1920×1200، 2560×1600 و…
اگر هر بازی را مجموعهای پیوسته از سلولهای انیمیشنی (تصاویر بیحرکتی که یک لحظه معین را به نمایش میگذارند) بدانیم، فریم بر ثانیه یا Frames Per Second که به اختصار FPS خوانده میشود، واصف تعداد تصاویری است که در هر ثانیه تولید میشود. در مقابل Refresh Rate یا آهنگ بازنیرودهی (واژهنامه کامپیوتر دوسویه، فرهنگ معاصر) به تعداد آپدیتهای تصویر نمایشگر در ثانیه اطلاق میشود. آهنگ بازنیرودهی را با واحد هرتز (Hz) میسنجند. هر هرتز یک دوره بر ثانیه است. با آگاهی به این توضیحات، تمایز بین دو مورد آسان میشود؛ یک مانیتور 60 هرتزی، 60 بار در ثانیه آپدیت تصویر انجام میدهد و یک بازی رایانهای که سرعت رندرش 60 فریم بر ثانیه است، باید مانیتور را با همان مقدار فریم تغذیه کند.
هر چه بیشتر به کارت گرافیک خود فشار بیاورید، سرعت فریم بر ثانیه رندر بازی افت میکند. اگر سرعت فریم زیادی پایین باشد، فریمها به تکرار افتاده و تصویر مورد نمایش دچار سکته میشود. بازیکنانی که اهل رقابت هستند (مانند کانتر استرایک یا دوتا بازها)، برای اجتناب از کندی تشخیص فرمانها، سرعت فریم بالا را ترجیح میدهند. این در حالی است که گیمرهای نوپا عمدتا حاضرند سرعت فریم را فدای ظاهر بهتر و رزولوشن بالاتر کنند که اصلا صحیح نیست و به ضرری که به چشم و فشاری که به اعصاب و روان بازیکن وارد میکند، نمیارزد. گفتنی است این روزها ایدهآل بیشتر بازیها، رزولوشن 1080p و فریم بر ثانیه 60 است.
از آنجا که بیشتر بازیها ابزار بنچمارک داخلی ندارند، بد نیست از یک نرمافزار جدا بهره بگیرید. نرمافزارهای Shadowplay و FRAPS برای این کار مناسب است و مقیاس فریم را پیوسته به شما گزارش میکند.
فزون مقیاس و تخفیف الگو
بتازگی بازیهای متعددی مانند Ryse: Son of Rome و
Shadow of Mordor مجهز به تنظیماتrendering resolution منتشر شدهاند. با استفاده از این قابلیت میتوانید علاوه بر حفظ رزولوشن نمایشگر، رزولوشن بازی را دستکاری کنید. اگر رزولوشن رندر بازی از رزولوشن نمایشگر پایینتر باشد، Upscale یا افزون بر مقیاس باشد، با رزولوشن نمایشگر یکی میشود که معمولا نتیجهاش زشت و زمخت خواهد شد.
در مقابل اگر میزان رزولوشن رندر بازی بالاتر از نمایشگر باشد،Downsampling یا تخفیف الگو صورت میگیرد و با تطبیق اندازه دو رزولوشن، در ازای تحمیل فشار دوچندان به کارت گرافیک، کیفیت بازی افزایش قابل توجهی پیدا میکند.
عملکرد
رزولوشن در حقیقت مقدار پیکسلهایی است که کارت گرافیک باید اجرا کند. پس تاثیر مستقیمی روی Performance یا عملکرد دارد. از همین رو بیشتر بازیهای کنسولی را که با رزولوشن 1080p اجرا میشوند، از رزولوشنهای پایینتر آپسکیل میکنند. از این راه کنسولها میتوانند در عین رندر کردن گرافیکهای زیبا، سرعت فریم را نیز
حفظ کنند.
همگامسازی عمودی و گسست تصویر
اگر چرخه رندر نمایشگر با چرخه رندر بازی هماهنگ نباشد، ممکن است تصویر زمانی یک فریم را نمایش بدهد که فریم بعدی هم تغذیه شده است. در نتیجه یک شکست موسوم به Screen Tearing یا گسستگی تصویر رخ میدهد. در این حالت تکههای دو یا چند فریم همزمان به نمایش درمیآید. پس از مقیاس فریم پایین، دومین دشمن یک گیمر همین است. یکی از راههای مقابله با گسست تصویر، استفاده از
Vertical Sync(Vsync)c یا همگامسازی عمودی است. معمولا این گزینه در تنظیمات بازی وجود دارد و وظیفهاش جلوگیری از شتاب بازی در رندر است؛ تا زمانی که فریم بهصورت کامل به نمایش دربیاید. متاسفانه vsync هم دردسرهای خودش را دارد. در صورتی که مقیاس فریم بازی از مقیاس بازنیرودهی نمایشگر بیشتر باشد، بازی دچار لگ در تشخیص ورودی (فرمانهای بازیکن از طریق ماوس، کیبورد و دیگر کنترلها) میشود.
همگامسازی عمودی انطباقی
مشکل دیگر vsync زمانی به چشم میآید که مقیاس فریم از مقیاس بازنیرودهی کمتر شود. اگر مقیاس فریم از مقیاس بازنیرودهی بیشتر باشد، vsync آنها را تطبیق میدهد، اما اگر مقیاس فریم کمتر باشد، به اجبار vsync، به مقیاس مشخص دیگری سوئیچ میکند؛ برای مثال به 30 فریم بر ثانیه. اگر نوسان مقیاس فریم زیاد باشد، تصویر دچار سکته میشود. قطعا هیچ کس چنین چیزی را نمیخواهد.
انویدیا چارهای برای این مشکل اندیشیده است. هر بار که مقیاس فریم از مقیاس بازنیرودهی کمتر شود، با دخالت همگامسازی عمودی انویدیا، vsync غیرفعال میشود. این گزینه را میتوان در کنترل پنل Nvidia (که همراه درایور کارت گرافیک نصب میشود) فعال کرد. اگر از vsync استفاده میکنید، حتما این گزینه را فعال کنید.
جی ـ سینک و فری ـ سینک
فناوریهای جدید در حال رفع کامل مشکلات یاد شده هستند. منشا تمام مشکلات، نمایشگرهایی است که مقیاس بازنیرودهی ثابتی دارند. فرض کنید بشود بازنیرودهی نمایشگر را طوری تنظیم کرد که با مقیاس فریم تغییر کند. در این صورت تمام مشکلات مانند گسست تصویر و مشکلات اعمال ورودی ناشی از vsync در یک آن حل خواهد شد. برای چنین امری، باید یک نمایشگر و کارت گرافیک همساز داشته باشید. در این صورت دو فناوری جدید، یکیG-sync از سوی انویدیا و دیگری Project FreeSync از سوی اِی.ام.دی در راه بازار است.
ضد شکست
تعدادی مربع را در خطی مورب بکشید. میتوانیم بگوییم لبههای تیز آنها حالتی پله مانند ایجاد کردهاست. این اثر پلهای زمخت را aliasing یا شکستگی مینامند. ما آن را رندر رندهای میگوییم! اگر رزولوشنهای امروزی بسیار بالاتر بودند، چنین مشکلی نداشتیم، اما اکنون باید دست به دامان
aliasingـ anti یا ضدشکستگی شویم.
تکنیکهای زیادی برای مقابله با شکستگی داریم، اما یکی از بهترین نمونهها supersampling(SSAA) است. در این تکنیک، فریمها در رزولوشنی بالاتر از رزولوشن نمایشگر رندر شده، سپس دوباره به اندازه اصلی کاهش مییابند. در تصویر مربوط به Downsampling بازی Shadow of Mordor میتوانید اثر ضد شکستگی را از رزولوشن 5120×2880 به 1440 ببینید.
یکی از آجرهای نارنجی روی سقف را در نظر بگیرید. پیکسل کناری آن که نماینده آسمان است، به رنگ آبی روشن است. این دو پیکسل در کنار هم حالتی تیز و شکسته ایجاد میکنند. حال اگر این صحنه را با رزولوشن چهار برابر رندر کنیم، هرکدام از پیکسلها، به چهار پیکسل تبدیل خواهد شد که تعدادی همرنگ آجر و تعدادی دیگر همرنگ آسمانند. با کنار هم قرار داشتن این پیکسلهای چهارتایی، نتیجه چیزی مابین حالت حاضر خواهد بود. اگر این عمل را روی کل صحنه انجام دهیم، تبدیل ظریفتری صورت خواهد گرفت.
با وجود زیبایی حاصله، Supersampling از نظر محاسباتی بسیار سنگین است. در این حالت هر فریم با رزولوشنی چند برابر رزولوشن بازی کاربر رندر میشود. حتی بسیاری از کارتهای گرافیک قدرتمند نیز از اجرای درست و درمان این تکنیک عاجزند. در عوض، تکنیکهای دیگری برای نرمسازی شکستگیها هست که هفته آینده به آنها نیز خواهیم پرداخت.
سیاوش شهبازی
سید رضا صدرالحسینی در یادداشتی اختصاصی برای جام جم آنلاین مطرح کرد
دانشیار حقوق بینالملل دانشگاه تهران در یادداشتی اختصاصی برای جام جم آنلاین مطرح کرد
یک پژوهشگر روابط بینالملل در گفتگو با جام جم آنلاین مطرح کرد
در یادداشتی اختصاصی برای جام جم آنلاین مطرح شد
در گفتوگوی «جامجم» با نماینده ولیفقیه در بنیاد شهید و امور ایثارگران عنوان شد