У меня проблемы с запуском Psychonauts, из последней Humble Indie Bundle. Каждый раз, когда я пытаюсь его запустить, значок Launcher немного мигает, а затем ничего. Вот вывод, который я получаю:
STUBBED: fix up the rest of the SSE code first at DetectSSESupport (/home/icculus/projects/psychonauts/Source/CommonLibs/DFMath/MathGeneral.cpp:32)
STUBBED: write me? at SetPCLanguage (/home/icculus/projects/psychonauts/Source/game/luatest/UnixMain.cpp:120)
STUBBED: fix up the rest of the SSE code first at DetectCPUCaps (/home/icculus/projects/psychonauts/Source/game/luatest/Game/PCGameApp.cpp:223)
STUBBED: check LANG envr var at _GetDefaultGameLanguage (/home/icculus/projects/psychonauts/Source/game/luatest/Game/GameApp.cpp:171)
Console created
Save path: /home/duffy/.local/share/Psychonauts
Write path: WorkResource
STUBBED: inline asm at SSEMul_4x4_4x4_2arg (/home/icculus/projects/psychonauts/Source/CommonLibs/DFMath/Matrix.cpp:710)
STUBBED: inline asm at SSEMul_4x4_4x4_3arg (/home/icculus/projects/psychonauts/Source/CommonLibs/DFMath/Matrix.cpp:698)
******** unit test failed ********
Transport started
DaveD: NCListenSocket: Listening on port 40001
STUBBED: VK_* at InitInputNames (/home/icculus/projects/psychonauts/Source/CommonLibs/DirectX/SDLInput.cpp:1225)
No joysticks detected
SDL_SetVideoMode() failed: Couldn't find matching GLX visual
Start Up completed in 0.08 seconds
Segmentation fault (core dumped)
Я установил какой-то патч с 4 в версии ... Я не могу вспомнить. Это не помогло независимо. И я только что попробовал установить последние версии драйверов Nvidia для моей GeForce 7800 GT (не смейтесь). Не сработало
Я нашел несколько похожих вопросов на askubuntu, но эти решения тоже не сработали. Пожалуйста, помогите?
Вы можете попробовать две вещи. Они могут не работать на Nvidia, он работает на чипах Intel, даже если он не работает, это не повредит.
Сначала посмотрите, есть ли у вас необходимые библиотеки для сжатия текстур, необходимые для mesa
, самый простой способ - открыть Центр программного обеспечения и выполнить поиск;
libtxc-dxtn-s2tc0
Если у вас установлены Psychonauts на 64-битной системе. В системе также требуется версия этих библиотек для i386 (обратите внимание, что если вы установили Psychonauts с Центром программного обеспечения, то должна быть установлена версия i386 , но , но убедитесь, что убедитесь в этом).
libtxc-dxtn-s2tc0:i386
Если у вас нет ни одной из версий вышеупомянутых библиотек, установите их и попробуйте запустить снова (Примечание: если вы можете запустить Amnesia из комплекта, вероятно, что 64-битные библиотеки уже установлены) Если у вас они есть, или если после установки запуск по-прежнему завершается неудачно:
Вы можете попытаться заставить систему объявить о поддержке S3TC (это было необходимо для чипов Intel без установленной версии i386 libs) путем запуска через терминал. с:
force_s3tc_enable=true <path to application launcher>
Принудительное использование S3TC может вызвать неправильное поведение , поэтому вам придется попробовать его и посмотреть, сработает ли он. Если приведенная выше команда работает, вы можете отредактировать файл .desktop
, чтобы запустить игру с включенной силой, используя gedit
sudo gedit /usr/share/applications/psychonauts.desktop
Отредактируйте строку Exec=
и добавьте force_s3tc_enable=true <plus a space>
перед путь запуска должен выглядеть примерно так: force_s3tc_enable=true /opt/psychonauts/psychonauts.64bin
Обратите внимание на пробел между true
и /opt
, далее отметим, что это только пример. У меня больше не установлены психонавты, так как моя графическая карта не была достаточно сильна, чтобы справиться с ней (но я все же работал с командой force
), поэтому на самом лаучере не могло быть .bin64
в самом конце, но вы должны точно знать, что это за путь, и вам нужно только вставить force_s3tc_enable=true
перед путем в команде Exec=
, просто добавьте [пробел] перед путем
Как я отмечал выше, у меня больше не установлены психонавты, поэтому я больше не могу сравнивать ошибки, которые вы получаете, с теми, что были у меня.
{РЕДАКТИРОВАТЬ} Я попытался установить через Центр программного обеспечения. Я смог запустить его без каких-либо проблем, так как файл .deb для версии i386 для библиотек был загружен как зависимость. Я отредактировал свой ответ выше, чтобы отразить это также. Мой графический чип все еще не был достаточно сильным, чтобы справляться с игрой, но я получал намного лучшую производительность, чем когда мне приходилось повышать производительность. С обоими 64 & amp; 32-битные библиотеки установили «силовую» часть моего ответа, но это может быть ненужным, но я оставлю его на месте, если он кому-нибудь понадобится. {EDIT}
psychonauts.sh
по умолчанию. Похоже, что файл Bash пытается сделать какой-то хитрый обходной путь, в основном для видеокарт Intel (включая встроенную графику). К сожалению, это мешает работе драйверов NVidia и вызывает ошибку сегментации. В моем случае я смог запустить игру, используя /opt/psychonauts/Psychonauts
напрямую (примечание заглавная P
и нет .sh
). Я также запускаю Bumblebee , поэтому в моем случае полная команда:
$ optirun /opt/psychonauts/Psychonauts
Если это не работает для вас, попробуйте обновить переменную среды LD_LIBRARY_PATH
, чтобы она указывала на файлы драйвера NVidia, например, так:
$ LD_LIBRARY_PATH=/usr/lib32/nvidia-current [optirun] /opt/psychonauts/Psychonauts
optirun
не является обязательным, и вы должны включать его, только если вы работаете в конфигурации Optimus с дискретной видеокартой.
Если вы хотите узнать больше о переменных, включенных в файл Bash, вот пара интересных статей: