Уровень материала: 🐓 #senior
Давно не попадались под руку материалы по CI/CD. А тема-то важная. Геймдев — это не только лишь игрушки, и об этом не стоит забывать.
В прошлый раз
Про всё про это, но подробнее и применительно именно к геймдеву, на Хабре на днях вышла обзорная статья
С пояснениями, существующими решениями, сравнениями, реальными примерами использования и стоимости — со всем, что может быть интересно и полезно тому, кто только к этому приобщается.
Написано просто, понятно, последовательно, не перегружено. Оформлено красочно и удобно.
Единственное, я бы отметил, что связка из Unity Cloud Build, TeamCity и GitLab CI/CD достаточно экзотическая. Получается, что за CI отвечают одни сервисы, а за CD — другие.
Обычно нет необходимости поддерживать такой парк технологий — со всем описанным бы справился и один TeamCity или один GitLab CI/CD.
Но этим и интересен пример. Была начальная ситуация. Условия поменялись — появились проблемы. Надо решать теми средствами (и руками), что есть, с минимальными рисками, ещё и «на ходу».
Перестраивать такие процессы стоит только постепенно. И вот — можно наблюдать промежуточный результат.
Возможно в следующих частях удастся узнать о том, как дальше развивается эта история.
Оставлю ещё ссылки на стримы от K-Syndicate по теме CI/CD: первый практический
Там наглядно и подробно про автоматизацию сборки в Unity, про написание скриптов, про использование Cake, про встраивание в TeamCity, про сценарии использования Unity Cloud Build и многое другое по мелочи.
—————————————
#gamedev #development #backend #infrastructure #devops #cicd #геймдев #разработка #бэкенд #девопс #инфраструктура #автоматизация #рекомендация #статья #видео
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍3
Не планировал пока подаваться на выступления из-за слишком высокой загруженности и невозможности подготовить какой-то интересный контент. Но коллеги убедили, что материал про сохранения в играх всё же стоит представить более широкой аудитории.
🤞 Надеюсь, что всё успею, и планы не сорвутся.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥1
Подборка GameDev и IT мероприятий, которые встретил в чатах, группах и просто в сети. Митапы, конференции, фестивали, джемы, конкурсы и другое.
🧑💻🎤🆓 20.02. Томск [Offline] Secure IT Meetup.
🧑💻🎤🆓 01.03. Калининград [Offline] II Рабочая встреча Amber Code.
🧑💻🎤🆓 20.03. Красноярск [Offline] KD Meetup. Аналитика.
🧑💻🎤🎫 5.04 - 6.04. Москва [Offline] [Online] Heisenbug 2025 Spring. От 22 000 ₽.
🧑💻🎤🎫 7.04 - 8.04. Москва [Offline] [Online] HolyJS 2025 Spring. От 22 000 ₽.
🧑💻🎤🎫 7.04 - 8.04. Москва [Online] [Offline] DevOps Conf. От 40 500 ₽.
🧑💻🎤🎫 9.04 - 10.04. Москва [Online] [Offline] Mobius 2025 Spring. От 22 000 ₽.
🧑💻🎤🎫 25.04. Екатеринбург. [Offline] DUMP Ekb. От 13 000 ₽.
🧑💻🎤🎫 25.04 - 26.04. Иннополис [Offline] Конференция Merge. От 9 222 ₽.
Знаешь какие-то ещё интересные события, особенно в регионах — оставляй информацию в комментариях.
И заглядывай в Геймдев Афишу — там ребята сделали прям полноценный календарь с геймдев-мероприятиями.
—————————————
#it #development #gamedev #gamejam #meetup #conference #разработка #айти #геймдев #конференция #митап #событие #подборка
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤3👍2✍1
Уровень материала: 🧠 #mental
Ранее я публиковал пост о способах борьбы с нарушением внимания и сохранения своей эффективности. Там я упомянул важность сна, физической активности и контроля уведомлений — эти и многие другие факторы помогают поддерживать продуктивность и концентрацию.
Эту тему хорошо дополняет публикация моего коллеги по одному из прошлых проектов. Он предлагает вместо погони за идеальным тайм-менеджментом сместить фокус на управление своей энергией.
Мне это близко: когда ты «в ресурсе», ты можешь больше, и даже срыв тщательно выстроенного тайм-менеджмента не станет проблемой.
Какие виды энергии важно учитывать
В публикации также приводятся полезные техники и инструменты, которые могут помочь в управлении энергией.
Это короткая, но ценная заметка для тех, кто хочет работать эффективнее за счёт оптимизации своих ресурсов
Заботьтесь о своих ресурсах и находите баланс между работой и отдыхом!
—————————————
#life #health #energy #productivity #efficiency #жизнь #здоровье #энергия #продуктивность #эффективность #рекомендация #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🥴2✍1🔥1
novosibirsk.hh.ru
Вакансия Middle Unity Developer в Новосибирске, работа в компании FUNZEN (вакансия в архиве c 27 февраля 2025)
Зарплата: не указана. Новосибирск. Требуемый опыт: 1–3 года. Полная. Дата публикации: 28.01.2025.
Подробности и отклик:
Уровень материала:
Вводные:
• Проект: Mobile 3D F2P Action RPG.
• Стек: Unity, Addressables, Zenject, UniTask, Mirror, Unity backend.
Ожидаемые навыки:
• Понимание принципов сетевого взаимодействия.
• Опыт с realtime-мультиплеером, не обязательно коммерческий.
• Навыки разработки сервисных проектов с развитой мета-игрой.
• Умение разбираться в чужом коде и терпимость к работе с legacy.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
YouTube
Tactical Pathfinding: Beyond A* for Smarter AI Movement
Pathfinding is about getting from point A to point B as efficiently as possible, which a standard A algorithm can handle. However, in more complex scenarios, AI must also avoid detection or enemy fire, a challenge known as tactical pathfinding, where the…
Уровень материала: 🐥 #middle
Ознакомился с классным видео
————————————
#unity #gamedev #development #ai #pathfinding #astar #геймдев #разработка #ии #поискпути #рекомендация #видео
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍3❤1✍1
filepilot.tech
File Pilot - Next-gen file explorer
File Pilot is a file explorer built from scratch for light-speed performance, with a modern and robust interface.
📂 Новый файловый менеджер для Windows 📂
Уровень материала:⚙️ #tool
Давно слежу за проектом File Pilot, ещё со времён когда он назывался Disk Voyager. И на прошлой неделе наконец-то получил письмо о выходе публичной бета-версии.
Запуск как-то тихо прошёл. Не нашёл интересных публикаций для репоста. Разве что небольшая новость на Хабре📝 , да короткий обзор на YouTube 📱
👍 С момента релиза активно тестирую. Пока доволен. Работает очень шустро. Много горячих клавиш, быстрый поиск, фильтрация контекстного меню, удобный Go To. Ещё бы горизонтальную навигацию по стрелочкам, как на маке, и совсем было бы хорошо.
😡 Встречаются, правда, проблемы — стабильность пока не эталонная. Пакетное переименование совсем куцое и предпросмотр файлов только для узкого списка форматов работает. Благо он складно работает с Power Toys.
🤩 Всё это явно будет ещё допиливаться. Для меня это уже самое удобное бытовое решение на Win, что я использовал. Подумываю над тем, чтобы прикупить насовсем, пока дают скидку. Планируются версии и на другие платформы и, судя по всему, смогу ими пользоваться по той же лицензии.
upd: куплено
Уровень материала:
Давно слежу за проектом File Pilot, ещё со времён когда он назывался Disk Voyager. И на прошлой неделе наконец-то получил письмо о выходе публичной бета-версии.
Запуск как-то тихо прошёл. Не нашёл интересных публикаций для репоста. Разве что небольшая новость на Хабре
upd: куплено
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2
Уровень материала: 🎓 #education
У S0ER выходил базированный пост про базу в IT.
Настолько хорошо и лаконично сформулировано, что я как есть и сохраню у себя. Согласен с каждым словом — нечего ни добавить, ни убавить.
Настоятельно рекомендую ознакомиться с полным текстом. Он короткий, но очень содержательный. Оставлю несколько выдержек:
База — это результат труда и длительного воздействия на организм с помощью упражнений.
База — это проработанный мозг, который, как и тело, требует тренировки для формирования необходимых связей между нейронами.
База — это навыки и опыт, которые помогают сформировать ваш главный инструмент как инженера — ваш мозг!
Я обычно говорю, что
База — это сформированный майндсет и накопленный практический опыт.
🩹 Можно изучить сколь угодно постоянно меняющихся практик, техник и инструментов, но потолок возможностей и качества их применения будет всё равно низким без порядка в голове, выдрессированного мышления и «набитых шишек».
🎓 В частности, непопулярное мнение, в формировании майндсета помогает профильное высшее образование. Опыт поиска, изучения и обработки большого количества сложной информации в ограниченные сроки и продолжительное, осознанное, систематическое и глубокое копошение в контексте.
🎯 Это может и не принести никакой прямой практической ценности, но это поможет сформировать определённый взгляд на вещи и выработать определённые паттерны мышления и поведения, чтобы в дальнейшей деятельности действовать более эффективно, осознанно и прогнозируемо.
📉 Более короткие популярные коммерческие курсы нацелены, наоборот, на предоставление практических навыков (оставим за скобками их качество). То, что можно быстро пощупать, измерить, применить и, соответственно, легче продать. Это рабочий подход для повышения компетенций, но недостаточный для их приобретения.
—————————————
#development #разработка #геймдев #обучение #образование #курсы #рекомендация
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2✍1😴1
⛓️💥 Советы по работе с коммитами ⛓️💥
Уровень материала: 🐣 #junior 🐥 #middle
💬 Делюсь кратенькой публикацией с 4-мя советами по рефакторингу кода.
Хорошие советы — и сам их придерживаюсь. Более того, использую эти практики не только при рефакторинге, но и вообще при работе с VCS (системами контроля версий).
Первый совет во многих случаях может быть избыточным, но если на кону рефакторинг сложной и большой системы — он будет кстати.
💡 Разделение работы на короткие завершённые этапы помогает сузить контекст работы.
Чем меньше контекст, тем легче с ним работать. Это позволяет сосредоточиться на деталях, лучше продумать общий механизм и поддерживать прозрачную историю изменений.
История коммитов — важный долгосрочный инструмент, которым часто пользуются, поэтому её удобство стоит продумывать с самого начала.
🧩 Работа с коммитами — это отдельный навык, который требует практики и освоения.
Бардак в истории коммитов ничем не лучше спагетти-кода: для отката правок или поиска причин изменений приходится разбирать огромные непонятные запутанные завалы.
Хорошо составленная история, напротив, становится удобным инструментом, который помогает лучше понимать движение проекта, контролировать изменения и находить ответы на вопросы.
✔️ Грамотная и вдумчивая работа с коммитами делает разработку проще и прозрачнее.
Поддержание порядка особенно важно в хаотичном геймдеве, где сроки всегда горят, а приоритеты меняются каждый день. Чёткая история коммитов помогает быстро адаптироваться и не терять контроль над проектом.
—————————————
#gamedev #development #git #vcs #advice #геймдев #разработка #гит #скв #советы #рекомендация
Уровень материала: 🐣 #junior 🐥 #middle
Хорошие советы — и сам их придерживаюсь. Более того, использую эти практики не только при рефакторинге, но и вообще при работе с VCS (системами контроля версий).
Первый совет во многих случаях может быть избыточным, но если на кону рефакторинг сложной и большой системы — он будет кстати.
Чем меньше контекст, тем легче с ним работать. Это позволяет сосредоточиться на деталях, лучше продумать общий механизм и поддерживать прозрачную историю изменений.
История коммитов — важный долгосрочный инструмент, которым часто пользуются, поэтому её удобство стоит продумывать с самого начала.
Бардак в истории коммитов ничем не лучше спагетти-кода: для отката правок или поиска причин изменений приходится разбирать огромные непонятные запутанные завалы.
Хорошо составленная история, напротив, становится удобным инструментом, который помогает лучше понимать движение проекта, контролировать изменения и находить ответы на вопросы.
Поддержание порядка особенно важно в хаотичном геймдеве, где сроки всегда горят, а приоритеты меняются каждый день. Чёткая история коммитов помогает быстро адаптироваться и не терять контроль над проектом.
—————————————
#gamedev #development #git #vcs #advice #геймдев #разработка #гит #скв #советы #рекомендация
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥4✍1
Unigine открыли продажу первой ограниченной партии билетов на свой летний Open Air.
Давно не был в Томске — пожалуй, пора
Билет прикупил, но уже думаю над тем, чтобы подать заявку на доклад
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍1💩1
Для тех, кому было на этой неделе не до смеха. Подборка из 10 кеков/шуток/юморесок/мемов про игры, GameDev и IT, которые были мною украдены из рабочих чатов и ваших комментариев к предыдущим подборкам.
Мемы уже в комментариях
—————————————
#gamedev #development #it #meme #humor #геймдев #разработка #айти #мемы #юмор
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣6❤1👍1🔥1
VK Видео
Продвижение мобильных игр: пошаговый гайд по маркетингу | Подкаст «+100 монет» | Выпуск 15
«Хороший продукт продаёт сам себя» — заблуждение, которое погубило не один хороший проект. Как грамотно выстроить продвижение, не слить бюджет и заработать на своей игре — обсудили в новом эпизоде подкаста. Этот выпуск — must-listen для всех, кто хочет сэкономить…
Уровень материала: 🐣 #junior
🎧 В начале карьеры я очень любил слушать подкасты. Это, правда, источник преимущественно базовой информации. Но когда опыта немного, любая информация оказывается новой и увлекательной. Да и слушать подкасты очень удобно. Ламповая и неспешная атмосфера позволяет совмещать прослушивание с рутиной, не теряя важных деталей.
🎙 Недавно в списке воспроизведения подвернулся подкаст от VK "+100 монет", который немножко вернул меня в те давние времена. Года идут — темы не меняются. И в этом выпуске
🌟 Опытные коллеги вряд ли откроют для себя новое. Но ещё не выгоревшим пылким энтузиастам, мечтающим создать свой бестселлер, будет полезно лишний раз послушать про подводные камни и жестокие реалии.
💡 В подкасте часто упоминается термин USP, но ни разу не раскрывается. Исправляю это упущение:
Unique Selling Proposition — это то, что выделяет игру на фоне конкурентов и привлекает внимание целевой аудитории.
Хочешь результат — научись его считать.
Геймдев — это бизнес. А бизнес должен зарабатывать деньги.
На первом проекте вы зарабатываете опыт, шишки и какое-то количество седины.
🤘 В общем, всё как писали классики:
Sad but True
————————————
#unity #gamedev #development #marketing #promotion #games #геймдев #разработка #маркетинг #продвижение #игры #рекомендация #видео
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍2
YouTube
Never send a Human to do a Machine's Job
Improve performance in Unity by leveraging the power of Roslyn for compiling Source and Incremental generators, and building custom tools to analyze and enhance performance. This video introduces Roslyn to Unity developers, focusing on the essential setup…
Уровень материала: 🐓 #senior
На этой неделе выходил очень полезный ролик
Roslyn
Он позволяет производить поиск потенциальных ошибок, нарушений стиля или уязвимостей. Автоматизировано исправлять найденные проблемы в коде. А также генерировать всякий boilerplate, что бывает часто нужно, например, при разработке на ECS или при реализации DI (см. Pure DI
При этом все эти автоматизации можно привязать к пайплайнам в CI/CD и прогонять при мержах или сборках.
Вообще, никто не мешает работать с файлами кода, как с текстовыми документами. Можно открыть
cs-файл, перегнать в строку, через регулярные выражения искать совпадения и проверять выполнения тех или иных условий.Можно даже написать простой кодоген "на коленке" из "строк и палок" как в этом видео
Почему это не так удобно, как Roslyn, подробно и наглядно рассказано в классном докладе с DotNext
Roslyn преобразует исходный код в синтаксическое дерево (Syntax Tree
Также Roslyn предоставляет доступ к семантической модели (Semantic Model
————————————
#unity #gamedev #development #roslyn #tool #compiler #analyse #геймдев #разработка #анализ #инструмент #рекомендация #видео
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍3🥴1
В видео из прошлого поста можно заметить также любопытный момент про специальные директории, которые игнорируются в Unity.
Т.е. при необходимости какие-то папки можно сделать "невидимыми" для движка. Как это сделать, можно посмотреть в документации📱
Т.е. при необходимости какие-то папки можно сделать "невидимыми" для движка. Как это сделать, можно посмотреть в документации
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍2
Уровень материала: 🎓 #education
Целенаправленная работа над своей «базой» позволяет приобрести на длинной дистанции неоспоримое преимущество перед теми, кто полагается только на «практический опыт».
Это развивает майндсет и помогает принимать более точные решения в похожих или совершенно новых ситуациях. Именно так происходит качественный профессиональный рост.
Но, как показывает практика преподавания и найма, на это способны не все. Многие мыслят конкретными кейсами и теряются, когда сталкиваются с нестандартными для них ситуациями. Или, боясь «ударить в грязь лицом», принимают импульсивные, неэффективные и опасные решения.
Поэтому вместо набивания кейсов важно формировать набор навыков и мышления, который, подобно тренированному телу, помогает справляться с любой нагрузкой, даже незнакомой.
Достичь этого можно только через постоянную долгосрочную работу над фундаментальной экспертизой, включая математическую подготовку.
—————————————
#development #разработка #обучение #образование #aks2dio
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👌1
Уровень материала: 🐥 #middle
Assembly Definitions — мощный инструмент для организации кода в Unity.
asmdef'ов.internal.Про это более подробно написано в документации Unity
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤2
Что делает
internal: он делает доступ невозможным за пределами конкретного asmdef. Т.е. с internal можно взаимодействовать только в рамках одного модуля. Как private в рамках одного класса. Только уровнем выше.Это помогает контролировать как Low Coupling, так и High Cohesion (см GRASP).
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🚧 Преодоление internal 🚧
Бывает, что одним модулям нужно иметь доступ к
internal-штукам других модулей. Это неправильно с точки зрения проектирования, но есть, как минимум, два исключения. Это тесты и тулзы для редактора.Test и Editor – два модуля, которые вполне оправданно хотят трогать другие модули за все доступные и недоступные места. Но как это сделать?
Ответ: атрибут
InternalsVisibleTo. Но как его использовать?Это один из тех моментов, который плохо освещён в документации Unity
Достаточно около
asmdef'а создать файл AssemblyInfo.cs и поместить там атрибут InternalsVisibleTo с указанием имён asmdef'ов, для которых должен быть открыт доступ до internal методов и классов.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6
Не все это знают, но в Unity внутри вкладки Project можно отфильтровать все Assembly Definition в проекте через промпт
t: asmdef
—————————————
#gamedev #development #unity #assembly #asmdef #internal #advice #геймдев #разработка #советы
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍2
Уровень материала:
Не секрет, что LINQ в .NET имеет проблему с аллокацией памяти, что ограничивает его применение в часто исполняемой или высоконагруженной логике.
Ребутяшки из Cysharp, известные по UniTask и R3, 2 недели назад создали репозиторий с ZLinq — это их NonAlloc struct-based имплементация Linq.
2022.3.12f1) и Godot (от 4.0.0).В Unity и Godot предусмотрены методы расширения для
GameObject, Transform и Node2D. Аналогичные методы расширения реализованы и для Json, что может быть полезно для систем миграций/патчинга пользовательских игровых данных.————————————
#unity #godot #gamedev #development #dotnet #csharp #tool #linq #optimization #allocation #геймдев #разработка #оптимизация #инструмент #рекомендация #видео
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤3👍2