Перспективы игровой индустрии

velkin velkin
В отличие от привычных обзоров новинок оборудования будет использоваться очень старое железо. Логика в этом есть, так как минимальные требования в играх обычно как раз Intel Pentium 4 3GHz или даже раза в два выше. Чем хуже процессор, тем хуже совместимость с играми и всякими стимами, и тем лучше тест на пригодность полученной системы для людей с образованием кухарки.

Текущее оборудование:
Материнская плата: Asus P5AD2-E Premium
Процессор: Intel Pentium 4 CPU 3.00GHz
Системная память: DDR2 3GiB
Видеокарта: NVIDIA GeForce GTX 660 Ti 2MiB 1344 Cores


Проверка операционной системы:
uname -a
Linux security 3.13.0-49-generic #83-Ubuntu SMP Fri Apr 10 20:14:51 UTC 2015 i686 i686 i686 GNU/Linux


И ещё так:
lsb_release -a
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.2 LTS
Release:        14.04
Codename:       trusty


Процессор более чем десятилетней давности, потому не помешала бы проверка на совместимость.
lscpu
Архитектура:i686
CPU op-mode(s): 32-bit, 64-bit


Проверяем архитектуру репозиториев:
sudo dpkg --print-architecture
i386


Добавляем на всякий случай архитектуру amd64 для Steam:
sudo dpkg --add-architecture amd64
sudo apt-get update
sudo apt-get upgrade


Если бы была установлена архитектура amd64 пришлось бы добавить i386 для Wine и так было бы лучше для совместимости. С другой стороны текущая ситуация с мультиархитектурой полезнее в плане проверки работоспособности при неблагоприятных обстоятельствах.

Смотрим на дополнительную архитектуру:
sudo dpkg --print-foreign-architectures
amd64


Устанавливаем и настраиваем Steam и Wine.

Установка Steam выглядит примерно так:
sudo dpkg -i ./steam_latest.deb


Установка Wine потыкать кнопочки в Muon. Впрочем все эти консольные команды не особо и нужны, тем более сам пользуюсь в основном gui. Именно из-за таких людей как я, которые ещё с эпохи Windows насквозь избалованы графическими интерфейсами, но зачем-то на форумах пишут консольные команды, возникает образ GNU/Linux в виде чёрной консоли. Да, продолжаем верить в это и дальше, всё делается именно так из командной строки.

На джойстики можно посмотреть так:
jstest-gtk

или
Пуск=>Настройка=>Параметры cистемы=>Устройства ввода=>Джойстик

Хотя у меня есть беспроводные программируемые мыши, джойстики, руль с обратной связью, и прочее игровое оборудование, в данном случае для тестов буду использовать геймпад Logitech F710.

http://gaming.logitech.com/assets/47831/f710-gaming-gamepad-images.png

Сзади у него есть переключатель DInput и XInput обозначенный буковками D и X. Поскольку опыты идут со старым железом поставлю D. В самом линуксе он определяется без проблем, но не стоит забывать, что я собираюсь тестировать не только портированные игры стима, но и нагло установленные с помощью Wine.

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

Самое интересное, что после установки всех компонентов в играх запускаемых через Wine отвалился джойстик, просто перестал определяться. Причём в настройках линукс он по прежнему определяется нормально.

Посмотреть джойстики в Wine можно так:
wine control

или открыв тоже самое с помощью q4wine
Пуск=>q4wine=>Default=>System=>control

Вылечил проблему практически сразу же перейдя в:
Пуск=>Wine=>Настройка Wine=>Библиотеки

И сменив dinput8 со «сторонняя», на «встроенная, сторонняя».
http://files.rsdn.org/99832/dinput8.png

А устанавливать нужно не мало, ещё одна инструкция на эту тему (Пуск=>Wine=>Winetricks):

d3dx9, d3dx9_26, d3dx9_28, d3dx9_31, d3dx9_35, d3dx9_36, d3dx9_42, d3dx10, d3dx11_42, d3dx11_43, d3dxof, devenum, dinput8, dirac, directmusic, directplay, directx9, dmsynth, dotnet11, dotnet20, dotnet30, dxdiagn, gecko110, gecko120, gfw, mfc40, mfc42, msasn1, msxml6, physx, quartz, vcrun2003, vcrun2005, vcrun2008, vcrun6, vcrun6sp6, wmp10, wsh56vb, wsh57, xact, xact_jun2010, xinput, adobeair


Плюс настройка, которая ещё неизвестно сколько держится:
ddr=opengl 
dsoundhw=Full 
glsl=enabled 
multisampling=enabled 
mwo=enabled 
nocrashdialog 
orm=fbo 
psm=enabled 
rtlm=auto 
sound=alsa 
vsm=hardware


А теперь переходим к сути. Что касается игр для Windows, то их достаточно просто установить из инсталлятора. Разве, что потом через Пуск=>Wine=>Настройка Wine=>Приложения назначить им версию, Windows XP, Windows 7, Windows 8 и так далее.

Игры из Steam можно скачать и запустить из самой оболочки Пуск=>Игры=>Steam, или если позволить им создать ярлык, тогда Пуск=>Игры=>«Название игры». Что интересно Steam так же имеет интерактивную оболочку в которой можно легко управлять действиями тем же геймпадом. А это уже аналог пульта, тем более беспроводные устройства от Logitech, такие как мыши, клавиатуры, геймпады и прочие, легко берут сигнал из другой комнаты.

http://files.rsdn.org/99832/steam.png

Для начала у меня есть Borderlands 2, между прочим сейчас стоит в стиме 999 рублей, портирована на Windows, Linux и Mac OS X. Сразу скажу, что я её не покупал, талон лежал в коробке к видеокарте. Ради интереса активировал игру через стим в Windows в 2012 году, но она там не работала, а разбираться почему было лень.

В игре поставил разрешение FullHD 1920x1080 и вывернул настройки на максимум, то есть 16x, High, Far и так далее, кроме Physx, он стоит на Low и изменить это нельзя. Как ни странно, но игра по прежнему работает, причём довольно шустро. Впрочем изначально от неё никто ничего и не ждал, тем более системные требования по процессору, а значит и IO гораздо выше, это же касается и оперативной памяти.

Borderlands 2 (999 руб.)
OS: SteamOS, Ubuntu 14.04 
Processor: Intel Core 2 Quad, AMD Phenom II X4 (2x2.4GHz)
Memory: 4 GB RAM 
Video Card: NVidia Geforce 260 (1GB)
Hard Disk Space: 13 GB


http://files.rsdn.org/99832/borderlands2.png

Следующую игра есть в стиме, для него и предназначена, но портирована лишь на Windows и Mac OS X. Портировать на Ubuntu, которая лишь одна из GNU/Linux тоже не сказать, чтобы особое достижение, но всё же Mac OS X есть, а Ubuntu нет. На лицо злой умысел, таким образом придётся запускать не лицезнию с помощью Wine.

Ричард Столлман о целях движения за свободное программирование

Советую вам не использовать пропагандистские термины, которыми проприетарные разработчики награждают участников обмена программами. Например, "пираты". Когда кто-то называет людей пиратами, что он имеет в виду на самом деле? Он подразумевает, что делиться программами так же плохо, как нападать на корабли! А это совершенно не так! Нападать на корабли — это очень, очень плохо, а меняться программами — хорошо! Когда меня спрашивают, что я думаю о пиратстве, я отвечаю, что нападать на корабли плохо. Когда меня спрашивают, что я думаю о музыкальном пиратстве, я отвечаю: "Судя по тому, что я читал в книгах, нападая на корабли, пираты пускают в ход ружья, а не музыкальные инструменты. Поэтому никакого музыкального пиратства не существует".


Blades of Time (499 руб.)
Minimum (Recommended)
OS: Windows XP (Windows 7)
Processor: Intel Pentium 4 2.6GHz or AMD 3500+ (Intel Core i5 or AMD Phenom)
Memory: 2 GB RAM 
Video Card: ATI Radeon x1300 256 MB or NVidia GeForce 7300 GS  (ATI Radeon 7750 or NVidia GTX 470)
Hard Disk Space: 3 GB


http://files.rsdn.org/99832/bladesoftime.png

На этом месте бы хотелось поговорить о стоимости программ. Традиционно считается, что на Windows можно заработать деньги, это можно сделать на Mac OS X, а на GNU/Linux нет. Мнение это мягко говоря странное, ведь если у человека скопилось множество компьютеров на сотни тысяч рублей, то что ему эти 500 рублей за игру. В конце концов это ведь не 300 тысяч рублей за какой-нибудь бесполезный автокад.

Даже самый казуальный 2D трешак часто делается для Windows only. В первую очередь от этого страдает сам производитель программного обеспечения, а выигрывает всегда Microsoft. Потому что софт надо делать кроссплатформенным, а не надеяться, что существует волшебная платформа с которой деньги текут рекой. Уже не одна фирма разрабатывающая игры для Windows просто перестала существовать.

Размышления Билл Гейтса о не лицензии

Билл Гейтс признавал, что не лицензия была не только злом, но и добром для Microsoft. Без него самые популярные продукты компании, Windows и Office, вряд ли смогли бы конкурировать в бедных и развивающихся странах со свободным программным обеспечением.
...
китайцы не платят за программное обеспечение. Но когда-нибудь они начнут платить. И раз уж они заимствуют, то пусть заимствуют наше. Они в каком-то смысле на него подсядут, и в следующем десятилетии мы придумаем, как на этом заработать


С древних времён шли споры о том, что лучше, DirectX или OpenGL. В настоящее время обсуждать подобное глупо, однозначно OpenGL лучше. Во-первых, он позволяет создавать кроссплатформенные игры, а во-вторых, возможности графики всё равно идут от железа. Запустил Unigine Valley Benchmark, FullHD 1920x1080 настройки по максимуму.

Чувствуется, что процессор десятилетней давности, впрочем как и материнская плата со слабым IO и оперативная память, слабое место этой системы. Всё это дело работает исключительно благодаря видеокарте. В качестве ультра в режиме Benchmark, то есть с постояной подгрузкой всего лишь 5 FPS, а в режиме свободной прогулки 9 FPS.

видео Unigine Valley Benchmark

По идее можно было бы провести тесты на каком-нибудь Intel Core i7, но так было бы не интересно. Начать хотя бы с того, что там и так понятно, что всё будет летать, это ощущается даже при многоядерной компиляции. Если указать «количество логических ядер + 1», то время компиляции уменьшается на «количество физических ядер».

А закончить можно тем, что существует множество сайтов специально на этом специализирующихся (overclockers, ixbt, hi-news, ferra, thg). Там всегда можно почитать хвалебные речи о новейшем железе, о том, что оно стало быстрее, выше, сильнее.

Кстати, о новейшем железе. Возможно у кого-то сложилось ощущение, что я рассуждаю о всяком трешаке, а реально крутых по графике игр для Linux никто не портировал. Давайте для примера возьмём Bioshock Infinite.

http://files.rsdn.org/99832/bioshockinfinite.png

В стим под Ubuntu его загружать не буду, а запускать не лицензию тоже не вижу смысла. У меня вообще нет желания играть в игры в этом обзоре, и в какие-либо игры в частности. Да и запустить игру под Wine это всё равно, что отобрать конфету у ребёнка. Wine Is Not an Emulator, потому торомозить там особо нечему, всё решает железо.

Но раз уж речь зашла об этом, тогда стоит сказать ещё пару слов об унылости игр. Некоторые говорят, что в игре важен сюжет. Но почему бы тогда не смотреть прохождения игр от RusGameTactics, KarnMagarn, TheBrainDit и прочих. Или взять для примера ММОРПГ, кто на самом деле готов делить свой сказочный игровой мир со всякой упоротой «школотой».

Далее речь пойдёт про глобальное надувательство пользователей смартфонов и планшетов. Взять для примера Raspberry Pi модели B на архитектуре arm (hard float). Да, он устарел, но на многое открыл глаза. Начать хотя бы с того, что кроссплатформенные игры на том же C++ легко на нём запустятся, их достаточно всего лишь перекомпилировать.

http://files.rsdn.org/99832/raspberry_pi.jpg

Смартфоны и планшеты в наше время имеют большую вычислительную мощь. Более того, их железо имеет совместимость с GNU/Linux, то есть принципиальную возможность запускать одну и ту же игру на процессорах с архитектурой x86, amd64, arm, sparc и прочих, а так же на операционных системах Windows, GNU/Linux, Mac OS X и так далее.

http://files.rsdn.org/99832/iphone5s_elite_gold_2.jpg

Но почему же в реальности этого не происходит. А потому, что каждый игрок залезает на рынок и пытается создать максимально несовместимое решение, при этом вытеснив конкурентов. Их имена на слуху, это Google (Android, Google Play), Apple (iOS, Apple Store) и Microsoft (Windows Phone).

И вот я читаю в интернете статьи, Apple предлагает снести Android и поставить iOS, а Google предлагает снести iOS и установить Android. «Карл у Клары украл кораллы, А Клара у Карла украла кларнет.». Почему бы в таком случае не поставить везде Debian, получить репозиторий из более чем 40 тысяч пакетов и в добавок скомпилировать туда игры с настольных компьютеров, так же как это делают для Steam.

И здесь мы опять попадаем в водоворот, который точно так же испытывали в своё время компьютеры с архитектурой x86, amd64 с ориентацией на Windows.

Столлман высказался про несвободные игры

Создатель GNU OS признал, что выход игр для GNU/Linux может сделать систему популярнее, однако сразу же заметил, что дело не в том, насколько популярна система, а в том, может ли она сделать пользователей свободными. А с точки зрения свободы, отметил Столлман, игры с DRM-защитой ничем не отличаются от любого другого несвободного ПО. Но если играть в них на GNU/Linux, то это нанесёт свободе пользователей меньше урона, чем если бы они использовали игры для Windows.


Впрочем пользователя смартфона или планшета радует уже то, что он может запустить на своём устройстве аналог тетриса или первой кваки. В игровой индустрии многолетний застой, частично проблему решили 3D сканеры. Больше не нужно моделировать, достаточно просто навести их на желаемый объект и дело в шляпе. Тоже самое касается технологии захвата движения.

Beyond: Two Souls — За кулисами

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

После ознакомления с его возможностями и взгляда на игры ААА класса возникает когнитивный диссонанс. Дело в том, что современная игровая индустрия при цене за разработку одной игры в несколько сотен миллионов долларов по прежнему выпускает трешак уровня первой кваки. Возможности видеокарт тоже используют довольно убого. Но это ладно, критиковать может каждый, сделать нет. «Я его слепила из того что было, а потом что было то и полюбила».

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