Почему фризят игры на ПК | Компиляция шейдеров
HTML-код
- Опубликовано: 1 июн 2024
- Оформите карту Год без % в апреле и гарантированно возвращайте 20% за все покупки в супермаркетах. Кредитная карта совершенно бесплатная, а ещё с неё можно снимать наличные в любых банкоматах без комиссии alfa.me/syGxX7
Реклама. АО "АЛЬФА-БАНК", ИНН 7728168971. 2VtzqvcsijY
Мой Компьютер в Telegram - t.me/mknewsru
МК в ВК - mknews
Фризы. Долгие загрузки. Мы привыкли винить в это разработчиков игр - но далеко не всегда виноваты они. Компиляция шейдеров - бич современных игр. Но что это такое? Как удобная технология стала проблемой?
Инфографика: рейтинг оборудования пользователей Steam март 2023 года t.me/mknewsru/7094
Рейтинг видеокарт - t.me/mknewsru/7307
00:00 - Вступление
01:22 - Что такое шейдер?
03:28 - Компиляция шейдеров
07:26 - Решение проблемы фризов
10:20 - Итоги
Магазин компьютеров МК -
#мойкомпьютер #шейдер - Наука
есть еще одно гарантированное решение проблемы. мы просто ждем лет 10-15 и запускаем старую игрушку на топовом ПК )
гта 5 лагает спустя 10 лет, держу в курсе
@@XpIOHdeJIb3000 потому что у тебя не топовый ПК
@@user-qw8wi7mj8g да нет, она фризит и на 4090. А ещё фпс до 40 проседает на траве)))
@@mephesto5092 видеокарты не фризят, вообще никогда. они слайдшоу показывают. Любой фриз это цп или цп-озу
@@costea. Фризят. Когда видеопамять забита под завязку. У меня была GTX 560 на 1гб памяти и я очень хорошо знаю каково это
Придумал! Когда покупаешь игру в Стим и она начинает загружаться, нужно чтобы первым делом загрузился и запустился модуль, отвечающий за компиляцию шейдеров. Пока загружается 100Гб остального мультимедиа контента, проц пусть считает шейдеры, и к моменту загрузки игры все уже будет скомпилировано. Понятно, что для этого нужна тесная интеграция загрузчика/установщика игры с магазином игр, но в современном мире АйТи всё решаемо. Правда, это не решит проблему перекомпиляции при обновлении драйверов, но значительно сгладит самое первое впечатление от игры.
В старкрафте 2 уже давно можно запустить игру не дожидаясь полного скачивания. Сначала грузится то, что нужно для мультиплеера, а потом кампания и косметика.
Стим качает запакованные данные и на лету их распаковывает. Как нибудь глянь в диспетчер задач, когда будешь игру устанавливать. Если у тебя быстрый интернет, то у твоего процессора будет не так уж много свободных мощностей (а у некоторых людей цпу загружен на все 100% при установке игры).
не выйдет. т.к. для компиляции шейдеров материалов нужен как раз основной контент (наборы текстур и геометрия). игре всё равно придётся выкачаться хотя бы на 60-80% от своего полного размера.
@@TigraPolosatiy У Steam уже давно имеется возможность компиляции шейдеров на лету. Надо оптимизировать процесс загрузки. Загружать первым делом не уровни, не звуки с музыкой - а то что надо для компиляции шейдеров, и пока игра качается - компилировать их свободными мощностями.
Распаковка архивов Steam уже давно не вызывает сильных проблем у процессоров.
Графика по сути не меняется уже как пару лет, парочку эффектов и всё, зато требования растут, ещё и компиляция часами.
О - оптимизация! Скажем им, что у них железо старое.
Раньше игры покупали готовыми, а щас за наши же деньги мы сами тестируем игры по предзаказу, и после наших отзывов разрабы допиливать игры
Сами виноваты,что покупаете игры дальше и дальше продолжаете поддерживать таких разрабов.
Если бы все перестали покупать такие не готовые игры, разработчики бы задумались
@@Michael-Rood а как понять, что игра не готова, если её никто не купил?)) Шучу, конечно, многим обзорщикам высылают пресс-копию игры, и ознакомится с обзорами - первое, что нужно сделать, когда решил купить игру. Давно так делаю, поэтому в последнее время покупаю только инди...
Игра если продаётся то она готова ну допустим в Стим, купил и та бета тестер епт
@@yaschikpiva639 по 1-2 отзывам уже понятно будет+ как ты сказал что обзорщикам техноблогерам высылают
Никогда игры не выходили полностью готовыми. Любая хоть сколько-то крупная игра получала несколько патчей.
Возмущения по поводу порта Lust Of Ass были спровоцированы не длительностью компиляции шейдеров, а тем фактом, что даже после получасовой+ компиляции, игра всё равно фризит как последняя скотина, а также требует просто какого-то запредельного для камерного пастгена количества RAM и VRAM. Если бы после этой получасовой+ компиляции игра работала нормально - не было бы и шквала претензий. Но по факту фризы и просадки есть даже не системах вида i7 12700k + RTX 3080 + 32gb DDR5 RAM, а это конфигурация выше средней.
вообще не было фризов. 13700+3080ти+32 озу, только вылеты пока драйвер хотфикс не дали. Фризит у долбоящеров с отпущенным фпс. Ограничиваем под свое железо и всё норм
ну может еще врам не хватило ящеру, выставил 4к
@@costea. та ты те, а как ты нашел способ загрузить сразу все данные без подгрузок на ходу?
@@otecperevodov какие подгрузки? Я не видел ниче такого, там иногда ползешь в узких проходах перед новой локацией. Игра плавно идет на ссд на конфигах вдвое слабее
Я фиг знает. Я Ластуху прошел на 11400+1660S+16Гб 3200. FullHd, натройки средние( кое-где высокие), богомерзкий фср выключен (иначе - лютейшее мыло). Ноль вылетов, фризы, может и были, но, только если альт-табаться часто (я заметил, что это проблема всех портов с Соньки). Компиляция шейдеров заняла припервом запуске минут 30. Но, у меня и ссд саташный, а не нвме. А народ на топовом железе че-то ругается. Может, проблема у них в том, что система засрана, по самое не балуй?
Все дело в желании или же в его отсутствие разработчика , заниматься оптимизацией своей игы! B Atomic Heart люди и на 1050 с приличной картинкой и ровным фремрейтом играют, а корявый порт с подтянутыми текстурами 15 летней давности "Ласт оф Ass" и на 4090 не может в 60 ФПС 😆👍
Приличной картинкой 720р и мылом?)
бла бла, на 4090 100-160 фпс если процессор может
@@costea. в 4К с RTX ?) Ну ну )) Ты конечно сейчас начнешь кукарекать про DLSS и не обязательность играть с трассировкой И защщищать рукоЖ@п@в отСосони. Но скажи мне , на кой ты выкинул почти 2000$ только на одну видеокарту, если ты не можешь играть в 4К на ультрах в какой то мыльцо-кинцо порт с древней консоли 😆🤦♂👏
На 1050 ти в открытых сегментах игры просадки ниже 30 фпс, в 1080п, на самом деле не очень то оптимизация у игры на релизе была, в бункерах 100+, в открытых 25-45фпс, но фризов практически не было, это да
@@Ugwemubwem0sas я не покупал. мыльца в тлоу нет. Нативное разрешение часто хуже длсс, потому что длсс это продвинутое сглаживание в первую очередь. Лично я хер ложил на 4к и фпс выше 60 фпс, поэтому мне 3080ти хватает. Но от 4090 не отказался бы и также бы играл с локом 60-75 фпс в 2к или длдср 2к на фул хд мониторе
Конечно же дело только в руках разрабов. Куча игр на ПК не фризят на ультрах и не требуют ждать компиляции шейдеров при запуске. При этом графоний на голову выше.
0:57 rtx 1060 и gtx 2060 🙂
Нужно распараллеливать компиляцию шейдеров на все ядра включая гипернитки, но при этом понижать приоритет этих ниток относительно подготовки сцены для следующего кадра. Тогда загрузка процессора вырастет с 15-25% до 100%, и шейдеры можно будет спокойно компилировать всё время игрового процесса. Если вы видите, что многоядерный процессор не загружен на 100%, но при этом лагает на компиляции шейдеров, то явно кто-то тупит, а не что-то.
Четырёхъядерные процы, указанные в минимальных требованиях, именно что загружены на 100%.Но это понятно... А вот как там с зеонами - хз...
@@OlegCitizen i9 с 24 ядрами обычно нагружен не выше 15-20%. Гуляет мнение, что сейчас больше 8 ядер для игр держать нет особого смысла
@@fokaspokas так и есть, ибо в консольках именно восемь ядер.
@@OlegCitizen В них 8 ядер и 16 потоков на архитектуре zen2.
Компиляция шейдеров итак грузит процессоры на 100%
В Atomic Heart компиляция шейдеров прошла 1 раз при первом запуске. Я не думаю, что кто-то обновляет дрова на видюху по 5 раз на день. Так вот, в Atomic Heart она была 1 раз и все. Сама играла работала норм. На зеоне 2666 в3 и 2060 в 2к ) Хотя 2060 в принципе для 2к не очень подходит ) Это я к чему, в Атомном Сердце явно заморочились с оптимизацией. А вот та же Ластуха пока сырая, надо подождать, потом допилят ) Скомпилировал разок, потом сидишь, радуешься )
Весьма грамотно и, главное, доходчиво! Вот за что мне нравится этот канал... Спасибо, Михаил!!!
хотя ничего не понятно для ... Но это такое себе ...
Я думаю что у всех играх должна быть возможность в настройках скомпелировать все шейдеры перед началом новой игры.
Да к TLOU вопросов куда больше чем компиляция шейдеров. До 1.2 обновы это был реальный бета-тестер даже на 4070ти.
ну ты бы не запускал на этом огрызке в 4к, и проблем не было бы. Игре даже в 2к нужно 12,5 гб памяти врам
@@costea. разрешение это называется quad hd
так чем дальше, тем больше. 12 vram для современных игор это фуллшд. по хорошему для 2к надо брать 4080, чтобы карты хватило хотя бы на 3-4 года без фризов от out of vram
@@otecperevodov так короче 2к. 4к тоже другое
@@costea. На самом деле там баг. В консоли общая видео и оперативная память. Для ПК код не переписали. Игра показывает, что ей нужно столько видеопамяти сколько ей нужно было бы на консоли общей памяти.
Дать возможность выбора. Компилировать по ходу игры или сразу все. И просто поместить в те же настройки графики. И разработчику не придется страдать от дилеммы
По факту компиляция шейдеров это продолжение установки игры.
Если компиляция требуется под каждое железо отдельно, значит она должна быть частью процесса установки. В идеале её следует проводить параллельно с загрузкой игры на комп пользователя с серверов дистрибьютора. Либо сразу после загрузки и распаковки.
Отлично оправдал криворуких долбанов, причастных к разработке "щидеваров". Почему та же Форза 5 с генерацией шейдеров грузит их буквально минуту-две, что вполне приемлимо, а не час-два, как в новой тлоу? Игра сильно хуже выглядит? На те же х30-60 времени разницы в графике?
потому что модно сейчас быть "нитакимкакфсе". Рукожопие разрабов сейчас все крупняки оправдывают.
А какой у нее графический апи?
Приятно,что мы на одной волне.
Совсем не давно задумался,что это такое,пока пока загружались шейдеры на Гари Поттере.)
+ много кого, вот и вышла эта тема
Спроектировать нормально видеоадаптер, чтобы тот сам "срезал углы" и работал без подсказок на версию драйвера - это конечно сложнее, чем выбрасывать на рынок огрызки и меряться FPS и термопакетом.
Ну так спроектируй и внедри - в чём проблема ?
Отличный ролик, многое узнал и готов смотреть ещё!
Уж больно нравятся эти технологии и очень интересно наблюдать за их развитием и тем как они обходят те или иные проблемы )
проблема только появилась, но я для себя открыл direct storeg
00:57
Первое место с 7%, второе с 8%, третье с 7,8%. GTX 2060 и RTX 1060 среди кандидатов. Статистика Стим от Центризбиркома?
RTX 3060 10.67%. Опечатались при рисовании...
Как же я бомбил от этих компиляций шедейров ) но теперь, после просмотра ролика я готов ожидать 15 минут ЛИШЬ БЫ НЕ ТОРМОЗИЛО )
А кто мерил прирост производительности от компиляции? Кто сравнивал этот прирост с падением фпс от компиляции во время игры? Хочется верить, что разработчики этим всерьёз занимались, а не просто впендюрили модную фичу чтобы было.
видео посмотри, там коротко показано падение фпс при одновременно игре и копиляции шейдера. это Очевидно, проц перегружен.
@@costea. Он и так под сотку долбится в "Last of Ass"
@@user-zi4bc6fu7b у тебя тоже будет долбится если видео смотреть с av1 на ютюбе на проце. Нет апаратного кракена как на приставке, и слабые процы долобятся. Хотя если ограничить в 60фпс будет хватать многих процев
@@costea. Зачем ты кривой порт оправдываешь?) Вот что бы что? Я её уже прошёл, игра понравилась, но порт просто днище. Вылеты, утечка памяти, неадекватные требования к процу.
PS плевать простому потребителю на Кракены, xyякены и прочее. Когда 97% игр идут нормально на компе ( в том числе и предыдущие порты от Sony) а этот шакальный порт не идёт, то тут явно проблема в оптимизации. Просто "Last of Ass" выпустили под сериал , что бы срубить бабла, через год +/- возможно выйдет с десяток патчей и тогда игра будет полноценно играбельной, но сейчас это дичь. Пиратку играть можно, но за свои же деньги быть Бета-тестером...
@@user-zi4bc6fu7b почему не адекватные? Почему рептилоиды орут вот проц в сотку караул, а когда гп в сотку ооо хорошо шайтан машина вычисляет😂. Если фпс не залочен то всегда что то будет в сотку. Даже если мониторинг не показывает сотку проца при упоре в него это значит что мониторинг в принципе не мониторит цп😊. Там мониторится шина цп-озу, ее забитость
Красавчики, ребят! Всё чётко, ясно и по делу! Так держать. Спасибо за видео)
Что-то статистика стима наеп.... попахивает 16,46% 12 Гб видеопамяти в видеокартах, итак вспоминаем карты с 12 Гб видеопамяти RTX 3060 (10,67% и то это 8 и 12Гб версии), RTX 3080 (2,62% но это вместе 10 и 12Гб), RTX 3080ti(0,62%), RX 6700xt (0,35%), RX 6750xt(отсутствуют) . Итог 16,46-10,67-2,62-0,62-0,35=2,2% . Где те самые 2,2% (на деле там цифра побольше) ???????
Спасибо за видос всё как всегда по полочкам. Процветания каналу.
Между прочим, помимо компиляции игровые движки занимаются распаковкой архивов - с уровнями, текстурами, шейдерами... Так вот в этом самом Last of us этот процесс особенно прожорлив, скандально известная библиотека Oodle занимается именно этим - это архиватор. Поэтому игры и просят быстрый SSD и 6 ядер.
в пс5 есть апаратный кракен для распаковки игр на лету. В пк нужен директ сторадж или хороший процессор
@@costea. Про директ сторадж на ПК есть большие сомнения. В играх и так видюха загружена на 100%, а ЦП как правило гораздо меньше и грузить на лету на ЦП может быть намного лучше для фпс (хотя на экране загрузки будет быстрее через директ строрадж).
0:57 GTX2060 и RTX1060 хотел бы себе такие видеокарточки)
Ахххахахахахх, реально) Спасибо что написал, так бы не заметил)
Не бери 2060, бери 3050, видеопамять нельзя докупить...
На самом деле фризы, статеры, компиляцию шредеров придумали производители консолей, иначе на консолях вообще никто не играл. Но это секрет, никому не говорите.
На консолях реально таких проблем нет?
@@cat_bite есть , там вместо фризов просадки по фпс .
Я готов хоть час ждать компиляции, лишь бы потом всё работало хорошо.
А в чем проблема при старте проекта проверить железо и драйверы, скомпилировать всё в файл в директорию игры и в последующем использовать уже скомпилированные данные сразу, а если оборудование или драйвера поменялись, скомпилировать в файл заново...
Одно из самых полезных видео на эту тему которое я видел. Спасибо большое за труды, Михаил!
Теперь понятны причины постоянных фризов, особенно в какой-нибудь колде. Железо мощное а фризы периодические. В таких ситуациях ты сразу начинаешь в первую очередь грешить на своё железо, в частности на процессор. Но оказывается причина весьма прозаична.
дада, купил мощный комп и каждый фриз жестко дизморалит
А скажи ка что за железо у тебя
@@user-uv7eu4vi3k 10400f, 3060 ti, 16 gb 3200mhz. На след неделе планирую 2к моник покупать и 32gb оперативы. Позже обновлю проц до 11400f с перепродажи своего нынешнего моника, мне хватит в принципе, а в будущем (через пол года-год) буду 13400f и 4070 покупать, либо обычную либо ti.
План надёжный как швейцарские часы)
@@aearone ради интереса мать у тебя какая?
@@user-uv7eu4vi3k Asrock B560 Pro4
Отличное информативное видео, спасибо всей команде МК❤
Days gone никаких проблем, ластуха = лютый ад, да. Конечно это разрабы не виноваты, не кривая студия которая делала порт бетмен аркхам кнайт. Да, верим. Впадлу расписывать всё тут. И шейдеры это даже не третья или 4я проблема. 1 раз подождать не проблема в среднем.
Большинство проблем нехватка врам. еще часть проблем слабые процы, в пс5 игру на лету кракен распаковывает.
На пс5 общая память, порт без глубокой переделки под вёдра стима. Благодарим нвидиа за память
@@costea. Ты хотел-благодарим криворуких разрабов за то, что они не могут в нормальную оптимизацию?
@@costea. да, на консолях-то пиздец мощные cpu уровня ryzen 5 3600.
Это именно проблема криворукости разрабов.
Объясню в разрезе UE5.
Когда создаётся материал, то часто встаёт вопрос, это единичный материал или он будет применяться в разных местах, но с разными настройками... и вот тут и кроется основной момент. Если создавать единичный материал, то шейдер будет скомпилирован сразу же и будет уже находится в билде и компилировать ничего не нужно будет.
Однако, есть динамические материалы... и вот эта гадость, компилируется в реальном времени. Тут и вступают в игру криворукие разрабы. Вместо того, что бы сделать несколько одинаковых статичных материалов с разными параметрами, они создают мастер-материал и делаю его динамическим, что бы наклипать по быстрому пачку дочерних материалов, которые будут потом компилироваться. Пока процесс в начале, вроде всё ок, но если проект разрастается, то это уже проблема.
И тут ещё такой момент, что многие разрабы просто не знают что делают... им удобно и ок.
И вот ещё, добавлю. Если игра компилит шейдеры при смене дров, то это точно полный шлак, с точки зрения разработки. За такие игры платить не нужно.
_" За такие игры платить не нужно."_
Мы и не собирались. 😜
А какие методы борьбы со статорами лучше работают? Попробовал поискать информацию, особо ничего нет, на перспективу думал пересобирать ПК и не понятно, что лучше будет работать, большой объём кэш-памяти, как у Ryzen в версиях X3D, наличие комбинации высокопроизводительных и энергоэффективных ядер, как у 13 серии Intel, или просто высокоскоростные SSD. Или нам остаётся смириться с тем, что есть и ждать, когда со временем будут найдены решения, как раз которые озвучены в конце ролика.
в целом статеров нет при ограничении фпс под свое железо, когда подобран уровень фпс чтоб не упиратьс в гпу и цп
1. Быстрые ядра. Фанаты фуфыксов, зеонов, зен1 - лесом. Быстрых ядер хотя бы шесть. 4 - это эконом-класс, но как апгрейд с фуфыкса годно. Кэша у них по-любому достаточно. А медленные ядра, соответственно, тоже лесом. Кэш 3Д даёт больше проблем, да и костыльно это.
2. Видеопамяти, побольше! Ибо рукожобы теперь начнут вот так портировать игры с консолей. Турбоблогеры с "кэшем в оперативке" идут лесом. Недостаток мощи чипа устранит DLSS, ну или FSR.
3. 32 гига оперативки. 16 гигов это уже эконом-класс. К сожалению. DDR4 пока годится, а там хз...
4. SSD под винду надо, под игры - в общем-то уже тоже. NVME важен, эффект есть, турбоблогеры с другим мнением идут лесом.
5. Профит! Для продавцов железа. Ибо всё это дорого...
@@CrazyPCman 👍👍👍👍👍 годные советы! вот бы Хуанг поднял видеопамять до 16 гб у 4070-ti это была бы отличная видеокарта, а от амд пока дождешься так всё у Хуанга раскупят :D
А почему нельзя просто во время (после, разумеется) установки скомпилировать шейдеры? Т.е. просто сделать этот процесс частью установки игры с дальнейшим предупреждением о переустановке драйвера и т.п., чтобы человек уже на раннем этапе был готов. Всё равно же сидеть и ждать или своими делами заниматься будет, лишние пол часа подождет не сломается, просто он будет готов к этому. Что-то началом 2000-х запахло...
не виноваты разрабы в том что сами игроки компилируют шейдеры? тогда ответь на вопрос почему новенький атомик хард играется замечательно даже на стареньких системах и там нет компиляции шейдеров? может потому что разрабы сразу их скомпилили и, о чудо, это не повлияло на фпс? может просто нужно нормально уметь делать игры а не сваливать все проблемы на самих игроков и не оправдывать лень разработчиков? видео явно выглядит как проплаченое оправдание той фигни что намутили с ласт оф асом
Ещë это связано с движком. Современные движки собирают так называемые 'варианты' шейдеров, то есть для разных платформ выбираются оптимальные маршруты. Например:
1) На пк игрока не работает массив 3D текстур, тогда шейдер будет собирать все остальные шейдеры с учëтом этой особенности.
2) На пк игрока стоит видеокарта не поддерживающая буферы объектов или буферы аттрибутов, тогда шейдеры будут компилироваться вообще с другой механикой и другим пайплайном.
Если сразу скомпилировать все вариации шейдеров, то получится такой не малый объем памяти. В движке юнити на пустой сцене со всеми вариациями, обычная свера с дифуз материалом будет забирать 1200 мб памяти.
Чаще всего разработчики делают компиляцию шейдеров на стороне пользователя, только для того чтобы не урезать графические возможности.
Если разработчик делает лишь один вариант, то вы получите моментальный запуск, однако резко ограничите колличество пк способных запустить конкретно этот вариант.
@@unitydeveloper8703 ну вот опять же, атомик, запускается везде даже на ведрах и не компилирует шейдеры, почему?
пс: атомик написан на ае4, вполне себе современный движок, да и в ае5 нет такой проблемы вроде как
Что мешает первую компиляцию и кэширование шейдеров включить в финальный этап установки игры?
то, что после обновления графического драйвера, всё это придётся проделывать снова. Не имеет смысла.
@@Basmurd но можно сделать это отдельной задачей или даже в отдельном запускаторе - типа, пока компилируются шейдеры, смотреть ютуб и не грузить систему рендером игры...
@@CrazyPCman так сверни игру и смотри ютуб, пока компиляция идёт.
@@Foxikdot кулер гудит, мешает...
@@CrazyPCman при компиляции кулер в любом случае будет гудеть.
лок можно поставить прямо в меню при первом запуске на 5-10 фпс, при слабом процессоре время компиляции должно значительно сократиться
Игроки бомбят с долгой загрузки потому что не понимают почему они вынуждены ждать. Мне кажется идеальным решением был бы пункт в настройках, позволяющий лично решить компилировать ли все шейдеры сразу или делать это по ходу игры.
К сожалению это не решит проблему. Решением будет не использовать шейдеры, там где они не нужны. К примеру, для отображении кирпичной стены, можно просто наложить качественную картинку (эмитирующую рельеф) на плоскость (+ менять яркость в зависимости от предрассчитанного освещения). А можно наложить картинку + повесить обработчик изменения геометрии тёмных мест (чтобы с эмитировать в падины) + динамически обрабатывать яркость вершин кирпичиков, относительно освещения + динамически добавить шершавость этим кирпичикам.
А теперь представь что главный открывает дверь, и выходит в город, где десятки кирпичных домов. И в этот момент видео карте нужно отобразить все дома.
И если в первом варианте всё отобразится мгновенно, то для второго потребуется много памяти + времени (внезапное подвисание картинки) для подготовки такой картинки.
@@kirilych9357 в видосе буквально сказано что предварительная компиляция всех шейдеров проблему фризов решает. Единственное что ты платишь временем ожидания этой компиляции. А различные оптимизации этого процесса уже и так используются, наверняка в том числе и то о чём ты говоришь.
@@nighthard9572 Проблему фризов решает. НО. Ты не учитываешь, что программисты ленивы (а программисты с крутым железом очень ленивы). Многие пишут очень кривой и не оптимизированный код. Если код изначально кривой, то и скомпилированная программа то-же будет выполняться медленно. Тут нету никакой магии.
@@kirilych9357 таковы реалии ПК гейминга, и цена прогресса в плане производительности железа. По шапке то таким программистам по сути некому дать, если игры что выходят из под их рук и так будут покупать. Но тут мы всё таки о компиляции шейдеров разговор ведём, и компилировать их нужно в любой игре на ПК. И я говорю лично про себя, что готов потратить хоть час хоть два перед игрой, если после этого она работать будет околоидеально.
@@nighthard9572 Я про шейдеры и говорю. Ждать ты можешь хоть 10 часов. Но если код изначально кривой, то тормоза никуда не денутся. Предварительной компиляцией шейдеров ты избавляешься только от кратковременных подвисаний (фризов) при появлении новых объектов, но игра продолжит тормозить.
В теории есть ещё один трюк, но он сильно не для всех игр. Можно создать RAM диск, т.е. диск в оперативной памяти и привязать туда папку, где хранятся шейдеры. Т.е. шейдеры будут создаваться напрямую в оперативке. Но есть и куча минусов. И меньше памяти остается (обычно не критично), фиг его знает где эта папка с шейдерами, а какой размер папки задавать и главное при каждой перезагрузке ПК нужно начинать по новой. Для товарищей с HDD трюк наверняка полезный. А про SSD... ну такое. Единственный момент - дешевые SSD люто падают в скорости при записи кучи мелких файлов. С оговорками. Но обычно шейдеры весят мало (ибо кусок кода) и это не критично.
Спасибо за видео!
фризит в момент создания шейдеров из за нагрузки на проц а не момент считывания, не нужен рамдиск
Это в доте есть ,но да без ссд тяжко.
@@costea. Да только проблема в том что в играх ЦП как правило не загружен на 100% и куча ядер как правило простаивает. Так что вопрос в нежелании заниматься оптимизацией хотя бы на таком уровне.
хорошая ли идея к компу с i 5 4590 и palit gtx 1650 gddr 6 купить материнскую плату на b 660 c 1700 lga c радиаторами за 10 000 и к ней i 3 12100f что бы в будущем была возможность сменить его на какой ни будь процессор 12 или может даже 13 поколения, ( видеокарту оставить туже ибо бюджет сильно ограничен, оперативная память есть 16 гб одной плашкой, в короткие сроки нужно будет докупить или взять вместо нее 2 по 8 ).
только что смотрел ваш ролик Эпоха Застоя, где сказано было, что в современных играх видяхи в поте лица трудятся, а ЦП прохлаждаются. А тут уже говорят как бы еще больше задач от ЦП переложить на видяхи. Вы уж определитесь там
конкретно порты с пс5 фризят из за того что они изначально пишутся под совмещенную систему памяти (общая озу и видеопамять d6) и память на компе слишком медленная. лучше всего это видно на спидермане)
Похоже на то. Судя по жору видеопамяти - разрабы её вообще не экономили.
М-да.... Печально это всё. Почему пкшникам всегда достаются говнопорты с консолей? Чем мы так провинились? Ведь в консолях стоит обычное пк железо!
@@Bluedion как бы нет, не обычное пк железо. там свой конкретный цп на zen2 (8/8) и свой конкретный гпу на rdna2. а по поводу того что нам достается - десятки годнейших уникальних игр доступных только на компе. пока на плойке унылые одинаковые эксклюзивы на пк к примеру майн с модами)
Решение проще некуда - не покупайте предзаказы, не покупайте без обзоров.
Как только деньга прижмёт, сразу научатся все шейдеры незаметно компилировать
Было интересно ознакомиться. Спасибо
отличный ролик! могу привести пример с ведьмак 2 понимаю что старая игра но, там есть возможность влиять на используемые ресурсы пк.
в конфиг файле настроек можно увеличить размер отрисовки текстур, размер используемой памяти, и тд.
так вот ставил 4к текстуры и 3 гб. памяти но больше 2,5 гб. не занималось зато загрузка карт была только в местах где идет изменение по сюжету.
оббежал всю карту флодзема и второй главы, где за эльфов в Вергене. подгрузка только если входить в поле с призраками.
я не говорю о том что все игры должны пользовать до 3 гб памяти и тд. я говорю что все грузится и работает нормально.
Можно мнение диванного аналитика? Почему бы не создать очередь обработки шейдеров? Есть шейдеры которые увидишь первыми их поместить наверх. Выделить под это один поток и пусть себе молотит хоть час. Я не знаю как на консолях сейчас но раньше можно было скачать небольшую часть игры и начать играть пока остальная часть докачевается.
" И виноваты ли разработчики" - у нас шиз, вызывайте скорую.
я лучше пол часа подожду , учитывая что игра проходится как правило за пару вечеров - подождать с обновлением драйвера вполне можно
Пк гейминг…
@@demitri7303 Так я лучше подожду 30 минут чем буду играть с кривым графоном и кривым управлением на консоле
Давай поговорим про консольный гейминг - этот тот гейминг где с трудом 60 кадров при сильном мыле
Тот гейминг который оказуаливает игры и упрощает интерфейс , механики + урезает графику и долго задерживает ее на одном уровне , из за консолей страдает оптимизация так как разработчикам приходится пилить оптимизацию под каждую платформу
Где авто прицел все делает за тебя
В целом консольки это урезанный пк где одно преимущество - эксклюзивы что по факту не заслуга платформы а маркетинг + многие уже доступны на пк, ну а в целом консоли только вредят игровой индустрии. Раньше хотя бы мобильными были а сейчас это тот же системник
@@GHOST699.Ппц тьі д4ун
Что бы не было фризов на Пк, разработчики должны создавать игру на бюджетных компьютерах, а не этих вот всех Титан Ада, 13900ks, 64 GB RAM, Raid 0 из ссд...
Да тот самый у меня рейд из 4 ссдшек по 120 ГБ со скоростью одного массива объемом 480ГБ 1.2ГБ/сек
Даже на нвидиа чипсета на ам3 плате))))
я не хочу играть в игры уровня 2000х
@@costea. В твоих словах нет логики. Только низкопробный сарказм
@@archlinux573 Опасный кекс. Что на нём делаешь? Не лучше ли уже ссд из озу сделать?
Разрабатываю пусть на любом ПК. А вот тестировщикам нужно раздать самые разные компьютеры. И пускай часть тестировщиков проходит игру на минимальных требованиях :) Они наверное будут наслаждаться нечитаемыми вывесками, отсутствием четких текстур (даже подойдя в упор), и божественными подвисаниями.
кэширование шейдеров можно настроить в видео драйвере, а также в настройках стим. для некоторых игр это работает.
Всё хорошо, всё по делу, но не "тэнгэ", а мягко "теньге" (через Е). Слова деньга и тенге - однокоренные
0:57 GTX 2060 RTX 1060 Да? А где взять.?
На Авито😂😂😂
Я извиняюсь за вопрос не по теме - а реклама альфа банк она ведь встроенная в видео, это же не от ютуба?
В чем проблема заранее предугадывать какие шейдеры нужны? Взять допустим Kingdom Come Deliverance. Первые минут 30 игры мы проводим в деревушке откуда нельзя убежать. Все шейдеры первой локации можно скомпилировать на пред-запуске. Ввиду того что локация не большая, процесс компиляции пройдет очень быстро. Дальше мы знаем что по сюжету мы будем смотреть катсцены с нападением и убеганием из деревни по конкретному пути, ведь все прописанно изначально, потом нас ждет ввод в саму игру через общение с НПЦ и еще куча локальных активностей которые не дадут убежать игроку в открытый мир. Так вот не вижу никаких проблем, с тем, чтобы повесить компиляцию шейдеров в таком порядке, в каком будет двигаться игрок по миру в ближайшие 2-3-4 часа, при том что мы знаем (или предполагаем) что он будет делать, на основе сюжета, диалогов с НПЦ, роликов и прочими прелестями. Можно заранее прокомпилировать то что будет делать игрок с вероятностью 90% в ближайшие 2-4 часа, а потом уже докомпилировать всё оставшееся по убывающей где игрок с наименьшей вероятностью будет в ближайшее время. Процесс компиляции можно повесить на 2 ядра например, или если мы знаем что игра работает в 4 потока, а у игрока 20-ти поточный процессор, то на компиляцию можно отдать и все 16 потоков. Написать при этом дисклеймер при старте игры что будет идти компиляция шейдеров бла-бла возможна высокая загрузка процессора, по ее истечению все устаканится. При этом из-за того что часть шейдеров уже пред-скомпилированна, игрок не будет испытывать проблем на старте и по ходу компиляции, ведь заранее просчитано что надо и где игрок будет.
Вышеописанное прекрасно сработало бы и в TLOU 1 и Cyberpunk 2077 и Wticher 3 и Spider-Man и Elden Ring и Skyrim и прочих играх даже с опен-ворлдом. Другое дело что кроме ТЛОУ 1 другие игры не компилируют шейдеры по 10 часов (или во всяком случае игроку об этом не говорят), а кроме Callisto Protocol у нас нет больше на столько сильно статтерящих игр (все более менее плавно работает если сравнивать с Callisto'й), но тем не менее, все можно предугадать. И в целом то проблем нет с вышеописанными играми кроме TLOU и Callisto'й.
ССд нужен для быстрой загрузки текстур, шейдеры минимальны по объёму но требовательны к ЦПУ. Часто именно текстуры плохо оптимизированы, например сделаны для 4К или 8К, а играешь на 2К или меньше. В общем раньше было лучше.
Почему нельзя сделать так, чтобы человек с точно таким же железом, как и у меня, компилировал шейдеры, а я просто их скачивал?
Потому что тогда народ не побежит за новым железом.
@@CrazyPCman как это связано? Скомпилированные шейдеры тебе фпс не прибавят, если видеокарта устарела
@@SkyBorik Но зачем тогда компилировать шейдеры, если они не прибавляют ФПС?
@@CrazyPCman Потому, что без скомпилированных шейдеров игра работать не будет.
@@SkyBorik а связано так - у юзера годный комп, и тут выходят игры, где компиляция шейдеров заставляет нехило пострадать... А тут ещё и "умники" из интернетов подскажут: мол, "вот у меня ай-7 и 4090 и всё летает". И призадумается юзер - а может и вправду его компутер того... устарел?
Про оптимизацию шейдеров в ластухе вообще говорить не приходится. Iron Galaxy даже в подсказках к управлению просто поменяли пиктограмму стика на кнопки с текстом: «Отклоните на небольшой угол». И компиляция по 1,5-2 часа скорее была вызвана тем, что компилилось вообще все. При этом тот же RDR 2 у меня на HDD идет нормально на высоких, а это на минуточку игра с открытым миром. Так что дело не в шейдерах, а в прямоте рук разрабов. Как говорится: «плохому танцору яйца мешают»
Рекламу Альфа-Банка забыли скомпилировать?
Расскажите ещё про мэш шейдеры и почему они такие требовательные на примере алан вэйк 2. Боюсь что тенденция с ними продолжится и в гта 6 условную придется играть исключительно на топовой видеокарте
Я про рекламу в начале ролика. Если бы такие огромные банера так развернулись на здании, у них оторвало бы пару верхних этажей.))))😅
А что насчёт перекомпиляции лишь части шейдеров, которые стоит поменять в силу обновления, навряд ли разработчики будут менять что-либо кардинально, хотя всё возможно???
Можно же сделать так, чтобы драйвер общался с шейдерами, чтобы он сообщад, что поменялось, можно ведь даже пересобирать шейдеры во время обновления самого драйвера, ежели сам пользователь не против, к примеру.
В ведьмак 3 в драйвере нвидиа какое число нужно поставить в "кэширование шейдеров",чтобы новиград не лагал?
Было бы здорово в будущем увидеть в настройках игры переключатель технологии компиляции шейдеров. хочешь 400 фпс - подожди часок в главном меню, хочешь играть сейчас - пожалуйста, но в 40-70 фпс
Компиляция шейдеров это не ускорение фпс.
@@vifvrTtb0vmFtbyrM_Q но это нагрузка на систему. И, как было сказано в видео, если сделать её заранее сильно скажется на производительности.
@@aheless На производительности это сильно не скажется, но скажется на стабильности
Кушать всем хочется, вопросов нет, но че не выровнять громкость?
Подскажите PUBG фризит на топ железе, уже 3 компьютера сменил а фризы не проходят
Я просто скажу что игра хочет 7gb видеопамяти на средних...не ну а че правильно давайте я буду играть на низких.))
Причём это сейчас а на выходе требовал 9gb.
Моя gtx 1660 super: можно прыгнуть в окно?
P.S мне больше интересно почему игра хочет так много памяти.
Игра на средних превращается в лютейшее мыло, у меня как-то настройки слетели с высоких на средние, я просто в ахye был от этой графики, играть не возможно.
Потому что игру делали под консоль, где оперативка и видеопамять одно и то же. При портировании забыли оптимизировать... или это тупо троллинг пекабояр.
В новых консолях под видеопамять игра может использовать в среднем 12 Гб (остальные 4 Гб идут на другие процессы). Поэтому все новые игры, которые не будут иметь версию под пастген консоли, будут сильно ждать видеопамять. Так что 12 Гб видеопамяти очень быстро станет стандартом, как до недавнего времени было с 8 Гб. И да, всякие rtx 3060ti-3070 если не за этот, то за следующий год превратятся в тыкву.
Респект ) еще один вопрос снял )
Мне интересно Вкусно точка не у тебя ли подглядели эмблему ? 🤔🤔
от души! Благодарю)
Почему тогда они не хотят изначально скомпилировать шейдеры уже внутри директивы самой игры( что бы они там лежали готовые ) и сделать компилятор уже для подстройки кода шейдеров, а не ждать 100500 лет , пока скомпилируются в кэше видеодрайвера шейдеры (забивая "С" диск). Всем пофиг им главное продать продукт, хоть в гуано сделан на коленках.
Спасибо! Полезное видео!
Кто знает, скажите - в оверлее 11:32 это msi afterburner или другая программа, если другая, как называется?
FPSmonitor
@@mka Спасибо!!
Ответ не раскрыт. Почему же старые игры так не делали при первом запуске.
В самых старых играх шейдеров вообще нет ( начало 2000х). Потом шейдеров было мало. Сейчас шейдеров очень и очень много.
дак сложных шейдеров в таком количестве не было.
простота сцен этого не требовала, да и движки работали немного по другому в схожих ситуациях.
Ответа не будет. Потому что он уже известен - это кривой порт - но надо же сказать что-то умное!
отменил подписку на канал - по количеству рекламы стали ХУЖЕ ТЕЛЕКА, счастливо оставаться, дальнейших творческих успехов, дальше без меня!
Без тебя тут совсем никак: ruclips.net/video/5AInj0LcMb0/видео.html
Отличный видос, пушка-бомба!)
Спасибо за подробное и интересное видео!
Очень доходчиво)
Кому лень смотреть, то реальное решение лишь одно: это ждать внедрение технологии DirectStorage версия 1.1 (именно 1.1, версия 1.0 распаковывает данные процессором) в PC-версии игр. Изменение настроек в игре или предварительная компиляция это лишь костыли.
Ну компил легко объяснить. У ps5 и xbox series x стоят неплохие ssd-шники вкупе с 8-ядерным 16-поточным райзеном, для которых подгруз шейдеров в современных играх- не такая уж сложная задача, мощностей с избытком для игр, не выкрученных под самый потолок их возможностей. Ну сколь ты там выжмешь из 6600xt в 1440 либо в динамических 4к? 30-60 фпс? Остаются еще ресурсы под другие задачи у процессора, например, под шейдеры, работу с хорошим звуком, и так далее. Конфигов пк на свете десятки. Соответственно нужен либо костыль, либо полноценное решение (которое будет дороже, и которым будут пользоваться далеко не все). И таким костылем стала предварительная компиляция.
По поводу одни из нас возмущение логичное, т.к. это линейная игра и каждая локация грузится отдельно. Т.е. разработчики легко могут компилировать шейдеры во время загрузки локации. А с открытым миром можно честно предупреждать, что это компиляция шейдеров. Она делается один раз и всё. Из 200 часов игры лагать будут первые 5.
В игре Атомик Неарт компеляция шейдеров погружается примерно 4 мин. На видеокарте 3060 12G
10к шейдеров? чего? чтобы было столько шейдеров в игре для этого должно быть 10к УНИКАЛЬНЫХ ОБЪЕКТОВ, а я более чем уверен что ни одна игра такого кол-во уникальных объектов еще не достигла, а повторяющиеся объекты используют один и тот же шейдер. Это если мы смотрим что разработчики просто дегенераты тупые, а если разрабы не дегенераты то шейдер того же пола и стены будут одинаковые так как программа шейдера у них одинаковая, но разные сами входные данные. Из-за чего на всю игру выйдет не больше 100 шейдеров всего.
Там 11К "шейдеров". Точнее, 11 гигов "шейдеров". Пусть трындят что хотят, шейдеры столько не весят.
И да, универсальные шейдеры (убершейдеры) - это не новинка, например в том же Юнити (!) они давно есть.
Ну тут много нюансов. Начиная от того, что некоторые могут прямо в шейдер вшить текстуры, например для эффектов. Кстати да, эффекты почти всегда имеют уникальные шейдеры. + Компилятся внутренние шейдеры для работы со светом, шейдеры для AO, GI и многого другого, чего не пишут сами разработчики (если речь об универсальных движках типа UE и Unity). 10к шейдеров вряд-ли наберется, но под 500 вполне может быть.
@@dangername6996 ну вот они и вшили всё что можно - и набралось 11 гигов "шейдеров", хотя самих шейдеров едва ли на 1% от этого количества данных...
А может это всё просто троллинг - показать этим пекабоярам, что их крутые компы не тащат игрушку с плойки... Если забыть про то, что это таки ремейк ремастера, про жор процессора на компиляции и распаковке уровней, про подтянутый графон (на ультрах), про жор видеопамяти на этих ультрах (у пятой плойки всего 16 ГБ на систему и графику - и такого графона там нет, по сравнениям там высокие, иногда средние)...
чтобы жизнь малиной не казалась
Саму видеокарту подключать к процессу компиляции шейдеров на первом запуске?
Карта занята отрисовкой менюшек, её низя отвлекать...
Видеокарта не умеет компилировать, если что
@@Dmytro-Tsymbaliuk я в курсе, но в этом направлении кажется можно что-то сделать, если не на уровне софта, то может производители видеокарт на уровне железа подсуетятся
@@user-st8iq2yy8z уже годами есть решение - использовать Vulkan, там с шейдерами я о проблемах не слышал
мне не мешает долгая компиляция если она помогает с производительностью но если вы заставляете ждать а после у вас персонажи превращаются в джигитов на лсд это недопустимо
Супер! Благодарю!
Спасибо, а то всю дорогу было непонятно про шейдеры ети)
Вшитая реклама отталкивает. Я понимаю что нет монетизации. Но рекламу не перевариваю с детства, с тех пор как она появилась в телевизоре. Использую разные приложения для блокировки данной и по сути не смотрю рекламу. Дзен и Яндекс не использую совсем (догадаетесь почему).
Тогда плати за видео
Интересно ещё и то что у всех работает по разному, на торрентах про каждый дистрибутив полно разных комментов, у кого то нормально идёт, у кого то фризы, у кого то вылеты, в у кого то даже не запускается...
нормальное решение это поставлять вместе с игрой кэши компилированных шейдеров для nvidia, intel, amd под актуальные версии драйверов. эти версии драйверов указывать как минимально необходимые для запуска игры. далее во время игры в фоне перекомпилировать требуемые шеёдеры с минимальным приоритетом. можно на старте перекомпилировать небольшой набор наиболее важных шейдеров. старый кэш шейдеров работает абсолютно нормально с более новым драйвером, но не использует последние улучшения в драйвере, косающиеся этого шейдера, если таковые были. по этому его перекомпиляция это очено второстепенная задача с минимальным приоритетом.
Вот вот, возможно ли эту байду вообще обойти? Допустим папку с готовыми компилироваными шейдерами вырезать в другое место, после наката свежих дров обратно вернуть в то место или после запуска игры чтобы она там началась для создания данных и выйти с последующей заменой готовыми данными.
Подскажите пожалуйста, что за игра где пикап ехал по камням.
Это не игра. Это демонстрация игрового движка (инструментария для разработчиков).
Игра один из нас на ПК. По разному загружает шейдеры на моем ПК загрузка длилась 15-20мин. Конечно процессор райзен 7 5800х работал на 100% в самой игре чуть по легче ему стало работал на 65-67% . С видеокартой asus dual RTX 3070 без DLS и FSR. На высоких спокойно давала 80-85фпс с вкл. DLS или FSR. Добавляло 20фпс . Потерю качество вы не увидите в разрешении FULL HD цвета тусклые ! Но зато три раза игра зависла и выкидывали на рабочий стол с сообщением ваша видеокарта перестала работать :) но ОЗУ употребляла то 22g из 32g то показывает 7g из 32g то 16g из 32g. С каждой перезагрузкой игры показывало по разному . Но видимо это потому что пиратская версия игры . А как было играть тем кто заплатил ??
Виноваты кто угодно, только не разработчики:-).
Ояень интересно, можно порционно компилировать шецды, можно заранее не компелировать прозрачность и ткань для земли но виноваты не разработчики.
МК, а ограничение в фпс только на 60 кадров делается или можно и 75 кадров сделать если монитор 75Гц?! 🤔🧐🤓
все зависит от настроек в самой игре
@@mka Спасибо, посмотрю в настройках. 😉👌
как бы на дворе 2023 гол, давно пора ССД в компе иметь, у меня эта компиляция была мину 10, не больше.. а так без ссд и фаллаут 4 будет грузиться по 5 минут в переходах между локациями
0:57 RTX 1060 GTX 2060 найс статистика
Миша. а что за микрофон у тебя?
akg p220