Shadercache что это за папка
Shaders — что это за папка? (Андроид)
Приветствую всех. Сегодня мы должны выяснить предназначение одной директории, которую можно встретить в операционной системе Андроид. И помните — просто так даже не думайте удалять никакие папки или проги с телефона!
Ребята, сразу вас огорчу — реально нет никакой точной инфы о предназначении папки! То, что я здесь написал — это максимум что вы сможете найти в интернете, если только не посвятите поискам инфы целый день))
Shaders — что это за папка? (Андроид)
Ребята, я покопался в интернете, прошустрил сайты и вот какие могу сделать выводы:
Папка Shaders хранит шейдеры игры или используется для их кэширования.
Можно ли удалить? Как понял — да, но при условии что директория для кэша. А если ее предназначение другое — то после удаления могут быть проблемы/ошибки в игре. Поэтому удалять без уверенности не стоит. Дело в том, что у одной игры она может быть например для кэша и удалить ее можно, а вот у другой использоваться еще для каких-то целей.. и после удаления вы возможно больше не сможете поиграть…
Если эта Shaders много весит, а раньше весила мало (когда игра уже стояла) — то да, может это и правда кэш. Кэш спокойно со временем может увеличиваться, это так бы сказать нормальное явление. ВАЖНО также то, что удаление папки — может расцениваться как вмешательство в игру, и может сработать некая защита (например бан), но это уже конечно от самой игры зависит.
От какой игры? Тут уже зависит какую вы ставили. Шейдеры используются почти во всех играх. Они нужны для определения параметров геометрических фигур, обьектов, созданий эффектов отражения, сдвига, преломления, затемнения и других вещей. То есть это то, что связано напрямую с игрой.
Например такую папку содержат игры NESDroid, Asphalt8, FIFA 14 by EA SPORTS, даже в знаменитой GTA IV такая папка есть.
Хотя один пользователь например эту папку удалил.. но она у него была от игры Real Racing 3… потом запустил игру и всей окей, папка создалась заново. Почему? Потому что скорее всего нужна была для кэша шейдеров. Тогда после удаления папки она будет восстановлена при следующем запуске игры.
Если Shaders пустая — советую ее не удалять, места она не занимает и телефон никак не грузит.
Мой совет
Не знаю поможет ли мой совет, но я бы сделал так при возможности — переименуйте папку, например была Shaders, а вы задайте имя Shaders_ — то есть добавьте символ нижнего проблема.
Потом выполните перезагрузку телефона и проверьте — работает ли все нормально? все установленные приложения, запускаются ли все игры? Если при этом папка появилась заново и все в смартфоне работает нормально — значит папка выполняет роль некого кэша. То есть удалять можно. Но лучше поэкспериментировать и проверить точно. Ну а если будут ошибки — восстанавливаете название переименованной папки обратно.
Такая папка может быть даже в операционке Microsoft Windows от игры Prepar3D v4 (некий шутер или симулятор самолетов):
Заключение
К сожалению нормальной инфы узнать не удалось.
Повторюсь, если папка ничем не мешает — лучше оставить, мало ли.
На этом все. Удачи и добра, до новых встреч друзья!
Что за папка Shaders на Андроид — весит много, а удалять страшно
Пользователи часто сталкиваются с тем, что на устройствах, работающих под управлением операционной системы Android, по умолчанию содержится множество папок с совершенно непонятным названием, назначением и содержанием. И пока памяти на гаджете достаточно, их наличие, в общем-то, никого особо не волнует. Но как только устройство начинает сигнализировать о заполненном хранилище, возникает желание удалить все ненужное, хотя прежде не помешает разобраться, что именно относится к этой категории. И первой на пути возникает непонятная папка Shaders.
Папка Shaders — что за зверь?
Загадочная папка есть далеко не на всех Андроидах. Ее присутствие в смартфоне обычно видят любители мобильных игр и развлекательных приложений. Она предназначена для кэширования графики игры. За счёт этого утилита загружается быстрее, а графическое отображение не страдает от недостатка трафика или других нюансов.
Различные игры, изображения бонусов и все графические рисунки из геймплея так же хранятся в Shaders.
При этом после открытия папки можно будет видеть исключительно белые файлы, отобразить которые будет невозможно. В то же время именно они помогают играм быстро и качественно загружаться, становясь очень ценным подспорьем для геймеров.
Понять важность кэша можно оценив разницу в скорости загрузки игры в первый и во все последующие за ним разы. После установки приложение всегда загружается дольше, чем во время повторного открытия.
Можно ли удалять и как это правильно сделать
Разработчики настоятельно рекомендуют не удалять системные файлы. Однако для любого правила действуют свои исключения. Вот и Shaders не относится к важным данным, которые нельзя трогать.
Важно! Среди геймеров бытует мнение, что удаление любого файла может расцениваться, как вмешательство в систему, что приведёт к бану в игре или невозможности дальнейшего гейминга. Однако таким влиянием рассматриваемая папка явно не обладает.
Тем не менее удалять данные, содержащиеся в Shaders, без крайней необходимости не стоит.
К тому же, все удаленные файлы будут восстановлены после повторного запуска утилиты. То есть никакого положительного эффекта достигнуто не будет, поскольку память смартфона заполнится снова. Перед удалением важно убедиться, что файлы действительно относятся к кэшу, и не нужны для более серьёзных действий, влияющих на приложение.
Сделать это можно двумя способами:
При первом способе достаточно просто посмотреть, сколько весит хранилище до активной игры и по завершении процесса. Если вес существенно увеличивается, значит файлы – это всего лишь кэш.
Проверка важности содержимого также выполняется путём смены названия. Если после переименования утилита продолжит запускаться стабильно и без сбоев, значит файлы не имеют никакой системной важности, и их удаление не станет критичным для системы.
На устройствах Андроид можно наблюдать много установленных по умолчанию папок, которые не несут в себе серьезной функциональной нагрузки для системы. Другое дело, что определить их не так уж просто. Поэтому если системные файлы никак не мешают, и не забивают внутреннюю память смартфона, то лучше их все-таки не трогать.
Аналогичное правило распространяется и на Shaders. К тому же, удаление этой папки никак не способствует очистке памяти гаджета, поскольку повторный запуск игры приведёт к очередному кэшированию файлов.
Убираем лаги от ларцов (Shader Cache fix)
НА ДАННЫЙ МОМЕНТ РУКОВОДСТВО УЖЕ НЕ ТАК АКТУАЛЬНО В СВЯЗИ С ПРОВЕДЕННОЙ ОПТИМИЗАЦИЕЙ ИГРЫ
Чтобы решить проблему, нужно поместить эти мелкие файлы в оперативную память, для этого (работает в win7 и новее):
1. Скачиваем программу для создания RAM диска, например бесплатную SoftPerfect RAM Disk, скачать можно с их сайта https://www.softperfect.com/download/freeware/ramdisk_setup.exe
2. Устанавливаем
3. Запускаем
4. Настраиваем:
Для этого сначала создаем образ виртуального диска:
Далее:
Указываем месторасположение образа диска (можете выбрать любое какое вам нравится),
Выбираем Файловую систему (Fat 32)
Выставляем размер диска (У меня стоит 100 Мб), который можно рассчитать исходя из занимаемого пространства (Поле «Размер» в свойствах папки) POE\GameData\Apps\poecis\ ShaderCache + 30%
Нажимаем Ок )
Далее добавляем созданный образ в автозагрузку:
Вспоминаем куда мы сохранили образ, и указываем его (обязательно).
Указываем букву диска (у себя я указывал Z)
Отмечаем галочку «сохранять содержимое»
Жмакаем «Ок»
Теперь копируем путь к расположению игры, до папки ShaderCache (зайдите в её свойства, и увидите её расположение); у меня например это d:\Games\POE\GameData\Apps\poecis\ ShaderCache Вставляем в блокнот. (Если самой папки ShaderCache в пути нет, вставьте в конец ShaderCache )
Теперь нужно заменить мои пути в формуле, на ваши;
Переходим в блокнот, отступаем, и копируем туда эту формулу
В ней заменяете пути на ваши, которые вы только что сделали. Допишите к путям кавычки как в примере.
Удаляем или переименовываем папку ShaderCache в директории игры.
Возвращаемся в черное окошко командной строки и вставляем туда нашу измененную формулу
(нажимаем там правую кнопку мыши, затем вставить)
UPD, кто использует DX11 версию игры, измените папку на ShaderCacheD3D11
Как проверить что все работает:
Открытие одного ларца запишет эти эффекты в кеш, и в следующий раз открытие будет намного бодрее.
*Чтобы вернуть «как было» достаточно просто удалить в папке с игрой папку ShaderCache, или если вы переименовывали то можно старую папку назвать прежним именем и согласиться на замену.
Еще что то, что возможно поможет:
Кстати нашел решение проблемы некоторых фризов. Все дело было в звуках.
Где-то тут на форуме эта инфа есть, но мало ли кто не читал. Поэтому напишу тут.
Заходим в папку Мои документы / My games / Path of Exile
Создаем там текстовый документ и называем его «Command_line» (без кавычек)
Внутрь копируем «—softwareaudio» (без кавычек)
Сохраняем. Запускаем игру и радуемся. Многие фризы пропали, в том числе от большого количества эффектов. Но огненная земля и огненные тотемы по прежнему снижают фпс 🙁
P.S Работает как я понял только со встроенными звуковыми картами. У не встроенных итак все замечательно с этим.
Компиляция шейдерного кэша для CRYENGINE 5.3. Оптимизация CRYENGINE 5.
В CRYENGINE 5 используется шейдерный кэш, представляющий собой различные комбинации шейдеров, встречающихся на уровнях игры. Этот набор шейдерных комбинаций преобразован в бинарные файлы. Шейдерный кэш необходим для оптимизации и корректного отображения всего, что есть в игре.
Официальная документация по теме:
Предусмотрено два режима работы с шейдерным кэшем:
shadercache.pak
shadercachestartup.pak
shadersbin.pak
При этом важно учитывать, что если компиляция шейдерного кэша на ходу отключена и движок не найдёт в global shader cache нужную комбинацию, то объекты, использующие эту комбинацию, не будут корректно отрисовываться.
Так же в game >\ engine\ можно увидеть engine.pak и shaders.pak.
engine.pak — здесь содержаться различные конфигурационные файлы и некоторые базовые ресурсы для движка.
2. Компиляция шейдерного кэша на ходу осуществляется во время игры по необходимости. У этого режима основными недостатками являются работа только в Windows и кратковременные, но сильные подтормаживания, вызываемые пиковыми загрузками CPU под 100% во время компиляции шейдерных комбинаций.
r_ s hadersAsyncCompiling= 3
В релизной сборке игры должны быть отключены (задать нулевое значение).
Если включена компиляция шейдерного кэша на ходу, то движок не будет подгружать шейдерный кэш из global shader cache = shadercache.pak, shadercachestartup.pak и shadersbin.pak.
Применение Remote Shader Compiler.
Дистанционный компилятор шейдер ного кэша (Remote Shader Compiler) находится в CRYENGINE >\Tools\RemoteShaderCompiler и называется CrySCompileServer.exe.
Запросы на дистанционную компиляцию выполняются параллельно, поэтому чем больше ядер у сервера, тем лучше. Сервером может выступать в том числе локальная машина.
Настройка конфигурационного файла для Remote Shader Compiler.
Пример содержимого config.ini :
TempDir=C:\SHADER_CACHE
port=31455
PrintErrors=1
Описание :
Конфигурирование system.cfg для активации Remote Shader Compiler.
system.cfg должен быть в корне проекта/сборки игры.
Примечание: Для релизной сборки игры нужно будет подготовить system.cfg с такими параметрами, чтобы Remote Shader Compiler и компиляция шейдерного кэша на лету были выключены! Пример содержимого релизного system.cfg будет ближе к концу статьи.
Пример полного списка параметров system.cfg для работы с Remote Shader Compiler:
sys_game_folder=Assets
sys_dll_game=CryGameSDK
sys_localization_folder=languages
s_AudioImplName=CryAudioImplWwise
sys_spec=3
sys_no_crash_dialog=1
sys_vr_support = 0
log_IncludeTime=3
log_Verbosity=3
r_ShadersAsyncCompiling=3
r_ShadersRemoteCompiler=1
r_ShaderCompilerServer=192.168.1.3
r_ShaderCompilerPort=31455
r_ShadersAsyncMaxThreads=8
r_driver=DX11
r_ShadersDX11=1
— r_driver=GL
— r_ShadersGL4=1
r_ShadersUserFolder=1
r_ShadersSubmitRequestline=1
r_ShadersDurango=0
r_ShadersOrbis=0
r_multithreaded=0
Описание основных специфических параметров:
r_shadersAsyncActivation=1 — включить компиляцию шейдерного кэша на ходу.
r_ShadersAsyncCompiling=3 — метод асинхронной компиляции.
r_ShadersRemoteCompiler=1 — включить дистанционную компиляцию шейдерного кэша.
Если будет применяться несколько серверов дистанционных компиляторов, то прописывать их IP через точку с запятой без пробела: r_ShaderCompilerServer= ;
r_ShaderCompilerPort= — указать тот же порт, что и в config.ini. По умолчанию 31455 или 61453.
r_ShadersAsyncMaxThreads=8 — указать количество доступных потоков CPU для использования в расчётах.
r_driver=DX11 — ч тобы скомпилировать шейдеры под DX 11 (ShaderList_PC.txt).
r_ShadersDX11=1
r_driver=GL — ч тобы скомпилировать шейдеры под OpenGL (ShaderList_GL4.txt).
r_ShadersGL4=1
За раз может генерироваться только набор под одну выбранную платформу ( DX, OGL или под консоль). Платформа указывается в r_driver=
Осуществление компиляции.
Запускаем дистанционный компилятор шейдеров:
game >\Tools\RemoteShaderCompiler\CrySCompileServer.exe
После пробежки по уровням закрываем игру.
Шейдерный кэш сформирован.
Упаковка шейдерного кэша.
Теперь необходимо упаковать шейдерный кэш в shadercache.pak, shadercachestartup.pak и shadersbin.pak, чтобы применять шейдерный кэш в релизной сборке игры.
1. Основной способ с использованием PakShaders.bat.
Пример расположения PakShadersStart.bat:
С:\Programs\ The Cursed Forest \PakShadersStart.bat
Пример содержимого PakShadersStart.bat:
«С:\Programs\ The Cursed Forest \ Tools\ PakShaders.bat» d3d11
Примечание: Путь писать полностью и в кавычках! Кавычки для корректного чтения интерпретатором.
Примечание: При выполнении можно столкнуться с ограничением Windows на количество символов в путях и именах. В этом случае придётся копировать каталоги user \shaders и Tools в каталог ближе к корню раздела.
Пример: C:\ PakShaders \user \shaders и C:\ PakShaders \Tools \
Должно появиться окно командной строки:
По завершению в корне проекта/сборки игры появятся shadercache.pak, shadercachestartup.pak и shadersbin.pak, которые необходимо поместить в your game >\ engine\ с заменой, если ранее использовались стандартные наборы шейдерного кэша.
2. Альтернативный способ с использованием ShaderCacheGen.exe.
Этот способ более сложный, поэтому рекомендую его использовать только в крайнем случае.
Для компилирования g lobal shader cache понадобится список скомпилированных комбинаций шейдеров: \Tools\RemoteShaderCompiler\ Assets \ShaderList_PC.txt
ShaderList_PC.txt нужно скопировать в R oot g ame >\use r \ shaders и переименовать в shaderlist.txt.
Примечание: bat- файл должен находиться в корне проекта/игры!
Примечание: Использовать абсолютный (полный) путь и заключить его в кавычки! Кавычки нужны для корректного чтения интерпретатором.
П римечание: дистанционный компилятор шейдеров \Tools\RemoteShaderCompiler \ CrySCompileServer.exe должен быть включен!
Перед компиляцией комбинаций шейдеров через дистанционный компилятор шейдеров (Remote Shader Compiler) необходимо удалить старые паки с шейдерами из директории проекта/сборки игры, кроме shaders.pak:
Запустить созданный bat- файл. Должна начаться компиляция.
Некоторые шейдеры могут быть не скомпилированы, чтобы убедиться, что всё нормально необходимо использовать r_displayinfo=2 и смотреть значение параметра промахов Global Cache Misses (GCM).
Файл \Shaders\ShaderCacheMisses.txt должен быть пустой, что укажет на отсутствие промахов шейдеров = все шейдеры были взяты из шейдерного кэша и нет объектов, к которым не было загружено шейдера.
Бывает, что промахи есть, но не очевидно, как это устранить. Есть вероятность, что это очень незначительная комбинация и всё будет нормально без неё.
Ускорение времени загрузки: Steam поддерживает кэширование шейдеров
С последним обновлением клиента Steam компания Valve добавила новую функцию. Кэширование шейдеров (Shader cache) призвано снизить время загрузки игр, а также вероятность появления рывков и подергиваний в играх. Данная функция доступна для игр под Vulkan и OpenGL, она поддерживается под операционными системами Windows и Linux.
Функция кэширования шейдеров компилирует шейдеры, после чего сохраняет их в файловой системе. Таким образом, их не придется пересчитывать каждый раз при старте игры, шейдеры могут подгружаться из файлов. В результате время загрузки игры снизится. Впрочем, эффект будет заметен только при повторных запусках игры, поскольку при первом запуске шейдеры все равно будут компилироваться.
Но для работы данной функции требуется поддержка со стороны драйверов и видеокарты. Впрочем, все современные видеокарты AMD и NVIDIA, как и свежие драйверы поддерживают кэширование шейдеров. Некоторые старые видеокарты тоже имеют подобную поддержку, а именно GPU архитектуры AMD GCN или более новые, а также NVIDIA Kepler или более новые.
Пользователи клиента Steam, которым данная функция не нужна, могут отключить кэширование шейдеров в любое время. Но по умолчанию Valve активировала данную функцию из-за преимуществ.