Дневники разработчика
1.91K subscribers
189 photos
35 videos
13 files
137 links
Мы THS - молодая команда разработчиков из Краснодара. Мечтаем сделать свою идеальную игру. Об успехах делимся на канале.
Я @colapsefed работаю геймдизайнером. Люблю игры, жену и Иисуса Христа.
Download Telegram
Очень крутая статья от Plarium! Они тоже работают на Unity и смогли сделать впечатляющий графон!
Кое-что написанно торопливо и поэтому непонятно как они это сделали. Я бы, например, больше почитал бы про эти их каналы Lightmap. Мы давно работаем в Unity. Какие ещё каналы?!
Запекание hi poly на low poly через Zbrush. Я думал такое делают только в ААА играх, а не в мобилках.
Зачем ещё отдельно Mudbox использовать? Zbrush не хватает на всё что они задумали?
С текстурой песка заморочились. Зачем её делать в Substanse Designer. Почему не хватает обычной фотки.
Вот это всё спросить бы у них...

http://cg.plarium.com/ru/blog/kak-sozdavalos-okruzhenie-dlya-igryi-soldiers-inc-mobile-warfare/
Чтобы прототипировать левел дизайн хорошо подойдёт Probuilder. С его помощью можно моделить геометрию и бахать прототипы прям внутри Unity 2018.1. Быстро и просто! Как раз то что нужно для graymesh!

https://youtu.be/Kjqx6cKUepc
Уже третий день пишу ГДД (геймдизайнерский документ), хоть у нас уже есть схема серверного кода, схема UI и простой диздок. Я думал что это хватит.

У нашего серверного программиста куча вопросов, на которые у нас нет ответов.
Он жутко бесится из-за этого. Ещё бы! При этом он не может дать ответ на вопрос "а какую документацию мне написать?". Только твердит "сделайте как положено" ... "приведите в порядок". Ну вот я и решил узнать как положено.
Спустя десяток статей, большинство из которых дают информацию 2003-2004 года и ссылки на диздок "Месть Курочки Рябы", я окончательно запутался. Один человек даже предлагал вести документацию при помощи Trello (столбцы отвечают за категории, а карточки имеют ссылки на Google docs).
Позже расскажу о своем опыте составления ГДД. Что полезного я отфильтровал из статей. Какая структура должна быть у ГДД и вообще нафиг он нужен ;))
Один из подписчиков посоветовал мне вести ГДД в Notion.so
Удобный сервис! Можно создать свою вики, удобный UI, богатые возможности вёрстки, есть клиент на ПК и легко разобраться. Читается и редактируется такая документация гораздо проще чем в Google Docs, а смотреть её могут все у кого есть ссылка. Я отказался от Google документов.
Ещё я откопал немлохой мануал по текселяции ( texel density/плотности текстур).
Я уже писал, что когда мы нанимали людей на работу, я увидел тестовые задания, которые им дают другие студии. В одном из них ОЧЕНЬ строго была прописана плотность текстур - 16 пикселей на 1 дюйм. Я тогда спросил как это посчитать и теперь нашёл ответ.
Если коротко, то нужно подумать какого размера этот объект в реальном мире и какую текстуру ты положил на эту площадь. Допустим это канистра бензина. Она примерно 46cm х 34cm и будет лежать в текстурном атласе 1024х1024. Тот кусок атласа, что занимает эта текстура канистры равен 480х352. Делим и получаем 10.4px/cm на 10.3px/cm
В итоге канистра имеет texel density = 10px/cm

Читать это лучше на компе, потому что это перевод англоязычного мануала PDF и там получилась длинющая "портянка" текста.

[https://yadi.sk/i/XOiFyxIC3T2ubK](https://yadi.sk/i/XOiFyxIC3T2ubK)
Вот картинка из моего объяснения
А вот картинка в стиле Хорошо/Плохо
Хочу сделать бгагодарственный видео ролик для наших игроков.

Мне очень понравился ролик, который выпустила CD Project RED к 10 летию серии игр Ведьмак и я захотел сделать такой же. Я преданный фанат их игр и играл во все части. Я чуть не разрыдался от такой ностальгии и любви к игроку. Самое приятное, что ролик не продаёт тебе игру или DLC, а просто говорит тебе спасибо за поддержку ведь без тебя и твоих денег не было бы Witcher 3.

В прошлый раз, когда я делал трейлер, то снимал с помощью ShadowPlay и Unity. В таком виде ужасно не удобно делать монтаж!
В Unity 2017 появилась Cinemachine - это такой навороченный режисёрский пульт где можно переключаться между камерами и тому подобное. Теперь сложные катсцены очень удобно делать.
Но есть проблема со съёмкой автомобилей - нужно анимировать поворот руля и нажатие на педали, а потом включать симуляцию по физике, чтобы подвеска нормально работала и т.п. Это не удобно потому что сложно отследить машину в момент времени и навести на неё камеру.

https://assetstore.unity.com/packages/essentials/cinemachine-79898
Немного work in progress нашего гаража для новой игры! Кто-то называет это сермат, кто-то греймеш. А как правильно?
Начали общаться, парнями из команды, в Discord. Нашего главного программиста конечно туда не перетащить. Он навеки останется верным ICQ 😆
Удобно, что можно быстро подключиться к голосовому чату или что расшарить экран могут сразу несколько человек.
Один парень, из нашей команды, неплохо прокачался за год работы с нами. Текстуры стали значительно лучше. Приятно видеть, как проффесиональные навыки людей растут.
Спасибо Господи, что я на этой работе!
Это очень прикольно вдохновлять и мотивировать людей! Тут ведь нужно найти к каждому ключ - понять человека. Каждый раз как будто кубик рубика собираешь.
Стал задумываться над словами "воодушевить", "вдохновить", "поднять боевой дух". Вот что это значит? Как это происходит? Как будто ты как-то разжигаешь огонь внутри человека... Прямо Dark Souls от мира жизни 😆
Вот его последние текстурки
У нас была проблема с пикселизацией текстур террейна на некоторых устройствах. Выглядело отвратительно, словно используется текстура 64х64! Коллега по цеху подсказал решение:

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

ПОМОГЛО!!!
Кто бы мог подумать?! И ведь не знаешь что тебя ждут такие проблемы пока не столнешься с ними! Надеюсь что кому-то поможет этот трюк.
Вот так было до того как мы поняли как это делается. Видите справа кошмар?!
А вот скриншот после того как мы поняли как это исправить
У нас есть один какой-то гадский игрок, который скачивает наш .APK и делает мод с кучей читов. Программист всё время борется с ним и банит, но он появляется под новыми никами.

Программист сменил компиляцию с mono на il2cpp, т.к. она должна дать защиту от модов игры
Частенько приходится общаться и нанимать на работу 3D художников. Я сделал 2 интересных наблюдения как вычислить неопытных людей.

1. Если человек говорит, что в какой-то программе будут более крутые текстуры
Например: "а ты видел какие текстуры бахают в Quxel?"
2. Если он не понимает зачем ты так сильно придираешься к деталям.
Например: "зачем тут нужен болтик?! Что обязательно такое молекулярное соответствие рефересу?!"

Я за 10 лет текстурировал в Photoshop, Quxel, Zbrush и Substanse painter. Пробовал работать в 3D Coat, Topogun, Unwrella, UV Layout и ещё куче других программ.
Ничто не отменит умения отличать полутона и оттенки, художественного вкуса, понимания старения материалов и любви к делу. А внимаение к деталям - это ключ к тому чтобы перейти в высшую лигу.
Мы сейчас разрабатываем новый городской уровень. Я уже рассказывал о том как мы прототипируем его и т.п.
Сейчас мы столкнулись с проблемой роста. Чтобы запустить хорошую игру нужно 5 кольцевых уровней и столько же арен.
1 большой уровень хорошего качества, 2 человека делают 2 месяца + 1 месяц работы над багами, потому что количество контента огромное. Получается, что для релиза нам нужно 30 месяцев!! Это сумашедшая цифра! Мы же делаем не ААА проект!
Мы хотим сейчас нанять больше людей чтобы одновременно создавать 2, а то и 3 уровня. Значит нам нужно ещё 4-6 человек.

Вот такие вопросы у меня в голове.
1. Как управлять таким колоссальным объёмом работ?
2. Как сделать так чтобы все были заняты и не простаивали?
3. Как не сделать лишнего?
4. Как делать так чтобы все укладывались в требования по оптимизации?

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