The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Поступили в продажу первые игровые консоли на базе SteamOS"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Заметили полезную информацию ? Пожалуйста добавьте в FAQ на WIKI.
. "Поступили в продажу первые игровые консоли на базе SteamOS" –2 +/
Сообщение от Stax (ok), 12-Ноя-15, 17:08 
Конкретика простая: игра выполняет много операций одновременно. В частности, из затратного: считает физику объектов согласно моделям их поведения; рассчитывает AI противников; подготавливает данные для рендеринга и отправляет их видео-чипу. Еще есть чуть менее затратные, но тоже важные задачи обработки устройств ввода, рассчет звука, подгрузка очередных ресурсов в RAM/VRAM (в моде огромные бесшовные миры).

Все эти операции должны успеть выполниться в положенное время. Если видяха уже отрендерила кадр и ждет иноформации для следующего, а физика не успела рассчитать, что именно нужно рендерить в очередном кадре (аналогично с простоем других операций) возникает лаг, а ресурсы компьютера - имей он хоть в 5 раз мощнее видяху, чем консоль - простаивают.

Когда игру оптимизируют под конкретную консоль, на практике выясняют, какое реальное соотношение по затратам на эти операции. И, соответственно, изменяют количество/размер объектов для физики, глубину просчета операций AI и прочее так, чтобы все шло максимально синхронно. Мощность видяхи точно известна, процессоров тоже - получается запиннить треды обработки по ядрам скажем 4-х ядерной консоли так, чтобы различные операции выполнялись максимально синхронно. И узкие места тоже получается срезать (какой-нибудь взрыв с разлетом объектов - тяжелая физика; или много противников - сложно обсчитать их поведение; или большие пространства и сложная геометрия - сложно видяхе).

В результате все получается очень сбалансировано. Переходим к компам и этим Steam Machine: процессоры внезапно оказываются по 2 ядра, 2 с HT, 4, 4 с HT, разной частоты - разброс по мощности в несколько раз. Запиннить, как на консолях больше не получается, да и разные процессоры (кэш и прочее) имеют другое соотношение по времени выполнения операций друг относительно друга. Видеокарты тоже могут отличаться по скорости в несколько раз. Что делать? Кое-как выходят из ситуации, отдав все треды обычному шедулеру ОС (который ни разу не рассчитан на такие задачи, как обеспечить синхронное выполнение операций в различных тредах); мощность компа тонет в блокировках и ожиданием одного другого. Добавляют кучу опций, которые можно крутить для тонкого тюнинга параметров физики, графики и прочего; но ни пользователь, ни разработчик понятия не имеет, как на его конкретной железке добиться того оптимального соотношения операций, как была на консоли. Пресеты помогают не очень сильно, т.к. их обычно ставят как попало.

В итоге (да, я понимаю, что разрешение/текстуры на ПК будут лучше и fps больше) - чтобы получить плавность самой игры, аналогичную консоли, нужно иметь железо в несколько раз мощнее, чтобы все операции, теперь совершенно не сбалансированные друг относительно другого и кидаемые планировщиком на ядра процессора как попало все вместе выполнялись за разумное время. С соответствующим ростом его стоимости. И руганью ПК-бояр "опять кривой консольный порт, тормозит на моем топовом железе!"

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Поступили в продажу первые игровые консоли на базе SteamOS, opennews, 12-Ноя-15, 12:56  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру