Есть ли шанс у Гейба перенести все игры на Linux?


Привет! Как вы думаете, может ли Гейб повлиять на нынешних разработчиков? Могут ли они переписать игру специально под Linux? А, быть может, под Linux через некоторое время будут выходит эксклюзивы от Valve и не только? Windows или Linux? Или все останется на том же уровне, на котором остается Mac OS X?



Я думаю шансов уже у Гейба нету, одна маленькая Валв против Windows... Максимум что они могут это повлиять как нибудь на более мелких инди разработчиков, хотя и инди разработчики стремятся туда где больше всего потребителей, а это в данном случае Windows.
Будут какие-нибудь инди выходить, не больше.
Все игры Valve и львиная доля инди-игр всё-таки выйдут на Linux. А вот что касается игр других издателей - не все, далеко не все.
Или все останется на том же уровне, на котором остается Mac OS X?

D':
виртуальную машину отменили ?
Ну если только халфу 3 на линукс выпустят, хотя врят ли
Nikolai_Prizrak
врят ли выпустят вообще?)
Если будут эксклюзивы, придется второй осью поставить. Но я не верю, что они станут так рисковать.
Перспективы у линукса появятся только если windows 9-10 полностью провалятся.
"Есть ли шанс у Гейба перенести все игры на Linux?"
за большие деньги возможно и не такое, только кому это надо?
Зависит от будущего отношения Майкрософт к игровому миру и потребителям в целом.
- Намекаю ;)
Портированию на Linux игр препятствуют несколько проблем.

1). Нет универсального способа сделать это, программисты каждой компании портируют свои игры на Linux, разбираясь самостоятельно. Поэтому 80% коммерческих игр портирует один человек, Icculus. Он портировал почти все игры из Humble Bundle (около ста, если вычесть Flash-игры).

2). В /usr/lib разных версий одного и того же дистрибутива Linux частично или полностью меняются системные библиотеки. Точнее, они не меняются, но меняются их имена. libgnutls.so.26 становится libgnutls.so.35, libssl.so.0.9.8 становится libssl.so.1.0.0, libpng14.so.14 становится libpng17.so.17, и так далее. Открытому коду на это начихать, на то он и открытый. В репозиториях дистрибутива Linux все 30 000 программ компилируются со всеми изменившимися библиотеками заново при выходе нового релиза. А вот закрктый код от этого некомфортно использовать: при щелчке мыши ничего не происходит, при запуске из консоли мы видим список недостающих библиотек. И ладно бы их вообще не было в системе - нет, они есть, но обновились.

Valve решила эту проблему так: "мы будем компилировать софт только под какой-нибудь один дистрибутив линукса, например Ubuntu, потому что он самый популярный". Но оказалось что совместимости бинарников нет не только между разными дистрибутивами Linux, но и между разными версиями одного дистрибутива! Так что им пришлось городить Steam Runtime, который занимает 150 Мб и при каждом незначительном обновлении скачивается заново... Криво, но всё-таки решили проблему.

Новые игры будут пользоваться Steam Runtime, и тоже неплохо будет. Как решалась эта проблема в старых играх, которые ещё кучу лет назад портировал Icculus, и которые в новых линуксах спокойно работают. Он брал библиотеки из стандарта LSB, а не последние версии этих библиотек, а чего там нет, клал прямо в архив с игрой. Таким образом игра таскает с собой 15 Мб библиотек вместо 150, как Steam. То есть получается что в разных линуксах всё-таки есть одинаковые библиотеки, и это называется LSB. Открытый код компилируется с новыми системными библиотеками, а проприетарный - только со стандартными. Почему Valve поступили не так - не знаю. Может, для них стандарт 2007 года - слишком старый стандарт, и затруднял им программирование? Может для них это как IE6 для веб-дизайнера?

3). Ну да ладно, библиотеки можно найти на pkgs.org и подставить к программе, если не запускается. Есть другая проблема, GLIBC. LSB обязывает компилировать все программы с GLIBC 2.5, и тогда во всех линуксах 2007 года и новее программа будет работать. Steam скомпилирован с GLIBC 2.15. То есть Steam требует GLIBC новее, чем 99% игр под ним. Эпично. Все же прочие библиотеки, включая C++ (libstdc++.so.6) можно таскать в архиве с игрой, как я и говорил.

4). Звук! Пришёл сволочь Леннарт Поттеринг и сломал в линуксе звук. PulseAudio ненужное ненужно! Если бы не Поттеринг и пропихивающая его поделие Red Hat, то Steam бы сейчас поддерживал ровно одну звуковую систему: ALSA. Как и разработчики всех игр. Но нет же! Теперь зоопарк.

5). Драйверы ати всё ещё глючат.

6). Движок большинства игр на Direct3D, а на линуксе OpenGL. Но если есть порт на Mac OS X или Android, то этой проблемы не стоит.

7). Почти все игры используют какие-нибудь библиотеки, упрощающие написание игры. OpenAL для звука в 3D-играх, SDL для вывода и ввода. Ну так вот, SDL это дело чоень упрощает и потому пользуется популярностью. Не поддерживает OpenGL 3 и 4 (аналоги Direct3D 10 и 11), многомониторные конфигурации, Force Feedback у джойстиков, и много чего ещё. Steam использует бета-версию SDL 2, где всё исправят.
Учитывая то, что сейчас творит proton, перенос игр с окон на Линукс очень возможно, главное чтобы еще поддержку драйверов можно было включить, тогда все будет просто прекрасно
Авторизуйтесь, чтобы принять участие в обсуждении.