vsync در بازی ها به چه معناست. تنظیمات گرافیکی در بازی ها: چه تاثیری دارند؟ اتصال همگام سازی عمودی

همگام سازی عمودی در بازی ها چیست؟ این عملکرد وظیفه نمایش صحیح بازی ها را در نمایشگرهای LCD استاندارد با فرکانس 60 هرتز بر عهده دارد. در صورت فعال بودن، نرخ فریم به 60 هرتز محدود می شود و هیچ وقفه ای روی صفحه نمایش داده نمی شود. غیرفعال کردن آن باعث افزایش نرخ فریم می شود، اما در عین حال، اثر پاره شدن صفحه نمایش نیز وجود خواهد داشت.

V-sync یک موضوع نسبتاً بحث برانگیز در بازی ها است.از یک طرف برای راحتی بصری گیم پلیبه نظر می رسد بسیار ضروری است، با فرض اینکه شما یک مانیتور LCD استاندارد دارید.

به لطف آن، در طول بازی هیچ خطایی روی صفحه ظاهر نمی شود، تصویر پایدار است و هیچ شکافی ندارد. نقطه ضعف آن این است که نرخ فریم روی 60 هرتز محدود شده است، بنابراین بازیکنان سخت‌گیرتر ممکن است با تاخیر ورودی مواجه شوند، یعنی تاخیری جزئی هنگام حرکت در بازی با ماوس (می‌تواند معادل هموارسازی مصنوعی حرکت ماوس باشد).

غیرفعال کردن همگام سازی عمودی نیز مزایا و معایب خود را دارد. اول از همه، نرخ فریم نامحدود FPS ارائه می شود و در نتیجه تاخیر ورودی ذکر شده را به طور کامل حذف می کند. برای بازی ها مفید است. نوع ضد ضربهکه در آن پاسخگویی و دقت مهم است. حرکت و هدف گیری بسیار واضح، پویا است، هر حرکت ماوس با دقت بالایی انجام می شود. در برخی موارد، ما می توانیم بیشتر دریافت کنیم نرخ FPS، از آنجایی که V-Sync، بسته به کارت گرافیک، می تواند کمی عملکرد سخت افزار را کاهش دهد (تفاوت حدود 3-5 FPS است). متاسفانه، نقطه ضعف این است که بدون همگام سازی عمودی، ما یک اثر پاره شدن صفحه نمایش را دریافت می کنیم. هنگام چرخش یا تغییر حرکت در بازی متوجه می شویم که تصویر به دو یا سه قسمت افقی تقسیم شده است.

V-Sync را فعال یا غیرفعال کنید؟

آیا همگام سازی عمودی لازم است؟ همه چیز به ترجیحات فردی ما و آنچه می خواهیم به دست آوریم بستگی دارد. در بازی های چند نفره FPS، توصیه می شود برای بهبود دقت هدف، همگام سازی عمودی را خاموش کنید. اثر پاره شدن صفحه نمایش، به عنوان یک قاعده، چندان قابل توجه نیست و وقتی به آن عادت کنیم، حتی متوجه آن نمی شویم.

به نوبه خود، در بازی های داستانیمی توانید با خیال راحت V-Sync را فعال کنید. در اینجا دقت بالا چندان مهم نیست، ویولن اول توسط محیط نواخته می شود، راحتی بصری، بنابراین باید روی کیفیت خوب شرط بندی کنید.

همگام سازی عمودی معمولاً می تواند در تنظیمات گرافیکی بازی روشن یا خاموش شود. اما اگر چنین عملکردی را در آنجا پیدا نکردیم، می توانید آن را به صورت دستی در تنظیمات کارت ویدیو خاموش کنید - هم برای همه و هم فقط برای برنامه های انتخاب شده.

همگام سازی عمودی در کارت های گرافیک NVIDIA

در کارت های گرافیک GeForce، این ویژگی در کنترل پنل Nvidia قرار دارد. کلیک کلیک راستماوس را روی دسکتاپ ویندوز 10 قرار دهید و سپس Nvidia Control Panel را انتخاب کنید.

در نوار کناری، زبانه 3D Settings Controls را در قسمت 3D Settings انتخاب کنید. تنظیمات موجود در سمت راست نمایش داده می شود.

تنظیمات به دو تب تقسیم می شوند - جهانی و برنامه. در تب اول می‌توانید گزینه‌هایی را برای همه بازی‌ها و به عنوان مثال فعال یا غیرفعال کردن همگام‌سازی عمودی در هر کدام تنظیم کنید. در حالی که در تب دوم می توانید همان پارامترها را تنظیم کنید، اما به صورت جداگانه برای هر بازی جداگانه.

تب global یا program را انتخاب کنید و سپس به دنبال گزینه Vertical Sync در لیست بگردید. یک فیلد کشویی در کنار آن وجود دارد - ما انتخاب می کنیم که همگام سازی عمودی را خاموش یا روشن کنیم.

V-Sync در گرافیک AMD

در مورد کارت‌های گرافیک AMD، دقیقاً شبیه به Nvidia است. روی دسکتاپ کلیک راست کرده و سپس به Panel Catalyst Control Center بروید.

سپس تب "بازی ها" را در سمت چپ باز کنید و "تنظیمات برای برنامه های سه بعدی" را انتخاب کنید. در سمت راست، لیستی از گزینه های موجود نمایش داده می شود که می توان آن ها را از موقعیت تنظیمات گرافیکی AMD Radeon فعال کرد. وقتی در تب "تنظیمات سیستم" هستیم، برای همه انتخاب می کنیم.

اگر لازم است پارامترها را برای هر بازی جداگانه تنظیم کنید، باید روی دکمه "افزودن" کلیک کنید و فایل EXE را مشخص کنید. به عنوان یک نشانک جدید به لیست اضافه می شود و وقتی به آن سوئیچ می کنید، می توانید پارامترها را فقط برای این بازی تنظیم کنید.

هنگامی که برگه را با پارامترهای برنامه یا سیستم اضافه شده (عمومی) انتخاب کردید، سپس گزینه "Wait for vertical update" را در لیست پیدا کنید. یک کادر انتخاب ظاهر می شود که در آن می توانیم به زور این گزینه را فعال یا غیرفعال کنیم.

V-Sync در گرافیک یکپارچه Intel HD

در صورت استفاده از تراشه گرافیک HD HD یکپارچه، یک کنترل پنل نیز در دسترس است. باید با کلیک راست روی دسکتاپ یا از طریق کلیدهای ترکیبی Ctrl+Alt+F12 در دسترس باشد.

در پنل اینتل، به تب تنظیمات حالت - کنترل پنل - گرافیک سه بعدی و سپس به تنظیمات کاربر بروید.

در اینجا یک فیلد با همگام سازی عمودی همگام سازی عمودی پیدا می کنیم. می توانید با تنظیم مقدار روی "Enabled" یا تنظیم آن روی "Application Settings" آن را به اجبار فعال کنید. متأسفانه، هیچ ویژگی غیرفعال کردن اجباری در گزینه های کارت Intel HD وجود ندارد - فقط می توانید V-Sync را فعال کنید. از آنجایی که امکان غیرفعال کردن همگام سازی عمودی در کارت گرافیک وجود ندارد، این کار فقط در تنظیمات خود بازی قابل انجام است.

تقریبا در همه بازی های مدرندر تنظیمات گرافیکی می توانید ستون "همگام سازی عمودی" را مشاهده کنید. و بازیکنان بیشتر و بیشتری سوالاتی دارند آیا این همگام سازی مفید است؟، تأثیر آن و چرایی وجود آن، نحوه استفاده از آن در پلتفرم های مختلف. بیایید در این مقاله بدانیم.

درباره همگام سازی عمودی

قبل از اینکه مستقیماً به توضیح ماهیت همگام سازی عمودی بپردازیم، لازم است کمی به تاریخچه شکل گیری همگام سازی عمودی بپردازیم. سعی می کنم تا حد امکان واضح باشم. اولین مانیتورهای کامپیوتری یک تصویر ثابت بودند که توسط سیگنال اسکن یک فریم ارائه می شد.

زمانی که نسل جدیدی از نمایشگرها ظاهر شدند، مسئله تغییر وضوح به شدت مطرح شد که به چندین حالت کار نیاز داشت، آن نمایشگرها تصویری را با استفاده از قطبیت سیگنال ها به طور همزمان با عمودی ارائه کردند.

وضوح VGA مورد نیاز است تنظیم دقیق ترجارو و دو سیگنال به صورت افقی و عمودی داده شد. در نمایشگرهای امروزی، کنترلر داخلی وظیفه تنظیم اسکن را بر عهده دارد.

اما اگر کنترلر، طبق گفته درایور، تعداد فریم های مورد نیاز را تنظیم می کند، چرا برای وضوح تنظیم شده به همگام سازی عمودی نیاز دارید؟ آنقدر ها هم ساده نیست. اغلب اوقات شرایطی وجود دارد که نرخ فریم تولید کارت گرافیک بسیار بالا است، اما مانیتورها به دلیل محدودیت های فنی خود، قادر به نمایش این تعداد فریم به درستی نیستزمانی که نرخ رفرش مانیتور به میزان قابل توجهی کمتر از نرخ تازه سازی کارت گرافیک باشد. این منجر به حرکات تصویری واضح، مصنوعات و راه راه می شود.

زمانی که برای نشان دادن فریم های فایل حافظه با فعال بودن "سه بافر" وجود ندارد، آنها به سرعت خود را جایگزین می کنند و فریم های بعدی را روی هم قرار می دهند. و در اینجا فناوری بافر سه گانه تقریباً بی اثر است.

تکنولوژی همگام سازی عمودی برای رفع این کاستی ها طراحی شده است..

او با یک نظرسنجی روشن به سمت مانیتور می رود ویژگی های استانداردبه روز رسانی فرکانس و نرخ فریم، جلوگیری از جابجایی فریم های حافظه ثانویه به اصلی، دقیقا تا لحظه به روز رسانی تصویر.

اتصال همگام سازی عمودی

اکثریت قریب به اتفاق بازی ها این عملکرد را مستقیماً در تنظیمات گرافیکی خود دارند. اما زمانی اتفاق می افتد که چنین ستونی وجود نداشته باشد، یا هنگام کار با گرافیک برنامه هایی که شامل تنظیماتی برای چنین پارامترهایی نیستند، نقص های خاصی مشاهده می شود.

در تنظیمات هر کارت گرافیک، می توانید فناوری همگام سازی عمودی را برای همه برنامه ها یا به صورت انتخابی فعال کنید.

چگونه برای NVidia فعال کنیم؟

مانند اکثر دستکاری ها با کارت های NVidia، از طریق کنسول مدیریت NVidia انجام می شود. در آنجا، در نمودار کنترل پارامتر سه بعدی، یک پارامتر پالس همگام سازی وجود خواهد داشت.

باید به موقعیت روشن منتقل شود. اما بسته به کارت گرافیک، ترتیب متفاوت خواهد بود.

بنابراین در کارت‌های ویدیویی قدیمی‌تر، پارامتر همگام‌سازی عمودی در فصل است گزینه های جهانیدر همان جعبه کنترل تنظیمات سه بعدی.

کارت های ویدئویی از ATI

برای پیکربندی، از مرکز کنترل کارت گرافیک خود استفاده کنید. یعنی مرکز کنترل کاتالیست دات نت فریم ورک 1.1 را اجرا می کند. اگر آن را ندارید، مرکز کنترل شروع نمی شود. اما نگران نباشید. در چنین مواردی، جایگزینی برای مرکز وجود دارد، فقط با کنترل پنل کلاسیک کار کنید.

برای دسترسی به تنظیمات، به آیتم سه بعدی واقع در منوی سمت چپ بروید. یک بخش Wait for Vertical Refresh وجود خواهد داشت. در ابتدا، فناوری همگام سازی عمودی پیش فرض در برنامه استفاده می شود.

با جابجایی دکمه به سمت چپ، این ویژگی کاملاً غیرفعال می شود و با حرکت آن به سمت راست، آن را مجبور می کنیم. گزینه پیش فرض اینجاست معقول ترین، زیرا امکان پیکربندی همگام سازی را مستقیماً از طریق تنظیمات بازی امکان پذیر می کند.

جمع بندی

همگام سازی عمودی عملکردی است که به خلاص شدن از شر حرکات تیز در تصویر کمک می کند، در برخی موارد به شما این امکان را می دهد که از دست ساخته ها و نوارهای موجود در تصویر خلاص شوید. و این با بافر مضاعف نرخ فریم دریافتی هنگامی که نرخ فریم مانیتور و کارت ویدئو مطابقت ندارند به دست می آید.

امروزه v-sync در اکثر بازی ها وجود دارد. تقریباً به همان روش بافر سه گانه کار می کند، اما هزینه دارد منابع بسیار کمتربه همین دلیل است که بافر سه گانه در تنظیمات بازی کمتر دیده می شود.

با انتخاب فعال یا غیرفعال کردن همگام سازی عمودی، کاربر بین کیفیت و عملکرد انتخاب می کند. با روشن کردن آن، تصویر صاف تری دریافت می کند، اما فریم های کمتری در ثانیه دریافت می کند.

خاموشش می کند، می گیرد بیشترقاب می کند، اما از وضوح و بی نظمی تصویر مصون نیست. به ویژه این امر صدق می کند صحنه های شدید و منابع فشرده، که در آن عدم همگام سازی عمودی یا بافر سه گانه به ویژه قابل توجه است.

این نمودار مرموز در پارامترهای بسیاری از بازی ها به آن سادگی که به نظر می رسید نبود. و اکنون انتخاب استفاده یا عدم استفاده از آن تنها با شما و اهداف شما در بازی ها باقی می ماند.

مطمئنم طرفداران زیادی دارند بازی های کامپیوتریبا توصیه غیرفعال کردن به اصطلاح "همگام سازی عمودی" یا VSync در تنظیمات کارت گرافیک در بازی ها مواجه شده است.

در بسیاری از تست‌های عملکرد کنترل‌کننده گرافیکی، تاکید شده است که آزمایش با VSync غیرفعال انجام شده است.
اگر بسیاری از "متخصصان پیشرفته" غیرفعال کردن این ویژگی را توصیه می کنند چیست و چرا لازم است؟
برای درک معنای همگام سازی عمودی، باید یک انحراف کوتاه به تاریخ داشته باشید.

اولین نمایشگرهای کامپیوتری با رزولوشن ثابت و نرخ تازه سازی ثابت کار می کردند.
با ظهور مانیتورهای EGA، انتخاب رزولوشن های مختلف ضروری شد که توسط دو حالت عملکرد ارائه می شد که توسط قطبیت سیگنال های همگام سازی تصویر در امتداد عمودی تنظیم می شد.

مانیتورهایی که از وضوح VGA و بالاتر پشتیبانی می کنند، نیاز به تنظیم دقیق فرکانس های جارو دارند.
برای این کار، قبلاً از دو سیگنال استفاده شده بود که وظیفه همگام سازی تصویر را به صورت افقی و عمودی بر عهده دارند.
در مانیتورهای مدرن، یک تراشه کنترل کننده ویژه وظیفه تنظیم اسکن مطابق با وضوح تنظیم شده را بر عهده دارد.

اگر مانیتور قادر به تنظیم خودکار مطابق با حالت تنظیم شده در درایور باشد، چرا مورد "همگام سازی عمودی" در تنظیمات کارت گرافیک ذخیره می شود؟
واقعیت این است که علیرغم اینکه کارت های ویدیویی قادر به تولید تعداد بسیار زیادی فریم در ثانیه هستند، مانیتورها نمی توانند آن را با کیفیت بالا نمایش دهند، در نتیجه مصنوعات مختلفی ظاهر می شوند: نواربندی و یک تصویر "پاره شده".

برای جلوگیری از این امر، کارت‌های ویدئویی حالت بازجویی اولیه مانیتور را در مورد اسکن عمودی آن فراهم می‌کنند که با آن تعداد فریم‌ها در ثانیه همگام می‌شود - فریم‌های در ثانیه آشنا.
به عبارت دیگر، با فرکانس عمودی 85 هرتز، تعداد فریم در ثانیه در هر بازی از هشتاد و پنج فراتر نخواهد رفت.

نرخ نوسازی عمودی یک مانیتور به تعداد دفعاتی که یک صفحه با یک تصویر در هر ثانیه رفرش می شود اشاره دارد.
در مورد صفحه نمایش لوله اشعه کاتدی، مهم نیست که شتاب دهنده گرافیکی چند فریم در ثانیه اجازه می دهد تا از بازی خارج شود، نرخ تازه سازی نمی تواند از نظر فیزیکی بالاتر از مقدار تنظیم شده باشد.

در مانیتورهای LCD، هیچ تجدید فیزیکی کل صفحه نمایش وجود ندارد: در اینجا، پیکسل های جداگانه ممکن است بدرخشند یا نشوند.
با این حال، خود فناوری انتقال داده ها از طریق رابط ویدیویی این امکان را فراهم می کند که فریم ها با سرعت خاصی از کارت گرافیک به مانیتور منتقل شوند.
بنابراین، با درجه خاصی از قرارداد، مفهوم "sweep" برای نمایشگر LCD قابل اجرا است.

مصنوعات تصویری از کجا می آیند؟
در هر بازی، بسته به پیچیدگی تصویر، تعداد فریم های تولید شده در ثانیه به طور مداوم در حال تغییر است.
از آنجایی که نرخ تازه سازی مانیتور ثابت است، عدم هماهنگی بین فریم در ثانیه ارسال شده توسط کارت گرافیک و نرخ تازه سازی مانیتور منجر به اعوجاج تصویر می شود، که به نظر می رسد به چندین باند دلخواه تقسیم می شود: یک قسمت از آنها زمان برای به روز رسانی دارد، در حالی که قسمت دیگر زمان برای به روز رسانی دارد. نمی کند.

به عنوان مثال، یک مانیتور با نرخ تازه سازی 75 هرتز کار می کند و یک کارت گرافیک در یک بازی صد فریم در ثانیه تولید می کند.
به عبارت دیگر، شتاب دهنده گرافیکی حدود یک سوم سریعتر از سیستم به روز رسانی مانیتور است.
در حین به روز رسانی یک صفحه، کارت 1 فریم و یک سوم فریم بعدی تولید می کند - در نتیجه دو سوم فریم فعلی روی صفحه نمایش کشیده می شود و سومین فریم آن با فریم سوم بعدی جایگزین می شود.

در بروزرسانی بعدی، کارت موفق می شود دو سوم فریم و دو سوم فریم بعدی و غیره را تولید کند.
در مانیتور، در هر دو از سه چرخه اسکن، یک سوم تصویر را از فریم دیگری مشاهده می کنیم - تصویر صافی خود را از دست می دهد و "انقباض" می شود.
این نقص به خصوص در صحنه های پویا یا مثلا وقتی شخصیت شما در بازی به اطراف نگاه می کند، به چشم می خورد.

با این حال، اساساً اشتباه است که فرض کنیم اگر کارت گرافیک ممنوع بود بیش از 75 فریم در ثانیه تولید کند، با نمایش تصویر روی صفحه نمایش با فرکانس عمودی 75 هرتز همه چیز درست می شود.
واقعیت این است که در مورد معمول، به اصطلاح "دبل بافر"، فریم های روی مانیتور از بافر فریم اولیه (بافر جلو) می آیند و خود رندر در بافر ثانویه (بافر پشتی) انجام می شود. .

با پر شدن بافر ثانویه، فریم ها وارد بافر اولیه می شوند، با این حال، از آنجایی که عملیات کپی بین بافرها زمان مشخصی را می طلبد، اگر اسکن مانیتور در این لحظه به روز شود، باز هم از چرخش تصویر جلوگیری نمی شود.

همگام سازی عمودی فقط این مشکلات را حل می کند: مانیتور برای نرخ تازه سازی بازجویی می شود و کپی فریم ها از بافر ثانویه به اصلی تا زمانی که تصویر به روز نشود ممنوع است.
این فناوری زمانی عالی عمل می کند که نرخ فریم در ثانیه از فرکانس عمودی بیشتر شود.
اما اگر نرخ فریم کمتر از نرخ تازه‌سازی شود، چه؟
به عنوان مثال، در برخی از صحنه ها، فریم در ثانیه ما از 100 به 50 کاهش می یابد.

در این صورت موارد زیر اتفاق می افتد.
تصویر روی مانیتور به‌روزرسانی می‌شود، اولین فریم در بافر اولیه کپی می‌شود، و دو سوم فریم دوم در بافر ثانویه «رندر» می‌شود و به‌دنبال آن به‌روزرسانی دیگری از تصویر روی نمایشگر انجام می‌شود.
در این زمان، کارت گرافیک پردازش فریم دوم را تمام می کند، که هنوز نمی تواند آن را به بافر اصلی ارسال کند، و به روز رسانی بعدی تصویر با همان فریمی که هنوز در بافر اولیه ذخیره می شود، انجام می شود.

سپس همه اینها تکرار می شود و در نتیجه وضعیتی داریم که نرخ فریم در ثانیه روی صفحه نمایش دو برابر کمتر از فرکانس اسکن و یک سوم کمتر از سرعت رندر بالقوه است: کارت گرافیک ابتدا "به کار خود ادامه نمی دهد". با مانیتور، و سپس، برعکس، باید منتظر بمانید تا نمایشگر فریم ذخیره شده در بافر اولیه را دوباره بگیرد، و تا زمانی که در بافر ثانویه فضایی برای محاسبه فریم جدید باقی بماند.

به نظر می رسد که در مورد همگام سازی عمودی و بافر دوگانه، تنها در صورتی می توانیم تصویری با کیفیت بالا دریافت کنیم که تعداد فریم ها در ثانیه برابر با یکی از یک توالی مجزا از مقادیر محاسبه شده به عنوان نسبت فرکانس اسکن باشد. به یک عدد صحیح مثبت
به عنوان مثال، با نرخ تجدید 60 هرتز، تعداد فریم در ثانیه باید 60 یا 30 یا 15 یا 12 یا 10 و غیره باشد.

اگر قابلیت های بالقوه کارت به شما اجازه می دهد کمتر از 60 و بیش از 30 فریم در ثانیه تولید کنید، سرعت رندر واقعی به 30 فریم در ثانیه کاهش می یابد.

ترجمه... ترجمه چینی (ساده شده) چینی (سنتی) انگلیسی فرانسوی آلمانی ایتالیایی پرتغالی روسی اسپانیایی ترکی

متأسفانه، در حال حاضر نمی‌توانیم این اطلاعات را ترجمه کنیم - لطفاً بعداً دوباره امتحان کنید.

یاد بگیرید که چگونه از یک الگوریتم ساده برای همگام سازی تصویر با نرخ تازه سازی نمایشگر و بهبود کیفیت پخش ویدیو استفاده کنید.

مقدمه

چشم انداز ما از "خانه دیجیتال" به تدریج در حال تبدیل شدن به واقعیت است. در سال های اخیر، دستگاه های بیشتری برای "خانه دیجیتال" به صورت تجاری در دسترس بوده است. طیف وسایل الکترونیکی ارائه شده بسیار زیاد است - از ستاپ باکس های چندرسانه ای که از پخش موسیقی و ویدئو پشتیبانی می کنند تا سیستم های سرگرمی در مقیاس کامل در یک کیس کامپیوتر معمولی.

مراکز رسانه های خانگی در حال تبدیل شدن به یک آیتم استاندارد در لیست قیمت فروشگاه های کامپیوتری هستند که به شما امکان تماشا و ضبط برنامه های تلویزیونی، ذخیره و پخش عکس ها و موسیقی دیجیتال و غیره را می دهند. علاوه بر این، برخی از فروشندگان کیت های ویژه ای را ارائه می دهند که کاربر می تواند رایانه شخصی خود را به یک مرکز رسانه خانگی تبدیل کند.

متأسفانه، چنین مراکز رسانه ای همیشه از پخش ویدیو با کیفیت بالا پشتیبانی نمی کنند. کیفیت ناکافی ویدیو معمولاً به دلیل عواملی مانند بافر نادرست و ارائه محتوای جریانی، عدم وجود الگوریتم های درهم آمیختگی هنگام پردازش ویدیوی درهم، و همگام سازی نادرست جریان های ویدیویی-صوتی ایجاد می شود. اکثر این مشکلات به خوبی مورد مطالعه قرار گرفته اند و راه حل هایی دارند که به اندازه کافی توسط سازندگان مورد توجه قرار گرفته است. با این حال، مشکل دیگری، کمتر شناخته شده و کمتر آشکار وجود دارد که می تواند منجر به اعوجاج جزئی، اما همچنان قابل توجه هنگام تماشای ویدیوها شود. مقاله ما شرح مفصلی از این مشکل ارائه می دهد و یکی از راه های حل آن را در نظر می گیرد.

با رشد روزافزون فروش مراکز رسانه های خانگی، مشتریان بیشتری به تماشای تلویزیون روی رایانه شخصی می پردازند. با گسترش این بخش، که در حال حاضر مورد تقاضای علاقه مندان آماتور است، تقاضا برای ویدیوهای با کیفیت بالا نیز افزایش می یابد.

روش های مختلفی برای بهبود کیفیت پخش ویدیو در رایانه وجود دارد و بسیاری از تولیدکنندگان نرم افزارهای ویدیویی با موفقیت از آنها استفاده کرده اند. در همان زمان، گاهی اوقات این واقعیت است که نرم افزار پخش ویدئو باید هماهنگی ویدئو با نرخ تازه سازی نمایشگر را در نظر گرفته و اطمینان حاصل کند. واقعیت این است که تلویزیون ها در ابتدا برای همگام سازی با سیگنال ویدیویی که از استودیوی پخش می آید ارائه می شوند. برخلاف تلویزیون‌ها، مانیتورهای کامپیوتر صفحه را با نرخ ثابتی تازه می‌کنند که توسط آداپتور گرافیک تنظیم می‌شود و ربطی به سیگنال ویدیویی ندارد. اگر بخواهید از همگام سازی صحیح ویدیو با نمایشگر رایانه اطمینان حاصل کنید، این تفاوت قابل توجه می تواند مشکلات زیادی ایجاد کند. در زیر سعی خواهیم کرد توصیف همراه با جزئیاتاین مشکل و پیشنهاد راه حل. با این حال، قبل از آن، مایلیم خواننده را با مفاهیم اساسی آشنا کنیم که در مقاله به آنها پرداخته خواهد شد.

نمایش چرخه تازه سازی

نرخ تازه سازی صفحه رایانه شخصی (نرخ تازه سازی صفحه) با فرکانس آداپتور گرافیک (کارت ویدیو) هماهنگ می شود. رایج ترین مثال را در نظر بگیرید - زمانی که کارت گرافیک و مانیتور از فرکانس 60 هرتز پشتیبانی می کنند. این ترکیب به دلیل همگام سازی مانیتور با سیگنال 60 هرتزی که از کارت گرافیک می آید امکان پذیر است. در واقع، مانیتور حتی در موارد انحراف جزئی در فرکانس خروجی آداپتور گرافیکی همگام سازی را حفظ می کند (مثلاً 60.06 هرتز به جای 60 هرتز استاندارد).

در طول چرخه تازه سازی، تصویر صفحه از بافر نمایشگر (حافظه آدرس پذیر آداپتور گرافیکی) دوباره ترسیم می شود. هر خط افقی روی نمایشگر به طور متوالی مطابق با داده های جدید موجود در بافر حافظه ویدیویی به روز می شود. به روز شده در این لحظهخط زمان را خط اسکن می نامند. در مورد یک آداپتور گرافیکی 60 هرتزی، فرآیند به‌روزرسانی صفحه 60 بار در ثانیه اتفاق می‌افتد، بنابراین تصویر روی مانیتور رایانه شخصی نیز 60 بار در ثانیه به‌روزرسانی می‌شود.

شکل 1 - نمایش به روز رسانی

مصنوعات پاره کننده تصویر

از مشکل احتمالی به‌روزرسانی بافر گرافیکی غیریکنواخت آگاه باشید. اگر محتویات بافر حافظه ویدئویی در زمانی که تصویر روی مانیتور هنوز به طور کامل ترسیم نشده است (چرخه تازه سازی کامل نشده است) تغییر کرده باشد، در این صورت تنها بخشی از تصویر جدید پس از خط اسکن نشان داده می شود. روی صفحه نمایش (شکل را ببینید برنج. 2). این آرتیفکت تصویری که تصویر قدیمی را در بالای صفحه و تصویر جدید را در پایین نمایش می دهد، پاره شدن نامیده می شود. در واقع، این اصطلاح بسیار توصیفی است، زیرا تصویر حاصل به نظر می رسد که از وسط "پاره" شده است.

شکل 2 - مصنوعات "شکاف" تصویر

تلنگر تیم

یکی از راه های جلوگیری از "اشک" این است که مطمئن شوید که محتوای حافظه ویدئویی به روز می شود بعد از آنچگونه چرخه به روز رسانی صفحه نمایش کامل می شود و قبل از آنزمانی که چرخه بعدی شروع می شود به عبارت دیگر، به روز رسانی باید در حین جابجایی معکوس انجام شود. اما این روش نیاز به تغییرات متناظر در نرم افزار دارد که باید ترتیب تغییر تصویر را با دقت کافی محاسبه کرد.

به همین دلیل، یک الگوریتم همگام سازی سوئیچینگ بافر (Flip) پیشنهاد شده است. دستور Flip ماهیت بسیار ساده ای دارد - به برنامه اجازه می دهد تا تصویر را در هر زمان در طول چرخه به روز رسانی صفحه به روز کند، اما نتیجه آن در واقع تا زمانی که چرخه فعلی کامل نشود، به حافظه ویدیو منتقل نمی شود. بنابراین، به روز رسانی تصویر در مانیتور در فاصله زمانی پس از اجرای دستور Flip رخ می دهد. با روش همگام سازی بافر، "پارگی" تصویر حذف می شود زیرا دستور Flip تضمین می کند که یک تصویر جدید کامل برای هر چرخه تازه سازی آماده است (پایین را ببینید). برنج. 3). با این حال، در بخش بعدی نشان خواهیم داد که استفاده از دستور Flip به تنهایی تضمین نمی کند که همه مشکلات حل شوند.

شکل 3 - دنباله دستور Flip

مسائل بالقوه

استفاده از الگوریتم همگام سازی مزایای زیادی دارد و به حذف مصنوعات پارگی کمک می کند، اما یک مشکل مهم باقی می ماند.

هنگام استفاده از دستور Flip، شرایط رندر نرم افزار برای ویدیو تغییر می کند. برای اجرای Flip، نرم افزار باید فاصله به روز رسانی بافر فریم (نرخ فریم) را با توجه به نرخ فریم خاصی تنظیم کند. تنها نرخ ساعتی که می‌توان فریم‌ها را با آن همگام‌سازی کرد، نرخ تازه‌سازی نمایشگر (یا چندگانه) است. به عبارت دیگر، یک فریم جدید فقط در ابتدای چرخه تازه سازی نمایش داده می شود - در واقع، فواصل فریم به نرخ تازه سازی صفحه نمایش گره خورده است.

شکل 4 - نرخ فریم و عدم تطابق فرکانس نمایش

این واقعیت نشان می دهد که اگر نرخ تازه سازی نمایشگر با نرخ فریم محتوای در حال پخش یکسان نباشد یا مضرب آن نباشد، محتوای روی نمایشگر نمی تواند به طور کامل بازتولید شود. در برنج. چهاریک مورد خاص از این مشکل نشان داده شده است. در این سناریو، نرخ فریم محتوا کندتر از نرخ تجدید نمایشگر است. با توجه به تغییر فاز بین این دو فرکانس، فواصل دستور Flip برای دو فریم در نهایت برای یک چرخه تازه سازی کامل (به زمان بندی فریم های 3 و 4 توجه کنید). در نتیجه، فریم 3 تقریباً دو برابر زمانی که لازم است نمایش داده می شود. بنابراین، شما باید تلاش کنید تا نرخ فریم و نرخ تازه سازی نمایشگر را مطابقت دهید، اگرچه این همیشه امکان پذیر نیست.

وضعیت مورد بررسی تنها در صورتی تشدید می شود که تفاوت بین نرخ فریم و نرخ تازه سازی نمایشگر کم باشد. وقتی زمان‌های فریم به فواصل چرخه به‌روزرسانی نزدیک است، حتی نادرستی‌های کوچک در محاسبه تایمر نرم‌افزاری می‌تواند باعث شود که چندین دستور Flip متوالی نسبت به شروع به‌روزرسانی از بین برود. این بدان معنی است که برخی از دستورات Flip خیلی زود و برخی دیگر خیلی دیر اجرا می شوند و در نتیجه فریم های "تکراری" و "افتاده" ایجاد می شود. این مورد در نشان داده شده است برنج. 5– تایمر درست کار نمی کند (در فواصل نامنظم) در نتیجه فریم های 2 و 4 نشان داده نمی شوند و فریم های 3 و 5 دو بار نشان داده می شوند.

شکل 5 - نتیجه استفاده از Flip on خرابی تایمر

این پدیده ممکن است حتی زمانی رخ دهد که نرخ فریم محتوا و نرخ تازه سازی نمایشگر یکسان باشد. بدیهی است که تنها استفاده از تایمر و دستور Flip برای اطمینان از پخش ویدیو با کیفیت بالا کافی نیست. همانطور که در بخش بعدی توضیح داده شد، برای اینکه دستورات Flip به درستی اجرا شوند، نرم افزار باید همزمان سازی هوشمند را با چرخه های تازه سازی نمایشگر حفظ کند.

دستورات چرخش زمان

همانطور که در بالا ذکر شد، استفاده از دستور Flip به شما این امکان را می دهد که چرخه های به روز رسانی صفحه را هنگام رندر کردن فریم های ویدئویی در نظر بگیرید. هر فریم تازه ارسال شده تنها برای یک چرخه کامل به روز رسانی نمایشگر نمایش داده می شود. بنابراین، هنگام استفاده از دستور Flip، نرم افزار باید نه تنها زمان نمایش هر فریم را به دقت محاسبه کند، بلکه باید چرخه رفرش خاص را نیز برای همگام سازی بهینه خروجی فریم ها تعیین کند.

بهتر است دستور Flip را در همان ابتدای چرخه به‌روزرسانی، درست قبل از شروع بازه رفرش فریم مربوطه فراخوانی کنید (به مثال زیر مراجعه کنید. برنج. 3). این بالاترین احتمال را برای اجرای واقعی فرمان قبل از شروع چرخه به روز رسانی مربوطه می دهد و اطمینان حاصل می کند که فریم در زمان مناسب خروجی می شود. توجه داشته باشید که در مواردی که نرخ فریم ویدیو و نرخ تازه سازی نمایشگر با هم مطابقت ندارند، بهینه سازی چرخه تازه سازی فریم Flip برای ارائه کیفیت قابل قبول ویدیو کافی نیست. راه‌هایی برای قاب‌بندی یا اصلاح فریم‌های محتوا وجود دارد که این مشکلات را حل می‌کند، اما آنها خارج از محدوده این انتشار هستند.

مقداری سیستم های عاملرابط های برنامه نویسی را فراهم می کند که از طریق آن برنامه ها می توانند با چرخه به روز رسانی نمایشگر هماهنگ باشند. به طور خاص، محیط Microsoft DirectX 9.0 شامل چندین روش است که می تواند در مورد ما بسیار مفید باشد. در مرحله بعد، رویه‌های استاندارد DirectX را به عنوان روش‌های نمونه برای حل مشکل مورد بررسی بررسی خواهیم کرد. خوانندگان می توانند از این مثال ها برای کشف روش های پیشنهادی و یافتن راه حل های مشابه در سایر سیستم عامل ها استفاده کنند.

WaitForVerticalBlank()یک رویه استاندارد در کتابخانه DirectDraw (در رابط IDirectDraw) است که دسترسی رشته به رابط را تا شروع چرخه به روز رسانی بعدی مسدود می کند. این روش می تواند برای همگام سازی استفاده شود، اما باید یک بار یا در فاصله زمانی قابل توجهی انجام شود زیرا دسترسی به آن زمان بر است. با این حال، این روش هنگام انجام همگام سازی اولیه با یک چرخه به روز رسانی مفید است.

GetScanLine()یک روش استاندارد است که می تواند برای به دست آوردن اطلاعاتی در مورد اینکه کدام خط اسکن در حال حاضر روی صفحه نمایش به روز می شود استفاده می شود. اگر تعداد کل خطوط و خط اسکن فعلی مشخص باشد، تعیین وضعیت چرخه تجدید صفحه نمایش دشوار نیست. به عنوان مثال، اگر تعداد کل خطوط نمایش 1024 باشد و رویه GetScanLine() 100 را برمی گرداند، چرخه تازه سازی فعلی در حال حاضر 100 تا 1024 است که حدود 10 درصد کامل شده است. کاربرد GetScanLine()به برنامه اجازه می دهد تا وضعیت حلقه به روز رسانی را نظارت کند و بر اساس آن، تعیین کند که فریم رندر شده بعدی به کدام چرخه متصل شود و یک تایمر برای زمان سوئیچینگ بافر مورد نظر تنظیم کند. نمونه ای از الگوریتم زیر است:

شکل 6

زمان تغییر فریم نه تنها بر اساس محاسبه فریم های جدید تصویر، بلکه با در نظر گرفتن نرخ تازه سازی صفحه نیز انتخاب می شود. از آنجایی که فریم‌ها تنها زمانی روی صفحه نمایش داده می‌شوند که نمایشگر به‌روزرسانی می‌شود، لازم است مطمئن شوید که هر فریم به چرخه درست تازه‌سازی «ضربه» می‌زند. بنابراین، در حالت ایده‌آل، کادربندی تصویر باید دقیقاً با نرخ تازه‌سازی صفحه مطابقت داشته باشد. در این صورت هر فریم در زمان مناسب روی نمایشگر ترسیم می شود.

راه حل جایگزین برای محتوای ضبط شده

مسائل مورد بحث ما در مورد همه سناریوهای پخش ویدیو، هم در مورد پخش زنده و هم در هنگام پخش ویدیوی ضبط شده اعمال می شود. با این حال، در مورد دوم، می توانید به یک راه حل جایگزین متوسل شوید. اگر تفاوت بین نرخ فریم محتوا و نرخ به‌روزرسانی نمایشگر کم است، می‌توانید نرخ فریم ویدیو را تنظیم کنید (و جریان صدا را به همان روش تنظیم کنید) تا با نرخ تازه‌سازی صفحه مطابقت داشته باشد بدون اینکه کیفیت محتوا به خطر بیفتد. به عنوان مثال، بیایید یک سیگنال تلویزیونی با کیفیت استاندارد 59.94 فریم در ثانیه (باب از هم گسیخته) روی یک مانیتور با فرکانس 60 هرتز در نظر بگیریم. با افزایش سرعت پخش ویدئو و صدا تا 60 فریم در ثانیه، می توانید اطمینان حاصل کنید که نرخ فریم با فواصل تازه سازی صفحه مطابقت دارد و در عین حال هیچ گونه مصنوعات تصویری وجود نخواهد داشت.

خلاصه

این نشریه به روش های همگام سازی تصویر، به ویژه، جلوگیری از پاره شدن مصنوعات تصویر با استفاده از دستور Flip اختصاص دارد. این مقاله همچنین به مواردی می‌پردازد که فرمان Flip باعث ایجاد مشکلاتی ناشی از همگام‌سازی دقیق با چرخه‌های به‌روزرسانی نمایشگر می‌شود. زمان بندی مناسب فریم و استفاده از دستورات Flip می تواند باعث شود زمان ها و فواصل فریم ها با آنچه برنامه نرم افزاری انتظار دارد متفاوت باشد. این مقاله نتیجه می گیرد که روش صحیح استفاده از دستورات Flip، ترکیب همگام سازی Flip با نرخ تازه سازی صفحه و بهینه سازی چرخه محاسبه تصویر با توجه به خروجی بعدی آن است. بنابراین، فواصل Flip را می توان در نرم افزار تنظیم کرد. بهترین کیفیتویدیو زمانی به دست می آید که نرخ فریم محتوا با نرخ تازه سازی نمایشگر مطابقت داشته باشد. با این حال، در عمل این همیشه قابل دستیابی نیست. الگوریتم های توضیح داده شده در این مقاله به کاهش مصنوعات تصویر به حداقل ممکن کمک می کند.

بازی های مدرن بیشتر و بیشتر از جلوه های گرافیکی و فناوری هایی استفاده می کنند که تصویر را بهبود می بخشد. در عین حال، توسعه دهندگان معمولاً به خود زحمت نمی دهند توضیح دهند که دقیقاً چه کاری انجام می دهند. هنگامی که پربازده ترین رایانه در دسترس نیست، برخی از قابلیت ها باید قربانی شوند. بیایید سعی کنیم معنی رایج ترین گزینه های گرافیکی را در نظر بگیریم تا بهتر درک کنیم که چگونه می توان منابع رایانه شخصی را با حداقل عواقب برای گرافیک آزاد کرد.

فیلتر ناهمسانگرد

هنگامی که هر بافتی در مانیتور نمایش داده می شود که در اندازه اصلی خود نیست، لازم است پیکسل های اضافی را در آن قرار دهید یا برعکس، پیکسل های اضافی را حذف کنید. این کار با استفاده از تکنیکی به نام فیلترینگ انجام می شود.

فیلتر دو خطی ساده ترین الگوریتم است و به قدرت محاسباتی کمتری نیاز دارد، اما بدترین نتیجه را نیز به همراه دارد. Trilinear وضوح را اضافه می کند اما همچنان مصنوعات را تولید می کند. فیلتر ناهمسانگرد پیشرفته ترین روشی در نظر گرفته می شود که اعوجاج قابل توجه را بر روی اجسامی که به شدت تمایل دارند نسبت به دوربین حذف می کند. برخلاف دو روش قبلی، با اثر aliasing با موفقیت مبارزه می‌کند (زمانی که برخی از قسمت‌های بافت بیش از بقیه تار می‌شوند و مرز بین آنها به وضوح قابل مشاهده است). هنگام استفاده از فیلتر دو خطی یا سه خطی، با افزایش فاصله، بافت بیشتر و بیشتر تار می شود، در حالی که فیلتر ناهمسانگرد این ایراد را ندارد.

با توجه به حجم داده‌های پردازش شده (و می‌تواند بسیاری از بافت‌های 32 بیتی با وضوح بالا در یک صحنه وجود داشته باشد)، فیلتر ناهمسانگرد مخصوصاً در پهنای باند حافظه سخت‌تر است. شما می توانید ترافیک را در درجه اول به دلیل فشرده سازی بافت کاهش دهید، که اکنون در همه جا استفاده می شود. پیش از این، زمانی که کمتر تمرین می شد و پهنای باند حافظه ویدیویی بسیار کمتر بود، فیلتر ناهمسانگرد به میزان قابل توجهی تعداد فریم ها را کاهش می داد. در کارت های ویدئویی مدرن، تقریبا هیچ تاثیری بر فریم در ثانیه ندارد.

فیلتر ناهمسانگرد تنها یک تنظیم دارد - فاکتور فیلتر (2x، 4x، 8x، 16x). هرچه بالاتر باشد، بافت ها شفاف تر و طبیعی تر به نظر می رسند. به طور معمول، با ارزش بالا، مصنوعات کوچک فقط در بیرونی ترین پیکسل های بافت های کج دیده می شوند. مقادیر 4x و 8x معمولاً برای خلاص شدن از شر اعوجاج بصری کافی هستند. جالب است که وقتی از 8 برابر به 16 برابر می‌شوید، عملکرد عملکرد حتی در تئوری بسیار کم خواهد بود، زیرا تنها تعداد کمی از پیکسل‌های قبلاً فیلتر نشده نیاز به پردازش اضافی دارند.

سایه بان ها

سایه بان ها برنامه های کوچکی هستند که می توانند دستکاری های خاصی را روی یک صحنه سه بعدی انجام دهند، مانند تغییر نور، اعمال بافت ها، افزودن پس پردازش و جلوه های دیگر.

سایه بان ها به سه نوع تقسیم می شوند: راس (راس سایه بان) با مختصات کار می کند، هندسی (هندسه سایه بان) می تواند نه تنها رئوس فردی، بلکه کل را پردازش کند. اشکال هندسی، که حداکثر از 6 راس تشکیل شده است، پیکسل (Pixel Shader) با تک تک پیکسل ها و پارامترهای آنها کار می کند.

سایه بان ها عمدتا برای ایجاد افکت های جدید استفاده می شوند. بدون آنها، مجموعه عملیاتی که توسعه دهندگان می توانند در بازی ها استفاده کنند بسیار محدود است. به عبارت دیگر، افزودن سایه‌زن‌ها امکان دستیابی به افکت‌های جدیدی را فراهم کرد که به‌طور پیش‌فرض در کارت ویدیو گنجانده نشده بودند.

شیدرها به طور موازی کار می کنند، به همین دلیل است که آداپتورهای گرافیکی مدرن دارای تعداد زیادی پردازنده جریان هستند که به آنها سایه زن نیز می گویند. به عنوان مثال، در GeForce GTX 580 تعداد آنها به 512 می رسد.

نقشه برداری اختلاف منظر

نقشه برداری اختلاف منظر یک نسخه اصلاح شده از تکنیک شناخته شده bumpmapping است که برای برجسته کردن بافت ها استفاده می شود. نقشه برداری اختلاف منظر، اشیاء سه بعدی را به معنای معمول کلمه ایجاد نمی کند. به عنوان مثال، یک کف یا دیوار در صحنه بازی ناهموار به نظر می رسد در حالی که در واقع کاملاً صاف باقی می ماند. اثر تسکین در اینجا فقط از طریق دستکاری با بافت به دست می آید.

شی اصلی نباید مسطح باشد. روش برای موارد مختلف کار می کند آیتم های بازیاما استفاده از آن فقط در مواردی مطلوب است که ارتفاع سطح به آرامی تغییر کند. قطره های تیز به اشتباه پردازش می شوند و مصنوعات روی جسم ظاهر می شوند.

نقشه برداری اختلاف منظر به طور قابل توجهی در منابع محاسباتی یک رایانه صرفه جویی می کند، زیرا هنگام استفاده از اشیاء مشابه با چنین ساختار سه بعدی دقیق، عملکرد آداپتورهای ویدئویی برای نمایش صحنه ها در زمان واقعی کافی نیست.

این اثر اغلب بر روی سنگفرش ها، دیوارها، آجرها و کاشی ها اعمال می شود.

Anti Aliasing

قبل از ظهور DirectX 8، anti-aliasing در بازی ها با استفاده از SuperSampling Anti-Aliasing (SSAA) که به عنوان Full-Scene Anti-Aliasing (FSAA) نیز شناخته می شود، انجام می شد. استفاده از آن منجر به کاهش قابل توجه عملکرد شد، بنابراین با انتشار DX8 بلافاصله کنار گذاشته شد و با Multisample Anti-Aliasing (MSAA) جایگزین شد. علیرغم این واقعیت که این روش نتایج بدتری به همراه داشت، اما بسیار پربارتر از روش قبلی خود بود. از آن زمان، الگوریتم های پیشرفته تری مانند CSAA ظاهر شدند.

با توجه به اینکه در چند سال گذشته، عملکرد کارت‌های ویدیویی به طور قابل توجهی افزایش یافته است، هر دو AMD و NVIDIA پشتیبانی از فناوری SSAA را به شتاب‌دهنده‌های خود بازگردانده‌اند. با این حال، استفاده از آن حتی در حال حاضر در بازی های مدرن امکان پذیر نخواهد بود، زیرا تعداد فریم / ثانیه بسیار کم خواهد بود. SSAA فقط در پروژه های سال های گذشته یا در پروژه های فعلی، اما با تنظیمات متوسط ​​برای سایر پارامترهای گرافیکی موثر خواهد بود. AMD پشتیبانی SSAA را فقط برای بازی‌های DX9 اجرا کرده است، اما در NVIDIA SSAA در حالت‌های DX10 و DX11 نیز کار می‌کند.

اصل صاف کردن بسیار ساده است. قبل از اینکه فریم روی صفحه نمایش داده شود، اطلاعات خاصی نه در وضوح اصلی، بلکه افزایش یافته و مضربی از دو محاسبه می شود. سپس نتیجه به اندازه مورد نیاز کاهش می یابد و سپس "نردبان" در امتداد لبه های جسم کمتر قابل توجه می شود. هرچه تصویر اصلی و ضریب هموارسازی (2x، 4x، 8x، 16x، 32x) بالاتر باشد، تعداد مراحل کمتری روی مدل‌ها خواهد بود. MSAA، بر خلاف FSAA، فقط لبه های اشیا را صاف می کند، که به طور قابل توجهی در منابع کارت گرافیک صرفه جویی می کند، اما این تکنیک می تواند مصنوعات را در چند ضلعی ها باقی بگذارد.

قبلاً Anti-Aliasing همیشه فریم در ثانیه را به میزان قابل توجهی در بازی ها کاهش می داد، اما اکنون کمی بر تعداد فریم ها تأثیر می گذارد و گاهی اوقات اصلاً تأثیری ندارد.

تسلیت

با استفاده از Tessellation در یک مدل کامپیوتری، تعداد چند ضلعی ها به تعداد دلخواه افزایش می یابد. برای انجام این کار، هر چند ضلعی به چند ضلعی جدید تقسیم می شود که تقریباً مشابه سطح اصلی قرار دارند. این روش افزایش جزئیات اشیاء سه بعدی ساده را آسان می کند. با این حال، در این حالت، بار روی رایانه نیز افزایش می‌یابد و در برخی موارد حتی مصنوعات کوچک را نمی‌توان رد کرد.

در نگاه اول، tessellation را می توان با نقشه برداری Parallax اشتباه گرفت. اگرچه اینها جلوه‌های کاملاً متفاوتی هستند، زیرا تسلاسیون در واقع شکل هندسی جسم را تغییر می‌دهد و نه فقط نقش برجسته را شبیه‌سازی می‌کند. علاوه بر این، تقریباً برای هر شیئی قابل استفاده است، در حالی که استفاده از نقشه برداری Parallax بسیار محدود است.

فناوری Tessellation از دهه 80 در سینما شناخته شده است، اما اخیراً در بازی ها پشتیبانی شده است، دقیقاً بعد از اینکه شتاب دهنده های گرافیکی سرانجام به سطح عملکرد مورد نیاز رسیدند که می توان آن را در زمان واقعی اجرا کرد.

برای اینکه بازی بتواند از tessellation استفاده کند، به کارت گرافیکی نیاز دارد که از DirectX 11 پشتیبانی کند.

تطابق عمودی

V-Sync همگام سازی فریم های بازی با نرخ تازه سازی عمودی مانیتور است. ماهیت آن در این واقعیت نهفته است که یک فریم بازی کاملاً محاسبه شده در لحظه به روز رسانی تصویر روی آن روی صفحه نمایش داده می شود. مهم است که فریم بعدی (اگر از قبل آماده است) نیز نه دیرتر و نه زودتر از پایان خروجی قبلی و شروع بعدی ظاهر شود.

اگر نرخ نوسازی مانیتور 60 هرتز باشد و کارت گرافیک بتواند یک صحنه سه بعدی را با حداقل تعداد فریم مشابه ارائه کند، در این صورت هر رفرش مانیتور یک فریم جدید نمایش می دهد. به عبارتی کاربر با فاصله زمانی 16.66 میلی ثانیه، آپدیت کامل صحنه بازی را بر روی صفحه نمایش خواهد دید.

باید درک کرد که وقتی همگام سازی عمودی فعال است، فریم در ثانیه در بازی نمی تواند از نرخ تازه سازی عمودی مانیتور تجاوز کند. اگر تعداد فریم ها کمتر از این مقدار باشد (در مورد ما کمتر از 60 هرتز)، برای جلوگیری از افت عملکرد، باید بافر سه گانه را فعال کرد که در آن فریم ها از قبل محاسبه شده و در سه بافر جداگانه ذخیره می شوند. ، که به آنها اجازه می دهد بیشتر به صفحه نمایش ارسال شوند.

وظیفه اصلی همگام سازی عمودی این است که اثر یک فریم جابجا شده را از بین ببرد که زمانی رخ می دهد که قسمت پایین نمایشگر با یک فریم پر می شود و قسمت بالایی قبلاً با دیگری پر شده است که نسبت به قاب قبلی جابجا شده است.

پس پردازش

این نام کلی تمام افکت‌هایی است که برای بهبود کیفیت تصویر نهایی روی یک فریم از قبل تمام شده از یک صحنه کاملاً رندر شده سه بعدی (به عبارت دیگر، روی یک تصویر دو بعدی) اعمال می‌شود. پس پردازش از سایه زن های پیکسل استفاده می کند و در مواردی استفاده می شود که افکت های اضافی نیاز به اطلاعات کامل در مورد کل صحنه دارند. جدا از اشیاء سه بعدی، چنین تکنیک هایی را نمی توان بدون ظاهر شدن مصنوعات در قاب به کار برد.

محدوده دینامیکی بالا (HDR)

افکتی که اغلب در صحنه های بازی با نورپردازی متضاد استفاده می شود. اگر یک قسمت از صفحه نمایش بسیار روشن و قسمت دیگر بسیار تاریک باشد، بسیاری از جزئیات در هر قسمت از بین می رود و یکنواخت به نظر می رسد. HDR درجه بندی های بیشتری را به کادر اضافه می کند و به شما امکان می دهد صحنه را با جزئیات بیشتری مشاهده کنید. برای استفاده از آن، معمولاً باید با طیف وسیع تری از سایه ها نسبت به دقت استاندارد 24 بیتی کار کنید. پیش محاسبات با افزایش دقت (64 یا 96 بیت) انجام می شود و تنها در مرحله نهایی تصویر به 24 بیت تنظیم می شود.

HDR اغلب برای اجرای اثر تطبیق بینایی استفاده می‌شود، زمانی که قهرمان بازی‌ها یک تونل تاریک را روی سطحی با نور خوب رها می‌کند.

شکوفه

Bloom اغلب در ارتباط با HDR استفاده می شود، و همچنین دارای یک خویشاوند نسبتا نزدیک است - Glow، به همین دلیل است که این سه تکنیک اغلب اشتباه گرفته می شوند.

Bloom افکتی را شبیه سازی می کند که هنگام عکاسی از صحنه های بسیار روشن با دوربین های معمولی دیده می شود. در تصویر به دست آمده، به نظر می رسد نور شدید حجم بیشتری از آنچه باید می گیرد و بر روی اجسام «بالا می رود» حتی اگر پشت آن ها باشد. هنگام استفاده از Bloom، مصنوعات اضافی به شکل خطوط رنگی ممکن است در حاشیه اشیا ظاهر شوند.

دانه فیلم

Grain مصنوع است که در تلویزیون آنالوگ با سیگنال ضعیف، روی کاست‌های ویدئویی مغناطیسی قدیمی یا عکس‌ها (به ویژه تصاویر دیجیتالی که در نور کم گرفته شده‌اند) رخ می‌دهد. بازیکنان اغلب ارتباط خود را قطع می کنند این اثر، زیرا تصویر را تا حدی خراب می کند و آن را بهبود نمی بخشد. برای درک این موضوع می توان اجرا کرد تاثیر عمدهدر هر یک از حالت ها مثلاً در برخی از «فیلم های ترسناک». تپه خاموش، نویز روی صفحه نمایش، برعکس، جو را اضافه می کند.

تاری حرکت

Motion Blur - اثر تار شدن تصویر هنگام حرکت سریع دوربین. هنگامی که صحنه باید پویایی و سرعت بیشتری داشته باشد، می تواند با موفقیت استفاده شود، بنابراین به ویژه در تقاضا است بازی های مسابقه ای. در تیراندازها، استفاده از تاری همیشه بدون ابهام درک نمی شود. استفاده صحیح از Motion Blur می تواند کیفیت سینمایی را به اتفاقاتی که روی صفحه می افتد اضافه کند.

این اثر همچنین در صورت لزوم به حجاب کمک می کند. فرکانس پایینفریم ها را تغییر دهید و نرمی را به گیم پلی اضافه کنید.

SSAO

انسداد محیطی تکنیکی است که برای افزودن فوتورئالیسم به یک صحنه با ایجاد روشنایی باورپذیرتر از اشیاء موجود در آن استفاده می‌شود، که حضور اجسام دیگر در نزدیکی را با ویژگی‌های جذب و بازتاب نور خود در نظر می‌گیرد.

Screen Space Ambient Occlusion نسخه اصلاح شده Ambient Occlusion است و نور و سایه غیر مستقیم را نیز شبیه سازی می کند. ظاهر SSAO به این دلیل بود که در سطح فعلی عملکرد GPU، Ambient Occlusion نمی‌توانست برای رندر صحنه‌ها در زمان واقعی استفاده شود. برای افزایش عملکرد در SSAO، باید با کیفیت پایین تری پرداخت کنید، اما حتی برای بهبود واقع گرایی تصویر کافی است.

SSAO طبق یک طرح ساده کار می کند، اما مزایای زیادی دارد: روش به پیچیدگی صحنه بستگی ندارد، از آن استفاده نمی کند. رم، می تواند در صحنه های پویا عمل کند، نیازی به پیش پردازش فریم ندارد و فقط آداپتور گرافیکی را بدون مصرف منابع CPU بارگذاری می کند.

سایه زنی سل

بازی هایی با افکت Cel shading از سال 2000 ساخته شد و اول از همه روی کنسول ها ظاهر شد. در رایانه شخصی، این تکنیک تنها چند سال پس از انتشار شوتر XIII واقعاً محبوب شد. با سایه زنی Cel، هر فریم تقریباً شبیه یک نقاشی با دست یا قطعه ای از یک کارتون کودکانه است.

کمیک ها به سبکی مشابه ساخته می شوند، بنابراین این تکنیک اغلب در بازی های مربوط به آنها استفاده می شود. از آخرین نسخه های شناخته شده، می توان تیراندازی Borderlands را نام برد که در آن سایه زنی Cel با چشم غیر مسلح قابل مشاهده است.

از ویژگی های این فناوری استفاده از مجموعه ای محدود از رنگ ها و همچنین عدم وجود گرادیان های صاف است. نام اثر از کلمه Cel (Celluloid) می آید، یعنی یک ماده (فیلم) شفاف که روی آن فیلم های انیمیشن کشیده می شود.

عمق میدان

عمق میدان فاصله بین لبه نزدیک و دور فضا است که در آن همه اشیاء در فوکوس قرار می گیرند، در حالی که بقیه صحنه تار می شود.

تا حدی می توان عمق میدان را به سادگی با تمرکز بر روی جسمی که در مقابل چشمان نزدیک است مشاهده کرد. همه چیز پشت آن تار خواهد شد. برعکس آن نیز صادق است: اگر روی اجسام دور تمرکز کنید، همه چیز در مقابل آنها مبهم خواهد شد.

در برخی عکس‌ها می‌توانید اثر عمق میدان را به شکل هیپرتروفی مشاهده کنید. این درجه از تاری است که اغلب سعی می شود در صحنه های سه بعدی شبیه سازی شود.

در بازی هایی که از عمق میدان استفاده می کنند، معمولاً گیمر حس حضور قوی تری دارد. به عنوان مثال، با نگاه کردن به جایی از میان چمن ها یا بوته ها، فقط تکه های کوچک صحنه را در فوکوس می بیند که توهم حضور را ایجاد می کند.

تاثیر عملکرد

برای اینکه بفهمیم گنجاندن گزینه‌های خاص چگونه بر عملکرد تأثیر می‌گذارد، از معیار بازی Heaven DX11 Benchmark 2.5 استفاده کردیم. همه آزمایش‌ها بر روی یک سیستم Intel Core2 Duo e6300، GeForce GTX460 در 1280x800 پیکسل (به جز همگام‌سازی عمودی، که در آن وضوح 1680x1050 بود) انجام شد.

همانطور که قبلا ذکر شد، فیلتر ناهمسانگرد تقریباً هیچ تأثیری بر تعداد فریم ها ندارد. تفاوت بین ناهمسانگردی غیرفعال و 16x فقط 2 فریم است، بنابراین توصیه می کنیم همیشه آن را روی حداکثر تنظیم کنید.

Anti-aliasing در Heaven Benchmark فریم در ثانیه را بیشتر از آنچه انتظار داشتیم کاهش داد، به خصوص در سخت ترین حالت 8x. با این وجود، از آنجایی که 2x برای بهبود قابل توجهی در تصویر کافی است، به شما توصیه می کنیم اگر بازی در موارد بالاتر ناراحت کننده است، این گزینه را انتخاب کنید.

Tessellation، بر خلاف پارامترهای قبلی، می تواند در هر بازی یک مقدار دلخواه به خود بگیرد. در Heaven Benchmark، تصویر بدون آن به طور قابل توجهی بدتر می شود و در حداکثر سطح، برعکس، کمی غیر واقعی می شود. بنابراین، مقادیر میانی باید تنظیم شوند - متوسط ​​یا عادی.

بیشتر از وضوح بالابه طوری که فریم در ثانیه توسط نرخ تازه سازی عمودی صفحه محدود نمی شود. همانطور که انتظار می‌رفت، تعداد فریم‌ها در طول تقریباً کل آزمایش با روشن بودن همگام‌سازی به وضوح در حدود 20 یا 30 فریم بر ثانیه بود. این به دلیل این واقعیت است که آنها به طور همزمان با به روز رسانی صفحه نمایش داده می شوند و با نرخ تازه سازی 60 هرتز، این کار را نه با هر پالس، بلکه فقط با هر ثانیه (60/2 = 30 فریم در ثانیه) یا سوم می توان انجام داد. 60/3 = 20 فریم در ثانیه). فریم در ثانیه). وقتی V-Sync غیرفعال شد، تعداد فریم ها افزایش یافت، اما مصنوعات مشخصه روی صفحه ظاهر شدند. بافر سه گانه هیچ تاثیر مثبتی بر صافی صحنه نداشت. شاید این به این دلیل باشد که در تنظیمات درایور کارت گرافیک گزینه ای برای خاموش کردن اجباری بافر وجود ندارد و غیرفعال سازی معمولی توسط بنچمارک نادیده گرفته می شود و همچنان از این عملکرد استفاده می کند.

اگر Heaven Benchmark یک بازی بود، در حداکثر تنظیمات (1280×800؛ AA - 8x؛ AF - 16x؛ Tessellation Extreme) بازی آن ناراحت کننده بود، زیرا 24 فریم به وضوح برای این کار کافی نیست. با حداقل افت کیفیت (1280×800؛ AA - 2x؛ AF - 16x، Tessellation Normal)، می توان به 45 فریم در ثانیه قابل قبول تری دست یافت.