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

0

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

nufftenthousand
источник

Ответы:

1

Вы можете попробовать две вещи. Они могут не работать на 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}

TrailRider
источник
0

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

StanAngeloff
источник