Красноглазые утверждают, что линукс не популярен потому, что для него не выпускают игр. На самом деле ребята лукавят. Ведь даже с теми играми, что уже есть для линукса тоже не всё гладко.

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

В итоге у меня ушло несколько недель на отбор игр, которые будут нормально запускаться и работать в дистрибутиве. Так мало времени ушло у меня ещё потому, что я уже знал, что я ищу.

Ладно, это я. А ответьте – обычный человек будет копаться в тоннах неудобно читаемых и выговариваемых пакетов в поисках игры, а потом ещё устанавливать её и разбираться как же с нею совладать?
Не забудем и о том, что большинство игр на английском языке, что вообще поднимает планку их освоения в 2-3 раза.

Почему же с играми в линукс так всё плохо?
Современные игры для линукс выглядят такВы вообще когда-нибудь сравнивали игры, написанные для линукс и игры написанные для windows?

Почему виндовые игры на много функциональнее и предлагают вам не один вид тетриса, а три миллиона его вариаций?
Почему серьёзных проектов для Windows существует огромное количество, а всё, что смогли сделать программисты-линуксоиды это вариации давно устаревших игр на движках отданных в свободное плавание коммерческими компаниями за ненадобностью — это тот же Warzone, OpenArena и десятки её клонов с костылями, чтобы работало в линукс?

Всё просто — даже простую игрушку типа тетриса для линукса написать достаточно сложно.

Если в Windows есть такие быдло среды программирования по версии красноглазых как Delphi и Visual Basic — причём даже в бесплатных версиях, прекрасно документированные и имеющие огромное количество справочников, модулей и других дополнений, а благодаря изучению этих сред в школе даже школьник может написать вменяемое приложение для windows, то в линукс у вас вариантов для написания игр не много.

При разработке игры для линукс вы можете использовать GTK или QT, но в любом случае вам  необходимо знать C и его вариации. Ладно, C вы освоили, но теперь вам надо заставить вашу программу работать в линукс и тут начинается самое интересное. Где документация по этому самому линуксу? Как написать игру или программу для линукс? Да-да. За 20 лет великого шествия линукса по миру так и не было создано вменяемой документации по нему, а те, что были уже безнадёжно устарели, в принципе, учитывая, что разработка линукса и модулей не останавливается и постоянно переделывается, причём иногда очень радикально, то даже, если вы приобретёте какую-либо документацию по линукс, то с большой вероятностью она будет уже устаревшей.

Когда вы пишите игру для Windows вам не надо думать о том как работает операционная система, о зависимостях, пакетах и прочем — за вас делает всё это грамотно написанная ОС и среда разработки.

Всё дело в том, что WinAPI меняется не радикально, а скорее дополняется новыми возможностями, линукс же не имеет вообще понятия о каком-либо API, т. к. даже увещевания Торвальдса не смогли убедить разработчиков модулей линукса к какой-то стандартизации, а какая каша творится в самом ядре линукса от версии к версии специалисты могут рассказать лучше меня.

Когда вы разрабатываете игру для linux вам нужно учитывать какое ядро, какие пакеты есть в системе у пользователя, знать какое у него железо, совместима ли ваша игра с версией библиотек, а то может быть в их новой версии что-то изменили и она больше не совместима со старой, поэтому ваша игра не заработает.

Вы можете сделать игру базируясь на более-менее стабильных частях линукс, которые есть в каждом дистрибутиве, но всё равно в этом случае вам нужно будет изучать как работают эти части. Поэтому многие разработчики игр для линукс не один год потратили на изучение C и особенностей программирования для линукс и при этом у них всё равно не получается ничего больше тетриса.

Не забудем и про среды разработки. Так многие посетители моего сайта жаловались даже на то, что невозможно установить среды программирования в линукс без плясок с бубном, в результате чего теряется какое-либо желание писать программы для линукс.
Признаюсь честно, я ставил из репозитария только Lazarus и пробовал Windows версию QT —  и то и другое оставляет желать лучшего, хотя против Lazarus в Windows ничего не имею  — для написания мелких программок и утилиток или обучения школьников и студентов программированию она очень даже подойдёт.

Кроме того, маленькая доля пользователей линукс вынуждает разработчиков с целью привлечения новых пользователей, а следовательно и донаторов, писать кроссплатформенню игру, которая будет работать на windows, но и в этом случае не всем удаётся добиться успеха — из-за сложности разработки разработчик копается в коде программы и меньше уделяет времени дизайну игры, мультиязычности, игровому процессу, рекламе. В итоге рано или поздно он сливает какой-нибудь быдлоподелке на делфях или вижуал басике :)

Зайдите на любой сайт-каталог бесплатных windows игр — там сотни тетрисов, лайнсов, шахмат, шашек, поддавков, стрелялок, гоночек и т. п., список можно продолжать бесконечно.
В линукс же каждый жанр в лучшем случае будет представлен 1-2 стабильно работающими играми.

Если вы не мутили с игрой, а изначально разработали её грамотно, то она будет работать на всей линейке современных Windows, для линукса же вам придётся каждый раз пересобирать игру не только под каждый дистрибутив, но и для разных версий одного и того же дистрибутива — где логика?

Не так давно на Хабрахабре и СЛОРе очень живо обсуждали то, что компания Humble Frozenbyte предложила пользователям самим решить сколько стоит заплатить за игры и купить их. Так оказалось, что пользователи винды заплатили в среднем за игру около 4$, а пользователи линукс аж 11$.

Линуксоид, сколько сказали, столько и плати

Можно сейчас как слоровцы ухмыльнуться и сказать, что воооот, линуксоиды согласны платить за игры и много. Но предположу, что статистика вещь суровая. И любой, кто в ней разбирается, скажет вам, что кто-то мог заплатить и 100$, а кто-то 1$ и чем больше количество заплатившего народа тем меньше будет средняя цена, если будут преобладать мелкие платежи.
Но! Но всё оказалось на много прозаичнее! Версии игр для линукс распространяются через сайт linuxgamepublishing, а там сразу указана цена за игру — 10£. Вот и весь ответ на вопрос. Линуксоидам сказали плати 10 фунтов, они и заплатили. У некоторых игр были ещё продолжения и вторые части, у них уже указаны цены в 22£, но желающих отвалить 22 фунта было не много.
Не расстраивайтесь красноглазики, но кажется кого-то круто поимели :)

Опять же. У виндузятников есть огромный выбор, в том числе и бесплатных аналогов. Они могли вообще обойтись без этих игр или скачать бесплатный аналог.

А вот пользователям линукс выбирать не из чего.

Так это уже раскусили некоторые компании и уже появляются старые игры переписанные для запуска в линукс. У виндузятников эти игры не вызывают интереса и стоят дешевле, но у линуксоидов выбор ограничен, поэтому можно с них выжать некоторую дополнительную прибыль за устаревшую игру. Я надеюсь, что прибыль всё-таки больше, чем затраты на портирование в линукс, т. к. торренты уже завалены варезными линукс-версиями этих игр.

На данный момент я использую линукс как печатную машинку на своём ноутбуке, который специально купил без Windows, чтобы на него поставить свой дистрибутив. Именно из-за того, что мне понадобился дистрибутив, который бы смог работать с ноутбуком, я и сделал больший упор в новых сборках Jeder Linux на поддержку всех аппаратных средств современных ноутов, особенно тех, которые основаны на платформе Intel Atom.

И вроде бы я мыслил как обычный красноглазик — вот поставлю себе на ноут линукс, буду тупо тексты печатать, да в инет лазить — линукс же для этого уже вполне готов!
Но видя рядом стоящий такой же ноут с Windows 7 Starter, на котором и в стратежку можно поиграть и пару фрагов подстрелить, на меня начало находить уныние, что быть печатной машинкой и браузером от современного ноутбука это мало. К тому же зачем было покупать такой мощный ноутбук, чтобы использовать лишь 10% от его возможностей?

Успехов по запуску windows игр было мало из-за того, что видеокарты в ноутах на платформе Atom — X950-X3150 не поддерживают 3D в WINE полностью.

Я решил скачать одну из игрушек от Humble Frozenbyte — Shadowgrounds с официального сайта, но сразу же после скачивания обнаружил, что скачалась windows-версия, хотя я зашёл из-под линукса и на сайте игры была только одна ссылка Download. Я поискал по сайту игры и нашёл в новостях за 2009 год ссылку на версию для линукс, которая вела на сайт linuxgamepublishing и скачал игру оттуда. По такой мелочи сразу видно как разработчики игры заботятся о линуксоидах  0-)

Но, надеюсь вы уже догадываетесь, что это было только начало  :-D

Я запустил run пакет в котором была линукс-версия.
В командной строке я увидел, что игра ругается на отсутствие libcanberra-gtk-module.so и предлагает мне установить какое-то непонятное ПО в придачу.

Программы$ sh ./shadowgrounds-demo.run
Verifying archive integrity… All good.
Uncompressing Shadowgrounds DEMO………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………..
LGP Update Tool not found, running installation program

Gtk-WARNING **: Failed to load module “libcanberra-gtk-module.so”: libcanberra-gtk-module.so:
невозможно открыть разделяемый объектный файл: Нет такого файла или каталога
Continuing with install …
LGP Uninstall Tool not found, running installation program

Затем появилось окно с непонятными козябрами, я закрыл его, оно снова вылезло, я опять его закрыл и увидел уже на нормальном русском языке окно с предложением установить игру.

И что я устанавливаю?

Я нажал кнопку Begin install, хотя здравый смысл, который оберегает меня от установки всякого неизвестного ПО в винде во всю кричал, что делать этого не надо, дождался окончания установки и запустил игру.
Но…ничего не произошло, игра не заработала.

Установка завершена, первая миссия пройдена

Больше всего порадовала строчка запустить файл shadowgrounds_demo, при том, что файл, запускающий игру назвается shadowgrounds-bin. Мелочь, но говорит о многом.

Ладно. Кажется игра ругалась на какой-то там файл. Давайте доустановим его из Synaptic. Вхожу в Synaptic, опа! Оказывается этот пакет у меня уже установлен. В чём тогда проблема?

Пробую запустить игру из командной строки:

shadowgrounds-demo$ sh ./launcher-bin
./launcher-bin: 1: Syntax error: word unexpected (expecting “)”)
shadowgrounds-demo$ sh ./shadowgrounds-bin
./shadowgrounds-bin: 1: Syntax error: “(” unexpected

Я запустил процесс установки игры заново и установил невнятную программу, которая выдавала окно с козябрами, но игра всё-равно не заработала.

Короче, кажется, я поиграл. Даже не собираюсь разбираться в чём дело, а тем более платить 11 баксов или фунтов за то, чтобы потом ещё плясать с бубном как же эту ерунду запустить.

Ладно. У меня же есть виндовая версия, ставлю, запускаю через WINE — белый экран, звук есть. Ну ещё бы. У игры же всё видео в WMV формате, причём что для линукса, что для винды. Но в виндовой хотя бы звук есть.

Знаете что? Да, в канаву всё это! Я играть хочу, или запустить игру это уже какой-то квест? Так я квесты не люблю, мне больше шутеры нравятся, где максимум что нужно — мозжечком думать, я же отдыхать за игрой собрался, а мозгами я на работе работаю.

Кстати, удалить игру файлом uninstall не получилось:
Could not open product information for -L

Пришлось просто удалить папку с игрой.

Не пошли и некоторые из чудес линуксигростроения типа Nexuiz, Xonotic, Team Combat и ещё огромный список игр, причём не шли они на разных дистрибутивах и разном железе, что как бы нам намекает :)

Хорошо, решил я. Пусть виндовые игры в линукс не работают, но вот есть же огромное количество браузерных игр, а что если? Уж через браузер-то!

И вот я начал искать браузерные игры.
Но не тут-то было. Помните известное высказывание, что в линуксе Flash воспринимается как аналог слова геморрой? Вот-вот. Если небольшую короткую игрушку браузер и линукс ещё могут потянуть, то онлайн-игры, которые в большинстве случаев написаны с использованием технологии Flash начинают виснуть и тормозить через 15 минут игры.
Два часа я искал игру, в которую бы смог нормально поиграть, но таких не было. И вот уже почти отчаявшись я зашёл на свой сайт и увидел, что у меня рекламируется браузерная игра.
Я вбил в Google её название и прочитал системные требования. Очень меня удивило, что в описании игры было написано, что ей нужна Java Runtime Enviroment. Это звучало обнадёживающе, ведь по заверению красноглазиков Java как раз не геморрой на линуксе. Тем более, что сами разработчики игры написали, что игруха работает и в винде и в линукс и даже в маке!
Что же, Java у меня уже установлена.

Окей. Кажется нам повезло! Регаемся и нажимаем «играть»!

Что играем? А фига с два!
С чего-то Опера запросила с меня плагин JRE и попросила его скачать. Блин! Но он же установлен у меня! Я запускаю Firefox — такая же фигя, запускаю Chrome — тоже самое. Думаю, что у меня что-то не то и качаю браузеры из репозитариев Убунты, но всё равно та же картина — установите JRE.

На часах 23 вечера.
Я начинаю отчаянно гуглить. Оказывается, чтобы использовать JRE, которую я выкладываю на диске 2 к своему дистрибутиву надо всем программам сказать о том, что у вас установлена JRE.

Хорошо, я знаю как это сделать в OpenOffice, а как в браузерах?
Я гуглю как сказать браузерам об этом, я отчаянно выполняю все красноглазые монструозные команды в консоли, но браузеры в упор не видят никакой java.

Двенадцать ночи.
Пробую воспользоваться инструкциями из других дистрибутивов, но и они не помогают.

В поисках проходит ещё два часа. Я устал, желание играть пропало. Я иду спать. Короче, я ниасилил  :niasilil:

Игры в линукс - это так веселоСледующий день.
Я выкидываю все мысли о поисках инструкций в интернете и начинаю изучать все меню, подменю и настройки в браузерах.
Через 20 минут я нахожу [как подключить JRE в Opera]. Так долго искал благодаря кривому переводу Оперы, но всё же нашёл.
Через 30 минут мучений, я [подключаю JRE в Firefox].
Как включить JRE в Chrome и Chromium уже искать не стал. Надоело. Хочу играть.

Оказалось, что поиграть в браузерку тоже проблема.

Обычный человек бы не стал разбираться с такой кучей проблем, а устаревшая документация тем более не подняла бы авторитет линукса в его глазах. В связи с этим отправляю лучи ненависти разработчикам JRE, Opera, Firefox, Chromium и линукс за устаревшую документацию и кривость работы. Кто из них виноват не хочу разбираться, я тупо хотел поиграть, а не вписывать в консоль мегакрутые команды и подключать жабу  :redeye:   Нет претензий только к ребятам, которые сделали игру, в которую я теперь наконец-то играю из линукса.

Итак, шёл 20-й год победоносного шествия линукс по миру, но почему-то даже попытка поиграть в нём в быдлоподелку превращается в незабываемое красноглазие, что бесспорно подтверждает, что линукс готов к использованию на десктопах :D и хотя не один я проделывал такие квесты по запуску игр в линукс, красноглазые всё равно скажут, что я всё наврал и просто ниасилил :)