Psychonauts для Ubuntu 12.04 не запускается

У меня проблемы с запуском 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, но эти решения тоже не сработали. Пожалуйста помоги?

2 ответа

Вы можете попробовать две вещи. Они могут не работать на 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= Команда, просто убедитесь, что добавили [пробел] перед путем

Я использовал ответ RAOF в качестве источника для команд, я только попытался сделать его конкретным для вашего вопроса, поэтому, если это сработает, пожалуйста, убедитесь в том, что он подтвердил свой ответ, чтобы дать ему некоторую оценку исходной информации.

Как я уже отмечал выше, у меня больше нет установленных Psychonauts, поэтому я больше не могу сравнивать ошибки, которые вы получаете, с теми, которые были у меня.
{РЕДАКТИРОВАТЬ} Я попытался установить через Центр программного обеспечения. Я смог запустить его без каких-либо проблем, так как файл.deb для версии i386 для библиотек был загружен как зависимость. Я отредактировал свой ответ выше, чтобы отразить это также. Мой графический чип все еще не был достаточно сильным, чтобы справиться с игрой, но я получал намного лучшую производительность, чем когда мне приходилось форсировать S3TC спектакль. Когда обе 64- и 32-битные библиотеки установлены, "силовая" часть моего ответа может быть ненужной, но я оставлю ее на месте, если она кому-нибудь понадобится.{EDIT}

Я только что испытал ту же проблему. Настраивается ярлык на рабочем столе Psychonauts 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, вот пара интересных статей:

Другие вопросы по тегам