Новая жирная лекция по серии игрового движка в эту пятницу.
Автоматизируем буквально ВСЁ
Conan и CMAKElinux и  windows conan профилиlinux и  windows билды на githubgithub actionsmatrix strategyclang-formatgithub и публикуем отчет по тестированию в виде таблицыVS CodePCH в CMAKE с помощью target_precompile_headersВидео уже доступно на Boosty и Patreon
Это заключительная лекция перед стартом кода самого движка.
Увидимся в конце недели
#cmake #conan #cpp #github #gamedev #lifeexe #gameengine #lifeexeengine
Please open Telegram to view this post
    VIEW IN TELEGRAM
  Please open Telegram to view this post
    VIEW IN TELEGRAM
  21🔥83❤🔥9❤6👍6⚡2🐳1
  Новая лекция в сети:
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