LINUX.ORG.RU

Интервью с креативным директором Gaijin Entertainment

 gajin, , ,


1

4

На одном из ютуб-каналов вышло интервью с креативным директором Gaijin Entertainment Кириллом Юдинцевым.

Спросили о том, зачем выпускалась Linux-версия игры, с какими проблемами столкнулись при выпуске, также поговорили о поддержке Linux, Wine и Vulkan.

>>> Видео



Проверено: Shaman007 ()
Последнее исправление: cetjs2 (всего исправлений: 6)

Ответ на: комментарий от Radius

> Проприетарный драйвер интел? Вот это он дал маху

Ну а ты попробуй сам говорить полчаса без сценария. И это ещё наверное не вошло в видео многое, и тогда не полчаса, а час или два

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

Скорее всего там написана своя API прослойка не зависящая от версии libudev. При открытии проверяется версия и выбирается нужная реализация взаимодействия с нижележащей библиотекой. А сам код приложения работает с этим домашним API.

anonymous
()
Ответ на: комментарий от ZenitharChampion

А такую штуку, как линковка dlopen() я «не осилил». Например для меня магия, как Google Chrome умеет и libudev.so.0, и libudev.so.1, ведь в системе всегда только одна из этих либ.

Чего там осиливать - в man dlopen пример кода

annulen ★★★★★
()
Ответ на: комментарий от genryRar

чумазые это скучно

Ну и сиди как дурак без вертолётов.

no-such-file ★★★★★
()
Ответ на: комментарий от hotpil

Тяжело поддерживать зоопарк - ну так поддерживайте только Debian

Они и так «рекомендуют» ubuntu с nvidia блобом. Все багрепорты по поводу других конфигураций посылаются на юх. Проблема у них с opengl рендером который одинаково хреново работает везде, в т.ч. на оффтопике. Причём что интересно, хоть как ты настройки выставляй fps не меняется.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)

Они не ориентируются в линуксах скорее всего. Флатпаки, например, нахер не нужны, можно и без них собрать как под венду с библиотеками в папочке ./lib и ставить всё в ~/games (как это и делают gog.com, например). Дальше виднеются уши шиндовс-стайл разработки с костылями вонючим говнокодингом, когда в драйвера пихают оптимизации для *конкретных* имён бинарников тупо грязным хаком и используют недокументированные особенности дров/api, вместо того, чтобы запилить патч для этих самых дров. Проперитасты короче.

crutch_master ★★★★★
()
Ответ на: комментарий от ZenitharChampion

Это *уевая идея. Обратной совместимости нет и по сути пользователь 18ой бубунты будет бета-тестить легаси код, который еще не факт что запустится. Такая же штука с ршелью, которая только в рамках выпуска поддерживает софт. (т.е. софт для 6ой или бог упаси 5ой, уже на 7ке не запустится)

anonymous
()
Ответ на: комментарий от no-such-file

Причём что интересно, хоть как ты настройки выставляй fps не меняется.

кстати да, есть такое. причем пол года назад этой проблемы я не наблюдал - играл почти на максималках (кроме облаков) и имел стабильные 60fps. а теперь вот снова поставил игрулю и на любых настройках (даже минималки пробовал) как только замес начинается - сразу падает до 30 (стабильно держится в 28-30). ощущение что происходит переключение всинка на режим «каждый второй кадр». но с выключенным всинком тоже самое, такчто просто выглядит очень похоже. вообщем улитки уже не те

genryRar ★★
()
Ответ на: комментарий от crutch_master

Они не ориентируются в линуксах скорее всего

Интервью с креативным директором

стопудово этот дирехтур - один из ЛОРовских онанимусов, судя по уровню повествования ...

sloan ★★
()

Этот безумный, безумный, безумный мир

kto_tama ★★★★★
()

Товарищ креативный директор сказал горькую правду: у Linux всё хорошо, пока нет звука, управления и видео.

DianneleGel
()
Ответ на: комментарий от anonymous

Скорее всего там написана своя API прослойка не зависящая от версии libudev

Я выполнял strings google-chrome | grep lib и там увидел несколько библиотек, которые опциональны и не обязательно должны быть в системе. ldd google-chrome их не показывает. Также очень интересный результат показывает натравливание strings на libflashplayer и libSDL. А ещё прикольно грепать слово «d3d» на играх, портированных через транслятор

Обратной совместимости нет

Есть

и по сути пользователь 18ой бубунты будет бета-тестить легаси код, который еще не факт что запустится

Драйвер NVIDIA, которым ты пользуешься в 18-й убунте, собран в RHEL 4 с ядром Linux 2.6.9 и Glibc 2.3. Sun Java 1.6 была собрана в SUSE 9.x. Catalyst 15.12 - в SUSE 11. Tor Browser - в Debian 7. Также ты можешь установить DEB-ку Gens 2.15.5 с офф. сайта, собранную в Debian 4, и она будет работать. А также кучу игр 1999 года (Loki Games) и Humble Bundle (2010-2015).

> Такая же штука с ршелью, которая только в рамках выпуска поддерживает софт. (т.е. софт для 6ой или бог упаси 5ой, уже на 7ке не запустится)

Как раз Red Hat и декларирует обратную совместимость с программами для предыдущих релизов своей ОС. И Red Hat тратит на это кучу денег и человеко-часов инженеров при написании системных компонентов.

Например ты собрал что-то для GTK 2.6 - в GTK 2.24 всё будет работать. Устаревшие возможности помечаются как устаревшие, но избавятся от них только в GTK 3.0.

ZenitharChampion ★★★★★
()
Последнее исправление: ZenitharChampion (всего исправлений: 1)
Ответ на: комментарий от ZenitharChampion

https://access.redhat.com/articles/54483

Ты немного не понимаешь. Можно запустить все в линуксе, но отлавливать баги и глитчи ты будешь сам. Есть большая разница между поддержкой платформы софтоиздателем и «я на арчлинукс всё запущу, дайте мне только грепнуть выхлоп». Собственно, играм нужно именно первое.

anonymous
()
Ответ на: комментарий от ZenitharChampion

Обратная совместимость есть только в либах типа либц (в оговоренных пределах), даже в libstdc++ её ещё поискать. Да, при этом, этих либ несколько вкусов существует ещё.

То, что блоб собран с glibc 15 летней давности, так это вполне себе исключительная ситуация и его проблемы, хватает наверное и спасибо что не статически. Вон в венде вообще glibc нет. Ориентироваться стоит только на текущее поколение lts.

anonymous
()
Ответ на: комментарий от crutch_master

В этом нет никакого смысла - так как пропатченная версия попадет ко всем пользователям через несколько лет, а заставлять пользователей обновлять версию до последней - то еще издевательство.

nwtour ★★
()
Ответ на: комментарий от ZenitharChampion

Например для меня магия, как Google Chrome умеет и libudev.so.0, и libudev.so.1, ведь в системе всегда только одна из этих либ.

Так наверняка есть же симлинк вида libudev.so, с которым компоновка, скорее всего, и идёт.

hobbit ★★★★★
()
Ответ на: комментарий от dikiy

Однако есть же куча игр вполне работает на всем этом зоопарке без каких-то проблем.

Вангую, что их собирают недобитые обладатели прямых рук.

hobbit ★★★★★
()
Ответ на: комментарий от hobbit

Это когда из исходником собираешь Chromium. А бинарная сборка Chrome умеет работать через любую из этих либ. Не ругаясь, что libudev.so.1 is not found in your system

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

Так он в самом начале это говорит. Значит именно это и планировал сказать. Я не спорю что он и так неплохо шарит, просто либо напутал с амд, либо у них там такие спецы кодерами работают (по опыту общения с поддержкой скорее второе).

Radius ★★★★
()
Ответ на: комментарий от genryRar

ну не в 6 утра но порой бывает в 3. но у меня и днем таже трабла, и по вечерам - если это не пятница или выходные. хз изза чего так. но мы с друганом вдвоем часто летаем - и проблема у обоих, даже если мы не в отряде. друган за советов, я в последнее время за французов

Это вполне логично, к ночи по большей части остаются одни задроты которые часами напролет что-то там выкачивают или выполняют какие-нить задрот-квесты. А чего там выкачивать и выполнять на 1 ранге?

про свистки слышал что там тоже плохо, но сам не играю - я слишком тормоз для таких быстрых сражений, мне вот на бипланчиках самое то))

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

Radius ★★★★
()
Ответ на: комментарий от Shulman

Реализация неплохая, но вот постоянно что-то ломается и отваливается с выходом новых версий. После чего ждешь от недели до месяца когда починят.

Поддержку видео я бы оценил на 4 (херовая производительность на открытых амд), звука на 3- (не работает многоканальный звук).

Radius ★★★★
()
Ответ на: комментарий от Radius

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

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

genryRar ★★
()
Ответ на: комментарий от Deleted

Сделайте бандл-версию со статикой и всё. В чем проблема?

На сколько я понял, его больше волновало разнообразие драйверов для видеокарт

incker
()

«креативным директором»

Вот ведь жопа.

когда уже по русски писать начнете?

А то ни русского ни англиского.

Borg
()
Ответ на: комментарий от oriko32

Фпс явно меньше будет,

Потыкал wine-3.16 + dxvk-0.8 Ну что сказать, fps выше чем в linux-клиенте. На средних+ настройках при 1440p получается 40fps на 1050ti. Мне сойдёт.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от nwtour

В этом нет никакого смысла - так как пропатченная версия попадет ко всем пользователям через несколько лет, а заставлять пользователей обновлять версию до последней - то еще издевательство.

В чём издевательство? Сделать apt-get update drivers? То, что у дистрибутивов политика как у дебиана значит, что принципиально нельзя обновлять софт типа дров/иксов/месы/вайна на свежий?

crutch_master ★★★★★
()
Ответ на: комментарий от Deleted

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

ss_ash ★★★
()
Ответ на: комментарий от Deleted

nvidia и amdgpu - никак не реализация OpenGL. У нвидии так вообще до сих пор нет поддержки OpenGL 4.

Quasar ★★★★★
()
Ответ на: комментарий от ss_ash

У тебя с головой всё не в порядке, раз ты про провал SteamOS что-то говоришь.

Quasar ★★★★★
()
Ответ на: комментарий от koshmar

под опенжлом игра ОДНОПОТОЧНАЯ

э... гуй по определению однопоточный. Любой. Это не изменится. Даже если в игре 50 потоков (что в общем бессмысленно на максимум 4-ядерных машинах, чаще меньше) они строятся в очередь к потоку обслуживающему гуй. Именно поэтому очень смешны были требования всяких Deus Ex Human Revolution к «минимум двухядерный процессор» — когда после патчей оно прекрасно пошло на одноядерном атлоне XP.

anonymous
()
Ответ на: комментарий от ZenitharChampion

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

Ой-вей, а в UE4-то не знали.

anonymous
()
Ответ на: комментарий от robus

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

wingear ★★★★
()
Ответ на: комментарий от anonymous

э... гуй по определению однопоточный. Любой. Это не изменится.

Что мешает поделить экран на области и на рендеринг каждой области выделить свой поток? Правильно ничто не мешает.

V1KT0P ★★
()
Ответ на: комментарий от V1KT0P

Что мешает поделить экран на области и на рендеринг каждой области выделить свой поток? Правильно ничто не мешает.

вот поэтому в линуксе и не может быть хороших вещей.

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

у вас, ребята, всегда наготове офигительные идеи, не так ли?

anonymous
()
Ответ на: комментарий от crutch_master

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

Ну и как ты будешь ждать месяц если вся игра может устареть за этот месяц..

nwtour ★★
()
Ответ на: комментарий от anonymous

Отдельные элементы — вполне. Так впрочем сейчас и делают. Но сцена будет компоноваться в 1 из потоков, что логично. Как раз этот композитор твой, который может картинку в другой композитор скармливать. Это повсеместно хорошо так 20+ лет, раньше спроса особого не было наверно. В 1 потоке просто ничего не работает, потому что оно будет блокировать исполнение всего остального и большинство операций очень медленные. На 1 ядре кстати тоже не будет работать большинство приложений. Тому що бутылочные горлышки кококо тут и видимо карту кормить, и логику считать, и физику и всё остальное надо.

anonymous
()
Ответ на: комментарий от anonymous

у вас, ребята, всегда наготове офигительные идеи, не так ли?

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

V1KT0P ★★
()
Ответ на: комментарий от nwtour

Да и хрен бы с ней, на венде же как-то работает с обновлениями раз в полгода и задержкой на 2 года где код не исправляется по 20 лет. ДАже работает несмотря на то что у большинства кодеки (декодеры) не стоят (точнее не работает). Это всё повод только поныть и показать себя идиотом.

anonymous
()
Ответ на: комментарий от anonymous

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

nwtour ★★
()
Ответ на: комментарий от anonymous

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

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

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

это происходит не потому что разработчики такие плохие люди редиски, а потому что расчёт физики и логики ограничен по времени, если игра не пошаговая (большинство современных игр). вопрос не в том можно ли распараллелить процесс, а в том как выполнить вычислительную задачу за 16,66 миллисекунд. если вопрос решается, то на экране получится 60 фпс.

об этом и говорится в видео по ссылке.

anonymous
()
Ответ на: комментарий от nwtour

В венде принято всё исправлять в драйверах (производителем железа конечно же), и если нет, в большинстве случаев другая опция только страдать. Только компании типа Вальв могут что-то делать и контрибутить (и то не слишком охотно и серьёзно). Ну и потом вот такое, да https://www.youtube.com/watch?v=ZcF36_qMd8M

anonymous
()
Ответ на: комментарий от anonymous

Только процесс, который всё это компонует, будет наименее ресурсоёмкий из всех. И если проблема в нём, то явно что-то пошло не так. Все меньшие задачи вычисляются раздельно на произвольном числе «считателей».

anonymous
()
Ответ на: комментарий от Quasar

А, не пробовал, я просто её не через стим ставил

Так-то она и просто через wine с dxvk вроде работает, но тоже не пробовал пока

Было бы конечно прикольней, если бы официальная поддержка была, так просто на отдельном компе с виндой гоняю

vitalif ★★★★★
()
Последнее исправление: vitalif (всего исправлений: 2)
Ответ на: комментарий от anonymous

создать фрейм который отобразится на экране. не посередине того как считается физика или логика, а после. физику нельзя посчитать до того как посчиталась логика и т.д.

Если сделать задержку отрисовки на один кадр то можно и кадр отрисовывать и физику считать одновременно. То-есть кадр отрисовывается с учетом предыдущей рассчитанной физикой и одновременно считается новая физика, сомневаюсь что найдется человек который на глаз заметит что физика отстает на 16мс от воздействия игрока на физическую модель.

V1KT0P ★★
()
Ответ на: комментарий от V1KT0P

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

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

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

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

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.