GSC Game World. S.T.A.L.K.E.R. Oblivion Lost. - интервью от Gamedev.ru
знакомство с игрой
Ключевые слова, по которым можно понять, что речь идёт об Украине: Братья Кличко, Динамо Киев, Чернобыль, GSC, S.T.A.L.K.E.R.
S.T.A.L.K.E.R. Oblivion Lost, пожалуй, самая ожидаемая игра из разрабатываемых игр в странах бывшего Союза на сегодняшний день. Всех впечатляют скриншоты игры, видеоролики, запечатлевшие реалистичный рилтайм рендер - геймеры ахают, а девелоперы всматриваются в каждую деталь, в надежде найти хоть один баг, хоть в одном пикселе. Даже NVIDIA положила глаз на эту игру, проводит презентации своего FX-а на движке X-Ray, потому как цель одна - реализм. S.T.A.L.K.E.R. - будущий хит. Об этой игре много говорят в сети, в оффлайне, на выставках, на прошедшей GDC. Геймеры ждут - когда выйдет игра, разработчики задают один вопрос. Как это делается?
GameDev.ru решил устроить для своих читателей интервью с командой разработчиков Сталкера. Чтобы увидеть всё своими глазами, представился случай побывать в стенах GSC Game World. Увиденное поражает. Здесь Hi Tech!
Начнём со знакомства с представителями команды разработчиков. Представьтесь, пожалуйста.
Прохоров Андрей - руководитель проекта, главный художник Олесь Шишковцов - главный программист Антон Большаков - мэнеджер проекта Алексей Сытянов - геймдизайнер + плюс большая часть команды в рамках своей специализации
Многие читатели уже знают про игру. Однако, в двух словах расскажите о жанре, про что игра, какая цель игры, какие задачи будут возникать перед игроком?
Игроки попадут в мир индустриальной катастрофы, поражающей своей масштабностью. Все локации, которого соединены в одну глобальную карту. Мир, наполненный необъяснимыми явлениями с искаженными законами физики, населенный жуткими созданиями, мутированными существами. Игрок сможет выбирать любой маршрут, и не будет ограничен в своих путешествиях по Зоне. Его ждут свободные путешествия, исследования зоны, сражения с монстрами, выполнение как сгенерированными, так и сюжетными событиями, а также раскрытие главной тайны Зоны. Тревожная атмосфера Зоны будет держать игрока в страхе. Никто не будет уверен в том, что ждет в следующих пяти метрах. Встретит ли аномалию, затаившихся в тени мутантов или скрывающееся нечто, еще не известное никому ранее. И одним из самых опасных и непредсказуемых противников в Зоне будет человек - сталкер.
Предыстория "S.T.A.L.K.E.R." выстроена, как гипотеза реальных событий произошедших в восьмидесятые годы прошлого века. Тогда в Чернобыле функционировала огромная антенна, излучение которой было признано некоторыми специалистами, как психоактивное. На некоторых наших фотографиях, сделанных во время поездки в Чернобыль, конструкция антенны видна на горизонте. По неподтвержденным слухам, проводился многолетний эксперимент по психотропному воздействию на психику людей. Вокруг подобных экспериментов вертится сюжет Сталкера - здесь есть место и теории заговора, и противостояние спецслужб. В нашей игре мы как бы додумываем то, что и в самом деле могло произойти. Это история о пост-ядерном мире со своими законами и персонажами. Это клубок из переплетенных психологических и физических опасностей - психотропное оружие, зомбированные люди, телепатия, телекинез, существа-мутанты, смертельные аномальные зоны.
Для нас геймплей Сталкера - это новый этап в развитии компьютерных игр, это слияние жанров 3D Action и RPG, и попытка создания практически настоящей виртуальной реальности с населяющими ее "живыми" персонажами. Мир, где Зона живет не зависимо от действий игрока, совершают свои подвиги персонажи игры и происходят свои трагедии. Это наша попытка создать новый жанр игр, что-то вроде живой РПГ. Это позволит открыть невероятную степень свободы при прохождении игры и высочайший реплайабилити с изменчивой сюжетной линией.
Первоначальные цели игрока будут заключаться в исследовании Зоны и сборе артефактов, которые можно будет продать или обменять. Игрок попадает в огромный и опасный мир Зоны, о котором в начале практически ничего не будет знать. Большая составляющая геймплея заключается в том, что игроку предстоит исследовать Зону - добывать информацию, которая позволит ему выживать, обходить смертельные ловушки Зоны и справляться с ее созданиями. Изучение собранных крох информации приоткроет масштабную картину Второй Чернобыльской катастрофы.
Для многих может показаться неожиданным, что мы называем Сталкер RPG, и не даем игрокам растущих характеристик и уровней. Мы сделали это специально, у нас есть основание на такое решение. Мы хотим, чтобы игрок повышал свое реальное мастерство, выживал в мире благодаря своим способностям, а не умениям виртуального героя. Наше мнение такое - ролевой игра становится тогда, когда у игрока есть возможность выбрать себе свою роль в нашем опасном мире.
В игре большая часть игрового процесса это выживание (survival) игрока, для нас это, прежде всего, выживание в Зоне, тщательное планирование экипировки, осторожное перемещение, нежелание вступать в схватки с сильными противниками, и первые спутники в дороге - голод, раны и смерть. В Зоне дефицит боеприпасов, каждый патрон на счету. Сплошь и рядом, подкрадывание, наблюдение, опасливые перебежки. Любой сталкер знает, что бродячие стаи легче обойти, чем перестрелять. Сталкер не коммандос, он выживает, а не выжигает. Например, в местах концентраций аномалий вообще, страшно дышать, и неосторожное необдуманное движение может привести к мгновенной смерти. Сталкер нуждается в отдыхе и пище. Без отдыха сталкер может потерять сознание, а без еды умереть от голода. Одно из интересных нововведений, будет возможность, есть мясо мелких животных и птиц (вороны и крысы).
Игрок зарабатывает деньги, выполняя задания подпольных торговцев, заказы научных лагерей. Продавая аномальные образований за деньги игрок покупает аппаратуру, оружие и защитную экипировку, которая позволяет игроку проникать в те области, которые ранее были недоступны. Также игрок может торговать с другими сталкерами, которых встретит внутри Зоны. Новое оборудование позволит игроку пройти через новые смертельные аномалии, получив, таким образом, доступ к новым локациям. В Зоне практически все покупается и продается. Попадая в Зону зеленым новичком и имея лишь пистолет, игроку предстоит долгий путь исследований и приключений, выживание в которых зависят от вооруженности и экипировки игрока, на которые ему в свою очередь необходимы деньги.
Зона полна редкими и уникальными вещами, за которыми будут охотится сталкеры, ученые и военные. Добыв ученым определенные образцы или информацию, можно будет получить прототипы уникального оружия или оборудования.
Как зародилась мысль внести в игру именно такой дух? Почему поставили на это? Что будет оригинального в вашей игре?
Компания GSC Game World находится в Киеве, городе, расположенном в 100 км от места крупнейшей техногенной катастрофы в истории человечества - Чернобыльской атомной станции. Имея ТАКОЕ место под боком, трудно было удержаться от идеи сделать по этим событиям игру. Ну и, скрывать нечего, творчество Стругацких, нами очень любимое, сыграло такую же важную роль в формировании идеи игры.
Идея Сталкера и Зоны, да еще и в реально существующем месте, как нам кажется, будет иметь успех на фоне поголовной идеи борьбы с террористами и инопланетянами в 3D шутерах, порядком набившей оскомину.
Оригинального в игре будет много. Действительно много. И главное, чем мы можем гордиться, это не фотореализм графики и продвинутая физика - нет, это - Система Симуляции Жизни. Она представляет собой иерахическую двухуровневую систему одновременного просчета всех игровых событий, ОДНОВРЕМЕННО на ВСЕХ уровнях Зоны.
Читали про ваше посещение Чернобыльской Зоны, Не страшно было ходить по Припяти? Ночами не светитесь?:) Что вам дала эта поездка? Общая атмосфера там и в игре будет?
Не страшно, но как то муторно, что-ли. Припять, конечно, произвела самое тягостное впечатление. Сама станция и подходы к ней в идеальном порядке, все вычищено, выдраено. Деревни засыпаны белым песочком. Лес вырос заново. А вот брошенный город производит очень гнетущее впечатление.
Эти наши две поездки дали нам, ни много, ни мало, а материал для всей игры! Строения, текстуры, атмосфера.
Одна из целей проекта - добиться максимальной реалистичности. Что для этого делается? В чём мы увидим реалистичность, в графике, AI, физике?
Слишком общий вопрос. Мы делаем все для того, чтобы добиться реалистичности в игре. Наша задача создать реальный игровой мир, когда максимум его деталей будут ассоциироваться у игрока с действительностью - будь то комната здания, течение времени, реакция объектов на воздействия или поведение АИ. Психологический эффект от этого будет гораздо сильнее, нежели от мультяшной игры, созданной по технологии cell-shading. Особенно это важно для нас, так как особую роль в игре играет атмосфера.
Какими объектами может пользоваться персонаж в игре? Сколько будет видов оружия?
Если имеется ввиду оружие, оборудование, машины, артефакты и т.д., то, например, в Зоне игрок сможет найти и использовать более 40 видов оружия. Путешествия по Зоне предполагаются длительными, поэтому и объектов, которые игрок может найти и использовать будет также очень большое количество. Чем ценнее предмет, тем реже он будет встречаться :) Будут и уникальные экземпляры, которые стоят времени, необходимого на их поиск :)
Если имеются ввиду динамические объекты в сцене, то практически все объекты в сцене будут динамическими. Мы разрабатываем собственную мощную физическую библиотеку, которая дает нам большие возможности в игре. Объекты имеют реальные физические характеристики, правильно рассчитываются взаимодействия, смоделированы взрывные волны, осколочные взрывы, разрушаемые объекты, составные физические объекты и многое другое. Опять же динамическими объектами может пользоваться как игрок, так и противники. На этом основан, например, телекинез.
Что будет в игре нереалистичное? :)
Специфичные физиологические процессы у персонажей ;) ...ну и загрузка уровней - в жизни ее нет :)
Какую мощность должен иметь компьютер игрока, чтобы в игру можно было нормально играть?
1.4 ГГц, 256Мб, 128Мб видео... хотя точные данные будут известны ближе к концу проекта :)
Графические возможности движка
Какие типы видеокарт вы поддерживаете? Какая самая слабая карточка сможет воспроизвести изображение Сталкера? Возможности каких наиболее современных видео карт вы используете?
На сегодняшний день игра работает на карточках Ge-Force 2 (или аналоги) и выше. Однако позже мы можем принять решение отказаться от поддержки Ge-Force 2 и минимальным требованием станет Ge-Force 3 (или аналоги), так как получается, что мы ведем два рендера, что достаточно утомительно и трудоемко. Решение об увеличении минимальных системных требований мы будем принимать, основываясь на статистике, которую собирает издатель. Если к моменту релиза процент карт класса Ge-Force 2 будет незначительным - мы откажемся от их поддержки, если значительный - поддержка останется.
Для DX9 поколения видео-карт мы пишем новый рендер. Это наиболее технологичная разработка на сегодняшний день, которая является следующим поколением технологий после Doom3. Играя в Сталкер в версии DX 9 рэндера Вы увидите, как будут выглядеть другие 3D игры где-то с 2005 года. Основные нововведения это полностью динамического освещение и мягкие тени, которые отбрасываются от всего на всё, а значит и отказ от лайтмапов и вертексного освещения, сверхвысокая детализация - до 3 000 000 полигонов в кадре, фотореалистичность графики и кинематографичность за счет ряда новых эффектов.
Сколько полигонов в среднем приходится на уровень, на сцену, сколько полигонов можно увидеть в кадре?
Ограничения количества полигонов на уровень практически нет. Главное, чтобы хватило оперативной памяти на сервере, где считаются уровни. На 32-bit-ных процессоров у нас стоит по 2 Гб. Сейчас с появлением Opteron - ов мы увеличим этот объем вдвое.
В кадре с DX 7,8 рендером можно видеть 300 тыс. - 1.2 мил. Полигонов. С DX9 рендером - до 3-х миллионов.
Как происходит подгрузка уровня, моделей, данных? По контрольным точкам, постоянная подгрузка?
По контрольным точкам.
Где вы храните данные о геометрии? Всё помещаете в видео, как статические буфера? Используются ли динамический буфер?
И то и другое и... третье :) Для геометрии которая не меняется - используются статические буфера, для динамических моделей - динамические буфера. В принципе сцена побита на кусочки которые сразу загружаются в видеопамять. Динамические буфера используются только для скелетных моделей и всяких там партиклов.
Хватает ли видеопамяти на ресурсы? Если нет, то кто управляет расположением данных, свой менеджер или доверяете API?
Да пока и не вставал вопрос, чтобы написать свой толковый менеджер видеопамяти. Не всегда, но есть другие рычаги, например понизить качество.
А так, низкоуровневое управление - через DirectX. Высокоуровневое - писали сами.
Демонстрация проекции видео на статические и динамические объекты.
Кстати, какой графический API вы используете?
DirectX 9
Какие новые возможности 9-го Direct3D вы используете?
Мы используем практически все новые возможности DX9, даже чуть больше, так как разрабатываем отдельный рендер под DX 9. Список фич Вы все знаете по спецификациям DX9 - HLSL, occlusion culling... повторять их, я думаю, нет смысла. Поэтому расскажу, например, как мы используем Pixel Shader 2.0 +. Несколько из пиксельных шейдеров реально превышали спецификации ps_2_0 по количеству инструкций. Кроме этого, особенно легко было упереться в dependant-read limit (4 по ps_2_0). Для получения "идеального" PCF просто необходимо было использовать градиентные инструкции (ddx/ddy), которые доступны только в ps_2_x - железе. В общем, базового ps_2_0 нам явно не хватало :) Вот если-бы еще иметь и "dynamic flow control", причем с так называемым "early-out"... :)
Кстати, используете ли вы bump mapping, если да, то где его можно будет увидеть?
Мы используем повсеместно Bump Mapping в DX9 рэндере, где большое количество динамических источников света, что делает использование Bump Mapping эффективным. В DX8 рендере мы практически не используем Bump Mapping, так как при отсутствии динамических источников света Bump Mapping-а не видно, да и качество наших текстур делает его использование не особо нужным.
Какие ограничения накладываются на моделеров при создании моделей? Какое среднее количество полигонов содержит модель?
Хотя ограничений нет - у нас еще большой задел по полигонам, который мы часто заполняем объектами детализации. Но стараемся подходить к моделлингу без фанатизма, руководствуясь принципом рациональности. В среднем на модель получается 7000 полигонов.
По качеству картинки, видно, что вы используете постобработку? Каких эффектов вы можете достичь ей?
Эффект зернистость, изменение насыщенности и цвета, искажения изображения, "motion" эффекты и много других. С помощью построцесс эффектов художники и геймдизайнеры могут создавать потрясающие атмосферу в игре, кинематографичность и игровые фишки. Поэтому мы активно используем их. Есть ещё много идей по постпроцесс эффектам, особенно в новом рендере.
Кинематографический эффект с зернистостью
А как художники могут задавать параметры постобработки? Для них есть какой-то инструмент? Какими параметрами они могут управлять?
Все просто. Программисты выносят параметры в ресурсный текстовый файл. Меняем параметры - видим результат.
Обратите внимание, что спекуляра нет на месте выбитой плитки. Хорошо виден эффект Glow от пола дальней комнаты.
А вообще есть вершинное освещение?
В основном нет. Но на тех объектах уровней, которые не требуют высококачественного освещения и правильных теней - используем вертексное. Тем самым уменьшаем кол-во лайт-мап.
Каким образом вы делаете тени от подвижных объектов? И как вам эти тени удаётся совместить с лайтмапными тенями?
Тени от подвижных объектов - это проекционные текстуры меняющие свою интенсивность в зависимости от плотности лайт-маповой тени.
Есть ли в игре эффекты, связанные с погодными явлениями? Есть изменения погоды, изменение времени суток?
Уже реализованы осадки (дождь). В ближайшее время закончим течение времени, смену дня и ночи, другие погодные эффекты, изменение погоды. Снега нет за ненадобностью.
Поделитесь впечатлениями, какие эффекты больше всего отъедают производительность?
Наверное, больше всего - физика. Плюс большое количество текстур. Вообще, любой аспект игры в отдельности не представляет какой либо сложности для производительности. Проблема, что в игре этого всего очень много - полигонов, персонажей, объектов, физики, текстур и т.д. Все это очень скрупулезно приходится обрабатывать, оптимизировать и т.д.
Сложно ли было совместить поддержку открытых и закрытых пространств одновременно?
Мы с самого начала ориентировались на то, что игра будет совмещать открытые и закрытые пространства, поэтому вся математика сразу же разрабатывалась под эту задачу - выбирались самые удачные алгоритмы и решения. Поэтому у нас не возникло здесь трудностей. Наверное, главным здесь было правильно сделать ставку на концепцию движка, которой мы руководствуемся при разработке X-Ray Engine, а не скажем на BSP, который был весьма популярным в 1999 году.
Какая общая технология отсечения по видимости в indoor-е? PVS + окклудеры? Если да, то как разбивается сцена на комнаты и кто рисует порталы? Дизайнеры?
Сектора и порталы задаются левелдизайнерами. В то время как PVS + окклудеры - динамические.
Каких размеров может быть комната физически и в треугольниках?
5000 полигонов на 1 куб метр - других ограничений нет.
Как делается LOD для объектов и для ландшафта?
Лоды на ландшафте и моделях делаются движком автоматически, используя алгоритм Sliding Window VIPM with Hugue's Hoppe QEM. Лоды для растительности автоматически генерятся в редакторе в 6-ти проекциях, а в самой игре происходит автоматическая подмена модели растения на спрайт с нужной проекцией
Есть ограничение на виды деревьев? Есть какие-то специальные алгоритмы для вывода LOD-ов деревьев? Есть ли пререндер дальних растений в спрайты?
Ограничений нет. В редакторе автоматически генерятся несколько проекций деревьев для LOD-ов. Дальние деревья переключаются в спрайты
Что можете рассказать про свою траву? Вы её строите полосками или объектами? Как она появляется, при движении персонажа? Есть ли освещёнка на траве? Сколько типов растений используется для травы? Как эти типы задаются?
Модели травы и других детальных объектов (до 64 типов на уровень) правильно освещаются, появляются динамически в любом задаваемом радиусе. Появление - масштабированием модели. Все детальные объекты задаются в редакторе уровней.
Как выполняется текстурирование ландшафта (тайлы, переходы между ними, еще как-то?) Сколько на ландшафте слоев detail map и как они делаются?
Мы используем смешанное текстурирование: комбинация базовой текстуры с одним слоем detail map + врезанные оттекстуренные участки, подогнанные под базовую текстуру.
Используются ли свои редакторы карт/ландшафта/моделей, или все делается на уровне плагинов?
У нас есть редакторы уровней, шейдеров, партиклов и персонажей. Но моделлинг изначально делается в обычных 3d пакетах. После чего мы экспортируем модели в соответствующий редактор и делаем необходимые операции. Например, в редакторе уровней расставляется освещение, детальные объекты, деревья, физические объекты, монстры, аномалии и все другие игровые объекты. В редакторе уровней вскоре появиться и под-редактор сложных физических объектов.
К каким пакетам вы писали плагины? На ваш взгляд, какой пакет моделирования 3D объектов имеет лучший SDK?
Лучший SDK для Light Wave. Плагины разработанны для 3dMax, Maya, Light Wave
AI, физика и пр.
Демонстрация физики: машина, сбивающая множество нагромождённых объектов.
Очень впечатляет физика, реализующаяся в игре. Опишите, какие взаимодействия могут быть между объектами в игре?
Физика смерти, ударные волны, гравитационные аномалии (изменение вектора гравитации), повреждения от двигающихся физических объектов, честная физика автомашин (рессоры, двери, руль) и многое др... Это общая система, которая оперирует жесткими, полу-жесткими телами и разнообразными Joint-ами.
Физику не покажешь на скриншотах. Через неделю выйдет наш Е3-ый ролик, где можно будет посмотреть некоторые возможности физики.
Используется ли Инверсная Кинематика? Что можно будет достичь её возможностями?
Сложность в определении понятия инверсной кинематики. По большому счету, это придуманное определение, которое обозначает сильно упрощенную и обрезанную физику. У нас честная физика. В принципе, такие упрощенные настройки для модели можно сделать в физическом движке.
Физика смерти у нас полностью честная - когда человек падает вниз и чудом :) цепляется стопой за ступеньку лестницы - он будет висеть пока стопа не будет выбита из зацепления. При попадании учитывается импульс пули или взрывной волны и места, куда она попала, модель при падении будет честно взаимодействовать со всей геометрией. Можно взять труп за ногу и потащить его за собой. В стопке ящиков, можно взять нижний, потащить его и все ящики будут сдвигаться по разному с учетом трения и других сил. Можно приводить еще много примеров возможностей физики, хотя конечно это надо видеть :)
Пара вопросов по скелетной анимации. Используете ли вы вершинные шейдеры для реализации скелетной анимации?
Если видеокарта поддерживает вершинные шейдеры - используем их. В остальных случаях все делаем на процессоре с помощью SSE / 3Dnow! / x86 FPU
Сколько в среднем костей в персонаже и скольким костям может принадлежать вертекс?
В персонаже в среднем 50 костей. 2 костям может принадлежать вертекс.
Используете ли вы Motion Capture? Если да, то для каких именно анимаций? Или вы считаете, что аниматор может без этого сделать качественную анимацию?
Да, мы используем анимации для человекоподобных персонажей, созданные с помощью Motion Capture. Естественно с рядом изменений и дополнений. Все не человекоподобные монстры сделаны естественно "ручками".
Талантливый аниматор естественно может сделать анимацию не хуже чем анимация, которая была сделана с помощью Motion Capture. У обоих способов создания анимации есть свои плюсы и минусы. И в зависимости от проекта, задач, где будет использована анимация, наличия/отсутствия хороших аниматоров и т.д. нужно выбирать либо один, либо другой способ.
Лицевая анимация присутствует?
Такая возможность у нас есть, но так как Сталкер не построен на скриптовой технологии, а использует симуляцию жизни, то мест где можно ее применить достаточно не много. Мы используем лицевую анимацию везде, где она необходима.
Расскажите о вашем интересном АИ. Что будет оригинального? На что он будет способен? Сложно ли реализовать такое?
AI персонажи "слышат", "видят" и в каждый момент времени проводят оценку вероятности победы, учитывающие многие факторы, как то: "мое оружие"-"оружие противника", кол-во патронов, кол-во союзников и врагов, состояние здоровья "мое"-"противника" и т.д. На основании этого персонажи могут атаковать или панически бежать, уклоняться от боя или преследовать и т.д. Плюс к этому компьютерные противники реализуют честный алгоритм поиска врага, основанный на поиске наиболее благоприятных мест укрытий.
Хотим отметить тот факт, что игрок не является центром вселенной в этой игре. Он всего лишь один из персонажей. Те же сталкеры - NPC умеют все то, что может игрок, они равные противники и так же как он выполняют задания, общаются, торгуют, сражаются. Животные и мутанты также имеют свои собственные цели в мире Зоны, зоны обитания, повадки, созданий с которыми они уживаются и или сражаются. Весь мир Зоны - живой. Это стало возможным благодаря разработанной нами Системе Симуляции Жизни. Ее разработка и была самым сложным моментом.
Расскажите пару случаев, когда вы встретились с какими-то непредвиденными сложностями, во время разработки? Как вы с ними справились?
Предполагалась динамическая загрузка уровней в процессе игры. Мы от нее отказались. Т.е. справились, можно сказать, блестяще :)
Кому сложнее всего пришлось из-за цели достижения реализма? Художникам, программерам, текстурщикам, музыкантам, сценаристам?
Всем. Трудно выделить.
Расскажите немного о внутренней организации взаимоотношений разработчиков друг с другом? Например, как художники общаются с программистами? Пишет ли ведущий программист интерфейсы для всех модулей? Как начальство гордится разработчиками? :) И пр.
Программисты общаются между собой посредством цифр 0 и 1. С остальными обычным языком. Под пиво получается лучше :). Художники приблизительно так : "Блин, Саня, когда ты сделаешь ту фигню в редакторе?!.. я жы тебя уже давно прошу!!"... Начальство нами гордится СИЛЬНО... Гы-ы :)
Если серьезно, то система формализованная и скучная, но эффективная :). Проектом руководит - руководитель проекта, художниками - главный художник, программистами - главный программист (фактически их двое), геймдизайнерами - главный геймдизайнер. Вся работа ведется по плану. Есть планы на этапы - альфа, бэты :, на месяц план и на каждую неделю. В понедельник - собрание, в пятницу приемка работы. Всем кто успевает по плану - премия, всем кто нет :. %№?#. Пока все успевают :)
Работаете ли вы с фрилансерами? Если да, какую работу они выполняют? Ваше мнение о том, кто может работать фрилансером, а кого лучше иметь в офисе?
Да, с одним моделлером-текстурщиком мы работаем дистанционно... Пожалуй, это единственное, кем может работать удаленный сотрудник.
На последок, ваши пожелания нашим читателям - настоящим и будущим разработчикам игр.