Код & Полигоны
2.85K subscribers
188 photos
202 videos
1 file
362 links
Про игры, их разработку и всё что с ними связано

Связь в директ или @ScrabyQ
Download Telegram
С 256 днём в году всех причастных 🥳
Please open Telegram to view this post
VIEW IN TELEGRAM
7🏆3🍾3🔥2💯2
Непопулярное по последним событиям

Про закрытие юрлица, под которым разрабатывался NauEngine, не написал только ленивый. Посты и комментарии под ними полны иронии, насмешек и прочего. Нашёлся ещё один повод посмеяться: провал попытки создать игровой движок в России 🫠

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

И дело даже не в том, что его делали «наши» разработчики. Просто это долгий и тяжёлый процесс, который я даже не способен полностью осознать, т.к. не обладаю нужными скиллами. Unity и Unreal стартовали ещё около 2000 года с огромными бюджетами. Godot и Cocos появились примерно в 2010-м в рамках Open Source (и уверен, что и там не без инвесторов).

Поэтому странно видеть такое ликование по поводу провала. Словно у нас есть какая-то гиперфиксация на собственном софте: любое начинание внутри страны автоматически нужно высмеять или принизить.

Вышел мессенджер Max? Отлично, значит, нужно дружно поносить абсолютно стандартное приложение — только потому, что оно российское.
Провалилась разработка движка и закрылось юрлицо? Давайте ткнём пальцем и посмеёмся над разработчиками и менеджерами.

Нарыть такого рода примеры еще — не сложно. Не буду дальше продолжать этот список, т.к. это не будет относиться к геймдеву

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

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

Пока у нас крайности «всё говно» или «всё наше святое», мы будем топтаться на месте — вместо нормального разговора о качестве
106💯6👍4🏆3🔥1
Нет, канал не заброшен
Просто слишком увлекся обучением новому 😁

Когда в разработке текущей игры случился затык, я долго пытался заставить себя продолжать — через силу, на автопилоте. А потом просто отпустил.

Во время этого «отдыха» мысли всё время возвращались к Unreal Engine. Я давно хотел серьёзно в него погрузиться: опыт был, но каждый раз всё быстро заканчивалось. Причина банальна — запускал UE под Linux, а работать под Wayland там то ещё удовольствие.

Большая часть взаимодействия с UE — это работа с нодами: скрипты, материалы, текстуры, анимации, частицы и т.д. и их связью между собой. Так вот, одна из ключевых возможностей движка у меня попросту не работала. Из-за особенностей композитора в Linux я не мог связывать ноды — а это, на минуточку, центральная механика.
Я пытался всё починить, менял окружения — без толку. Магии не случилось.

Сейчас, после всех танцев с бубном в Unity под Linux, я просто махнул рукой и перешёл на окошки. И вот наконец смог нормально освоить движок, к которому давно тянулся

И, кажется, я действительно нашёл то, в чём хочу работать долго

Теперь Unity вообще не воспринимается как удобная среда — скорее, как один большой костыль. Мне как-то намекали на это, когда я пилил игру для джема, но я не придал значения. А зря.

В общем, утянуло меня с головой в UE. А когда учишься чему-то новому с нуля — писать особо не о чем.
Теперь, когда немного освоился, буду делиться здесь прогрессом и переносом механик Don't Stay Late — уже в новой версии проекта под Unreal.

На видео в посте — итоги прохождения базовых курсов от Эпиков 🫡
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
56🔥3🏆3
Продолжая обучение

Параллельно с освоением UE плотно сижу за изучением плюсов (C++) — под нужды движка, конечно. А как известно, лучшее обучение — это практика.

Сегодня спонтанно пришла мысль (навеянная этим постом) сделать простую консольную утилиту, которая очищает имена файлов и директорий от префиксов и постфиксов. Цели те же, что и у автора идеи 😉

Код выложил на GitHub — можно заглянуть в репозиторий и ознакомиться с кодом, и поставить звездочку на репо. Скачать можно на странице релизовзапускать на свой страх и риск, я только учусь 😁
Возможно, кому-то пригодится эта простая, но полезная утилита 🙃

Немного пояснений по коду:

ООП — мимо. Утилита сделана простым скриптом, чтобы поработать с базовыми вещами C++: std, указатели, ссылки и т.д.

Кодстайл — в топку. Специально не гуглил конвенции форматирования: не хотел тратить время на оформление, хотелось просто писать и разбираться.

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

Спасибо @Ingolf_arts за отличную и при этом до смешного простую идею для практики 🤝
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥4😁2💯2🤝21
При переходе по ссылке откроется продажник курса по Godot, а в видеоматериалах будут учить созданию игр на Cocos 😁

Когда увидел это с утра в одном из тгк, думал, что уже совсем кукухой поехал)
Please open Telegram to view this post
VIEW IN TELEGRAM
5😁63🔥2
Media is too big
VIEW IN TELEGRAM
Универсальный UE

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

Сейчас активно погружаюсь в Blueprint’ы и изучаю API движка. Насколько понимаю, внутри BP дергаются те же методы, что и при ручном скриптинге — и такой способ знакомства с API мне прям заходит. Всё наглядно, понятно, и можно буквально видеть, как ходит поток данных в режиме симуляции

Во время изучения зацепился за довольно простую, но крайне полезную часть API — отрисовку отладочных примитивов. Методы из семейства Rendering > Debug позволяют не только визуализировать, куда и как что-то должно попадать, но и проверять на практике всякие математические идеи

На видео — результат воскрешения знаний о векторах и операциях над ними, которые так быстро покинули мою голову сразу после того, как моя задница выпала из стен учебного заведения 🙃
Совмещая сухую теорию с визуализацией, получается гораздо быстрее вспоминать или разбираться в теме

Движок всё ещё продолжает удивлять возможностями «из коробки». Осваивается он заметно легче, чем Unity — хотя, возможно, дело просто в том, что теперь я подхожу к этому с базой, а не как в первый раз с нуля.
Но пока что работать в UE банально приятнее. Даже не смотря на то, что мозг должен сопротивляться новому и непривычному :)

Ну а пока, продолжаю освоение движка
Всем ✌️
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥5👍2👏2💯1
Как много скрыто от глаз игрока

Если визуализировать все расчеты вражеских прицеливаний по игроку в этой простой сцене (на видео), то получается довольно интересная картина (скрины). А это ведь только одна механика 🙃
А сколько еще всего происходит у движка под копотом, ух)

Залипательно 👀
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥72👍2🏆1
This media is not supported in your browser
VIEW IN TELEGRAM
> Захотел твикнуть материал добавленного в проект ассета
> Видишь, что это просто белый материал
> Открываешь его
> Закрываешь и возвращаешься обратно в Unity

😁
Please open Telegram to view this post
VIEW IN TELEGRAM
5😁73🔥2
Media is too big
VIEW IN TELEGRAM
Смешивание анимаций без головной боли

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

Для теста выбрал ассет, который отдавался бесплатно в Fab несколько месяцев назад + прикрутил к моделе простенький джетпак, который валялся в сторе бесплатно. Некоторые анимации пришлось доделать по себя, некоторые сделать с нуля — наконец-то задействовал свои скиллы в блендере)
Интересно, кто-нибудь поймёт, не заглядывая в ассет, какие анимации были сделаны мной, а какие часть пакета 😁

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

P. S. Анимацию перемещения влево-вправо в полёте специально оставил такой. Мисскликнул при настройке и результат дико позабавил 😁
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥5👍32💯1
Две функции, которых мне так не хватало в Unity

Применение scale к мешу и перемещение pivot туда, куда тебе нужно — две мелочи, без которых жизнь в Unity была болью. А ведь это, имхо, базовые функции, которые должны быть в любом движке.

Когда я ещё не понимал, как вообще создаются 3D-модели, и работал только со скачанными ассетами, постоянно натыкался на эти проблемы. Разработчик модели ведь не знает, под какие нужды ты её используешь — и где тебе нужен pivot, и в каком масштабе.
На примере из видео автор этой канистры явно переборщил 😁

В итоге приохдилось каждый раз городить костыль: делать родительский объект, а дочерний масштабировать. Pivot родителя становился общим pivot’ом, scale тоже. Рабочая схема, но ужасно неудобная 😐

В UE есть Modeling Mode — и это спасение. Помимо моделирования — не замена специальному софту, но реально мощное, особенно для прототипирования — можно делать то, чего мне так не хватало: менять масштаб прямо на меше и двигать pivot, куда душе угодно. После этого получаешь аккуратный объект с масштабом (1, 1, 1) и правильно выставленным центром. Красота! 🤩

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

Если бы мне это показали раньше, я бы еще тогда пошел осваивать UE)
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
5👀7🔥32👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Увидел нечто странное на Fab 🤨

В Unity Asset Store и Fab можно встретить разные типы лицензий и основные две это:
- для маленьких команд
- для больших студий

Обычно для больших студий накручивают бóльшую стоимость за ассет. В некоторых случаях цена указывается не за сам набор, а за человекоединицу, которая с ним работает.

В приведённом кейсе, ассет для маленьких команд стоит денежку, а для студий — нет. Очень странное ценообразование 😁
Please open Telegram to view this post
VIEW IN TELEGRAM
55😁3🔥2
Media is too big
VIEW IN TELEGRAM
После того как сделал базовый контроллер персонажа и анимации на основе робота, захотелось дальше "нащупывать" механику. Постепенно всё превращается в нечто похожее на платформер. Добавил классические нажимные плиты, но немного по-своему.
Суть: нужно прыгать по кнопкам так, чтобы ни одна не была нажата дважды. И да, пол — это лава. По кнопкам нужно именно прыгать

В платформеры играю крайне редко, и сам жанр мне не особо близок. Но для обучения он, кажется, идеален. К тому же, реализовывать такую простую механику оказалось неожиданно весело.
Похоже, с Don’t stay late я действительно "задержусь" (да, каламбур намеренный 😁).

Если среди вас есть те, кто любит платформеры — расскажите, какие механики вас в них цепляют. Может, что-то из этого попробую реализовать, и учебный проект со временем вырастет во что-то большее 🙃
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥7👍3🤔31💯1
Media is too big
VIEW IN TELEGRAM
Не знаю, сколько продлиться акция, но раздаётся крутой ассет бесплатно по промокоду. Будет крайне полезным для ровного позиционирования по различным правилам

Промокод: VIRTUALMAKER
Ссылка на ассет: https://assetstore.unity.com/packages/tools/utilities/flexalon-pro-3d-ui-layouts-230509
5🏆43🔥3👍1
Media is too big
VIEW IN TELEGRAM
Наконец-то вернулся после незапланированного перерыва

На этот раз довелось познакомиться с Chaos Vehicle. Это система создания транспорта. Насколько понял, работает максимально универсально для любого колёсного вида транспорта. Хотя сам я разбирался на примере обычной четырёхколёсной машины

Фишка тут в том, что всё работает на скелетной анимации и кучке blueprint`ов. Колёса и кузов — это один общий меш. Я раньше даже не пытался делать транспорт, поэтому для меня оказалось сюрпризом, что всё держится именно на скелете, а не на отдельных мешах для колёс и кузова.
Ассет, который попался в курсе, вообще шёл с раздельными мешами, но прямо в движке это легко слепить воедино и поправить точки опоры. Не отходя далеко, можно также настроить скелет и веса под кости — без alt+tab до Blender и экспортом из него. Удобно 👍

Параметров в системе очень много. Теоретически можно собрать почти физически достоверную машину. Спойлер: у меня так и не получилось ¯\(ツ)/¯

В настройках можно твикнуть буквально всё: мощность двигателя, массу машины, обороты колёс, угол их поворота. Но пока что количество этих параметров скорее путает — я до этого вообще не интересовался устройством машин и тем, как эта вся механика работает 🫠

На таймлапсе — процесс сборки машинки: создание костей для меша прямо в движке и первичная настройка. Кайфую с того, что всё можно сделать в одном месте
В комментах — видео сборки всего до рабочего состояния
Please open Telegram to view this post
VIEW IN TELEGRAM
🏆5🔥4👍3
Media is too big
VIEW IN TELEGRAM
Возможно, когда-нибудь я перестану удивляться фишкам UE, но точно не сегодня 😁

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

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

Не знаю, может, в Unity оно тоже так работает, но я такого никогда не замечал
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥42😁2