Как увеличить размер выделяемой видеопамяти игре/приложению?
Играю в старую игру разработчик которой .dat издателя Акелло не смог её нормально выпустить. Через несколько минут и разных сцен в игре переполняется объём видеопамяти, в игре пропадает фоновый звук и некоторые объекты теряют свою текстуру становясь чёрными, белыми, текст превращается местами в вид кракозябриков и игра вылетает; runlog выдаёт такие ошибки по типу
[EE] cant create texture: Resources\FX\FX_Resouces\Textures\fx_dome_fire_senkven.t
[WW] Can't create texture (1024 x 1024, levels: 1, usage: 0, format: 5, pool: 1 ) - E_OUTOFMEMORY
[ ] SoundService DirectX Error: 'E_OUTOFMEMORY'
Хотел бы узнать существуют ли какие-нибудь инструменты для изменения выделяемой видеопамяти играм приложениям или может есть определённые файлы где это можно изменить и если я начну их искать чего мне это будет стоить.
Скорее всего, проблема в коде этого приложения. Что-то вызывает утечку памяти.
В таком случае, сколько бы вы не выделили - все равно она закончится.
Возможно еще, проблема в версии директХ или драйвера видеокарты - возможно, в каких-то старых версиях этой проблемы не будет.
1) Надо попробовать успеть до того как "игра вылетит" собрать некоторые сведенья из ProcessMonitor. Что там видно? Какие показатели зашкаливают.
2) Если разработка идет на DirectX API, то возможно там есть какие-то средства профилирования
памяти. Сколько выделено? Что там лежит? Текстуры? Почему они не убираются например когда
не нужны?
старые игру гуглить надо, может кто сделал фикс, может официальны создатель выпустил фикс. Помню в некоторых старых играх даже приходилось анг ставить, чтобы пройти какой-то этап, так как на ru висла в рандомный момент какой-то уровень
Если утекает память, только править код, либо ставить безграничное количество памяти - последнее проблематично, законы физики против=)
Памяти выделяется приложение столько, сколько оно запросит. Если память есть - она выделится и всё будет работать дальше, если памяти нет - то система вернёт ошибку, что памяти нет и приложение уже пользователю покажет ошибку. Соответственно, решение очень простое - увеличить объем памяти. В случае видеокарты - заменой видеокарты.
chlenix, ну, в таком случае, здесь вероятно несовместимость игры, видеокарты, ОС, процессора или косяк в драйверах. Пробуйте более старую ОС, железо или даже ВМ, если игре пару десятилетий.