Новая лекция в сети:
https://youtu.be/lc61fQQKnkE
Автоматизируем процессы с помощью
Github ActionsБесплатным аккаунтам
GitHub предоставляется 2000 минут работы облачных машин в месяц. Для персонального использования (как мы сегодня убедимся) этого вполне достаточно.Репозиторий текущего проекта:
👉 https://github.com/life-exe/FIghtClubCppCMAKE
Кстати, поскольку
VS Code иcпользует стек Typescript/Electron, то VS Code можно запустить напрямую в браузере и серфить код там. Меняем com на dev:👉 https://github.dev/life-exe/FIghtClubCppCMAKE
Дополнительно:
👉 https://vscode.dev
👉 https://github.com/features/codespaces
Patreon | Boosty | PayPal
GitHub | LifeEXE School | Itch | X | Wiki
#cmake #conan #cpp #github #gamedev #lifeexe #gameengine #lifeexeengine
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥36❤6 4👍3❤🔥2
Тем временем
Midjourney выкатили новую модель V7 AlphaПричины очевидны. Если бы была буква до alpha, то использовали бы её.
Подробности в блог посте:
https://www.midjourney.com/updates/v7-alpha
V7 is an amazing model. It’s much smarter with text prompts, image prompts look fantastic, image quality is noticeably higher with beautiful textures, and bodies, hands and objects of all kinds have significantly better coherence on all details.
Как говорится: сам себя не похвалишь — ...😅
Для концептов к игре пойдет
#midjourney #lifeexe #imagegen
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15🔥9 5👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Зацените реализацию инвентаря для INDUSTRIA 2
Насколько это удобно на практике — вопрос открытый, но визуально выглядит кайфово
#gamedev #games #lifeexe #lifeexecode #diegetic_interface #diegetic #ui
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥49🔥30👍14 3😁1🤯1😱1😍1👻1
This media is not supported in your browser
VIEW IN TELEGRAM
Epic Games анонсировали 8 новых шаблонов, которые появятся в Unreal Engine 5.6https://www.youtube.com/live/BHI6zx8QMkg
#unrealengine #ue5 #epicgames #gamedev #lifeexe
Please open Telegram to view this post
VIEW IN TELEGRAM
❤54🔥40 15🤪4😱2❤🔥1🎉1 1
Media is too big
VIEW IN TELEGRAM
Еще один неплохой пример диегетического интерфейса (Diegetic Interface)
Проект Beautiful Light
#gamedev #games #lifeexe #diegetic_interface #diegetic #ui
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28🔥11❤🔥2❤2
Непостоянная рубрика: Субботний C++
Сегодня в меню очевидный, но не всегда применяемый подход:
Immediately Invoked Lambda Expression (IILE)
Почему const — это важно?
Неизменяемость (immutability) — залог надежного и понятного кода. Использование const там, где это возможно, помогает компилятору отлавливать ошибки и показывает намерения программиста яснее. Когда другой человек читает ваш код и видит const, снижается когнитивная нагрузка на мозг — «запоминать изменения данного значения не надо — расслабься». Const correctness является важной практикой в C++.
Проблематика
В простых случаях инициализация констант не вызывает проблем:
const int c_maxPlayers = 100;
const double c_scale = getScaleFactor() * 1.5;
const bool c_enabled = check() || FORCE_ENABLE;
const int c_healthModifier = bHealing ? 20 : 0;
Но что делать, если для вычисления значения константы требуется несколько шагов, временные переменные, циклы или условия?
float c_calculatedDamage = getBaseDamageValue();
if (targetAimed(calculatedDamage)) {
for (int i = 0; i < c_effectCount; ++i) {
calculatedDamage += getBonusDamage(i);
}
}
Традиционные подходы — вынести логику в отдельную именованную функцию или отказаться от const — не всегда идеальны. Создание отдельной функции может быть избыточным, если логика используется только один раз. Отказ от const снижает безопасность и выразительность кода.
Immediately Invoked Lambda Expression (IILE)
Здесь на помощь приходит использование немедленно вызываемого лямбда-выражения (IILE). Мы определяем лямбда-функцию, которая инкапсулирует всю сложную логику инициализации, и тут же вызываем её. Результат этого вызова и присваивается нашей константе.
Как это выглядит:
const auto myLambda = [](){ return 13; }();Скобочки форева
const auto c_calculatedDamage = [&]() {
float tempDamage = getBaseDamageValue();
if (targetAimed(tempDamage)) {
for (int i = 0; i < c_effectCount; ++i) {
tempDamage += getBonusDamage(i);
}
}
return tempDamage;
}();Преимущества IILE для инициализации
const (или даже constexpr, если лямбда соответствует требованиям), даже если её вычисление многоэтапное.Альтернативный синтаксис (C++17)
В C++17 можно использовать
std::invoke, хотя для IILE прямой вызов () обычно предпочтительнее и понятнее:#include <functional>
// ...
const auto c_anotherConstant = std::invoke([] {
// ...
return 13;
});
Ссылки
Patreon | Boosty | PayPal
GitHub | LifeEXE School | Itch | X | Wiki | Курс по UE
#cpp #tipsandtricks #code #fun #lifeexe #lifeexecode #lifeexeEDU
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥83❤16👍9❤🔥2
Media is too big
VIEW IN TELEGRAM
На неделе у многих жестко подгорело, когда
Microsoft представила AI версию Quake II, каждый кадр которой генерируется с помощью модели Muse — это часть инициативы Copilot for Gaming.Затестить:
https://copilot.microsoft.com/wham
Для того чтобы WASD клавиши работали не забудьте переключить раскладку на английскую. Одно дело обучить нейросеть, а другое — настроить сканкоды клавиш
Жаркая дискуссия в
https://x.com/rubyrangerr/status/1908686763817918994
В реплаи даже залетел сам Джон Кармак:
This is impressive research work!
#news #gamedev #games #copilot #quake #lifeexe
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Понедельник. В эфире карательный гейм-дев!
Вы: пастушья собака
Ваша цель: отсортировать уток
Уровень сложности: невозможное
Небольшое пояснение матчасти происходящего
За этим хаосом стоит физика автономных агентов и роевое поведение —
swarm behaviour.Изначально термин
swarm behaviour пришёл из биологии: большая группа относительно простых организмов (птицы, рыбы, насекомые) показывает сложное, скоординированное поведение, хотя у них нет центрального лидера, и каждый реагирует только на своих ближайших соседей.Как запрограммировать
The Nature of Code:Я упоминал эту книгу в одном из общих видео на канале. Примеры в книге на Processing/JS, но принципы легко переносятся на C++, C# и другие языки. Easy,
Ключевые принципы
swarm behaviour:Классические примеры в природе:
Концепция «роя» применяется не только в играх и симуляциях, но и в архитектуре — это направление называется
Swarm Urbanism. Оно использует моделирование поведения толпы для проектирования городских пространств: помогает понять, где будут наиболее оживлённые зоны, как оптимизировать потоки людей и сделать среду более эффективной:Имеется специализированный софт для этих целей: NetLogo, AnyLogic, GAMA Platform
Patreon | Boosty | PayPal
GitHub | LifeEXE School | Itch | X | Wiki | Курс по UE
#gamedev #ai #simulation #swarmintelligence #physics #agents #coding #natureofcode #lifeexe #lifeexecode #lifeexeEDU
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥50❤15❤🔥10👍3🤩1
LifeEXE | Unreal Engine | CG
This media is not supported in your browser
VIEW IN TELEGRAM
В тему предыдущего поста про Swarm Behaviour — симуляция стаи рыб в Unreal Engine 5
🐠 🐡 🐠
Credits: William Wang
#unrealengine #ue5 #gamedev #lifeexe #demo #simulation #swarmintelligence
Credits: William Wang
#unrealengine #ue5 #gamedev #lifeexe #demo #simulation #swarmintelligence
Please open Telegram to view this post
VIEW IN TELEGRAM
На днях вышел новый сезон «Чёрного зеркала», и четвёртый эпизод Plaything касается геймдева непосредственно.
В центре сюжета — игра Thronglets, которая реально была выпущена Netflix совместно с Night School Studio:
На первый взгляд, игра представляет собой простой симулятор. Вам поручено присматривать за Тонглетами, маленькими милыми существами, напоминающими тамагочи
Но так как это симулятор Black Mirror, то существа со временем становятся более осознанными и начинают задавать вам ВОПРОСИКИ. К тому же придётся столкнуться с моральными дилеммами: быть добрым или жестоким, использовать ресурсы или жертвовать существами
Концепция игры отсылает к проекту 1996 года Creatures, где игроки заботились о цифровых существах с примитивным ИИ.
Подробнее об игре и её связи с сериалом можно прочитать в статьях:
P.S. В эпизоде имеется прямая отсылка на старый интерактивный эпизод Bandersnatch
P.P.S. Не рекомендую начинать игру, если не смотрели серию 🙃
#gamedev #movie #game #netflix #lifeexe #blackmirror
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27❤7🔥5