Недавно в связи с официальным запуском Steam на платформе Linux вышел Counter-Strike:Source. Для владельцев ноутбуков с технологией Optimus и установленным Bumblebee , а также проприетарным драйвером nvidia я хочу предложить скрипт запуска игры с видеокартой nvidia.
Все действия производились на Linux Mint 14 Nadya. Но не бойтесь, если вы пользуетесь чем-то другим. Для других дистрибутивов линукса все будет абсолютно аналогично.
Для начала идем по пути /home/<имя>/.steam/steam/SteamApps/<имя_аккаунта>/Counter-Strike Source и создаем там новый файл и называем его, например, css.sh открываем его любым текстовым редактором и вставляем в него вот что:
GAMEROOT=$(cd “${0%/*}” && echo $PWD)
STEAMPATH=$(readlink ~/.steampath)
export LD_LIBRARY_PATH=”${GAMEROOT}”/bin:$LD_LIBRARY_PATH
if [ ! -z ${STEAMPATH} ]; then
export LD_LIBRARY_PATH=”$(dirname ${STEAMPATH})”:$LD_LIBRARY_PATH
fi
ulimit -n 2048
export __GL_THREADED_OPTIMIZATIONS=1
cd “$GAMEROOT”
if [ ! -f steam_appid.txt ]; then
echo “240” > steam_appid.txt
fi
LANG=C LD_LIBRARY_PATH=~/Steam/ubuntu12_32:$LD_LIBRARY_PATH optirun ./hl2_linux -game cstrike -steam “$@”
Сохраняем. Делаем файл исполняемым
chmod +x css.sh
После чего запускаем его и жмем “открыть в терминале”. Можете запустить его и из терминала. Для этого открываем терминал, переходим в папку с игрой, набрав
cd /home/xroft/.steam/steam/SteamApps/xroft2011/Counter-Strike\ Source/
Запускаем Steam, и только после этого запускаем наш скрипт, набрав
./css.sh
Игра запускается с картой nvidia. Все пути библиотечек прописаны в скрипте. Играем и радуемся!
Как вы заметили, после ./hl2_linux идут параметры запуска игры. туда вы можете прописать свои параметры, какие вам захочется! 240 – это id игры Counter-Strike: Source.
Данный скрипт актуален для всех Source-игр от Valve, которые выходят (или будут выходить) под Linux. ID всех игр от Valve вы можете посмотреть здесь
До полноценной автоматической работы Optimus в Linux еще далеко, но ходят слухи, что Nvidia разрабатывает новую версию драйвера с поддержкой технологии Optimus. Но пока что необходимо использовать проприетарный драйвер из репозиториев. Steam зам должен предложить пользователю добавить репозиторий x-swat для возможности обновления драйвера видеокарты nvidia.
не пашет скрипт, пишет
xommos@xommos-pc:~/.steam/steam/SteamApps/common/Counter-Strike Source$ ./css.sh
./css.sh: line 1: cd: «.»: No such file or directory
./css.sh: line 9: cd: «»: No such file or directory
SDL video target is ‘x11’
SDL video target is ‘x11’
SDL failed to create GL compatibility profile (whichProfile=0)!
This system supports the OpenGL extension GL_EXT_framebuffer_object.
This system supports the OpenGL extension GL_EXT_framebuffer_blit.
This system supports the OpenGL extension GL_EXT_framebuffer_multisample.
This system DOES NOT support the OpenGL extension GL_APPLE_fence.
This system supports the OpenGL extension GL_NV_fence.
This system supports the OpenGL extension GL_ARB_sync.
This system supports the OpenGL extension GL_EXT_draw_buffers2.
This system supports the OpenGL extension GL_EXT_bindable_uniform.
This system DOES NOT support the OpenGL extension GL_APPLE_flush_buffer_range.
This system supports the OpenGL extension GL_ARB_map_buffer_range.
This system supports the OpenGL extension GL_ARB_vertex_buffer_object.
This system supports the OpenGL extension GL_ARB_occlusion_query.
This system DOES NOT support the OpenGL extension GL_APPLE_texture_range.
This system DOES NOT support the OpenGL extension GL_APPLE_client_storage.
This system DOES NOT support the OpenGL extension GL_ARB_uniform_buffer.
This system supports the OpenGL extension GL_ARB_vertex_array_bgra.
This system supports the OpenGL extension GL_EXT_vertex_array_bgra.
This system supports the OpenGL extension GL_ARB_framebuffer_object.
This system DOES NOT support the OpenGL extension GL_GREMEDY_string_marker.
This system DOES NOT support the OpenGL extension GL_ARB_debug_output.
This system supports the OpenGL extension GL_EXT_direct_state_access.
This system DOES NOT support the OpenGL extension GL_NV_bindless_texture.
This system DOES NOT support the OpenGL extension GL_AMD_pinned_memory.
This system DOES NOT support the OpenGL extension GL_EXT_framebuffer_multisample_blit_scaled.
This system supports the OpenGL extension GL_EXT_texture_sRGB_decode.
This system supports the OpenGL extension GL_NVX_gpu_memory_info.
This system DOES NOT support the OpenGL extension GL_ATI_meminfo.
This system supports the OpenGL extension GL_EXT_texture_compression_s3tc.
This system supports the OpenGL extension GL_EXT_texture_compression_dxt1.
This system DOES NOT support the OpenGL extension GL_ANGLE_texture_compression_dxt3.
This system DOES NOT support the OpenGL extension GL_ANGLE_texture_compression_dxt5.
This system DOES NOT support the OpenGL extension GLX_EXT_swap_control_tear.
GL_NV_bindless_texture: DISABLED
GL_AMD_pinned_memory: DISABLED
GL_EXT_texture_sRGB_decode: AVAILABLE
[VGL] NOTICE: Pixel format of 2D X server does not match pixel format of
[VGL] Pbuffer. Disabling PBO readback.
AppFramework : Unable to load module vguimatsurface.so!
Unable to load interface VGUI_Surface030 from vguimatsurface.so
xommos@xommos-pc:~/.steam/steam/SteamApps/common/Counter-Strike Source$ gedit css.sh
в общем этот скрипт не нужен, достаточно в самом стиме тыкнув правой клавишей мыши на игре выбрать properties и выбрать set launch options и указать optirun -b primus %command% и снять галочку enable steam coommunity in- game
я видел, у меня не получалось запустить таким образом… сейчас контру с картой nvidia не запускаю, хватает интеловской! запускаю просто даблкликом на названии игры в библиотеке