ru
Feedback
Cringengineer

Cringengineer

Открыть в Telegram

Все посты в группе сгенерированы продвинутой нейросетью Все совпадения - случайны

Больше
2 484
Подписчики
-324 часа
-27 дней
+1830 день
Архив постов

Пишу гадости...

Попробовал поиграть я в эту вашу Meccha Chameleon Залупа. Хуй знает. Абсолютно не понимаю, по какой причине она стала популярной UI говно. Управление тоже. Неткод говнище (ну либо, там p2p и просто хосты мне говнище попадались). Ну и выглядит она так себе Сама идея с закраской прикольная,но геймплей луп тупейший. Идеальный игровой цикл - это ты начинаешь игру, прячешься и... всё. Сидишь пердишь всю игру в альт-табе, потому что хорошо спрятался. Ну тупа кайф. Реально геймплей мечты. Хорошо хоть, что раунды не супердлинные Хуй знает, почему у неё лям проданных копий в принципе. Кому это интересно? Нахуя? Во всяких дефолтных hide and seek'ах как правило есть возможность побегать от противника, потому что ты не умираешь с одного выстрела как тут. Короче, игра уровня раннего доступа. Абсолютно не заслуживает хайпа вокруг неё #games

Рофлинка на злобу дня Вот microslop и nvidia говорят о том, как важно и круто сделать операционку, удобную для агентов. И ещё устройства для них удобные Видимо удобная операционка для юзеров - это уже решённая задача, так? Ебать, а я и не в курсе. Оказывается всё время до этого года микрослопошная делала операционку для людей. Чтобы людям было удобно, заметно, да? Ну... Сочувствую тогда ИИ агентам, для которых будут разрабатываться новые фичи. Думаю, что мы в скором времени увидим первые суицид от ИИшки, которая запуталась между "панелью управления" и "настройками" в винде

Все всё получили. Остальным удачи в следующий раз

🎉 Розыгрыш завершен! 🏆 Победители: 1. @Kir_Paramonov 2. @BoneSoulBL 🔍 Проверить результаты

Эксперименты с анимациями Я до сих пор считаю, что всякие анимации и системы завязанные на них - это удел каких-то богов в ми
Эксперименты с анимациями Я до сих пор считаю, что всякие анимации и системы завязанные на них - это удел каких-то богов в мире программирования. Сколько я не пытался создать действительно удобную комплексную систему для этого всего - я так и не преуспел. Ну чтож. Время попробовать ещё раз В чём собственно проблема? В большинстве случаев анимация - это не просто анимация. Возьмём, например какой-нибудь базовую хуйню, вроде кнопки. Ты наводишь на неё мышку. Что происходит? Она может изменить размер, цвет, она может улететь в пизду. Она может заменится на другой элемент. Хорошая система анимаций должна это поддерживать. Она должна быть гибкая. Но в то же время вам не хочется, чтобы разрабочик сидел и дрочил каждую микросекунду анимации. Вам хочется что-то типа
void FunnyInteraction() {
    auto button = GetButton();

    button.IncreaseSize(Vector2{1.1f, 1.2f}, 0.5f); // <- увеличить размер за 0.5 секунды во столько то раз по оси x и y
    button.Move(Vector2{0,10},1.0f); // <- сдвинуть вниз на 10 пикселей за 1 секунду
    button.ChangeColor(Color(255,0,0,255), 0.5f); // <- поменять цвет на красный за 0.5 секунд
}
И за всем этим IncreaseSize Move ChangeColor как правило неебаться логики будет. И как всё это сделать адекватно. Если кто-то из вас смотрел видосы 3Blue1Brown, то вы, наверное слышали/видели его MANIM. Вот что-то такое. Ещё классный пример есть у ThinMatrix в его видосах по градостроительному симулятору с нуля О чем это я. Собственно мысль примерно такая. Что является минимумом анимации? Изменение некоего параметра в диапазоне [0; 1] Собственно
struct FrameData {
    float progress = 0.0f; // [0; 1]
    float speed = 1.0f; // Время за которое progress изменится с 0 до 1 будет 1 / speed
};
Допустим мы хотим анимировать размер объекта. Что мы по факту хотим?
void UpdateObject() {
    auto obj =  GetObject();

    obj.size.x = originalSize.x + (originalSize.x * scale.x * obj.frameData.progress);
    obj.size.y = originalSize.y + (originalSize.y * scale.y * obj.frameData.progress);
}
Итого нам надо хранить size, originalSize, scale ну и FrameData собственно. size - часть объекта FrameData - понятно. Компонент объекта Что делать с параметрами, необходимыми для анимации (это может быть цвет, размер, спрайт, что угодно в любом количестве) и как их связывать с FrameData так, чтобы не болела жопа? Не ебу. Буду думать Ну и хуй знает, вот вам аниме женщина #software #dev

Кстати, если вдруг кому интересен в целом мой конфиг для neovim'а, то вот ссылка https://github.com/TheRealCringengineer/nvim
+2
Кстати, если вдруг кому интересен в целом мой конфиг для neovim'а, то вот ссылка https://github.com/TheRealCringengineer/nvim-config P.S. Напоминаю, что разыгрываются БЕСПЛАТНЫЕ игры #software #dev

Давно не писал ничего околотехнического. Потому что я жёстко работал играл в компудахтерные игры и смотрел видосы на ютубе Короче, как вы знаете, я - ебанат. Постоянно всё переписываю, постоянно на всё забиваю хуй. Не суть Короче, рассказываю базовые приколы, которые я ебашу в своём "движке" для 2D игр. В основном - это просто мои хотелки. Ничего особенного в этом нет. В принципе как и в большинстве подобных проектов - "движок" - это либа, которая линкуется с проектом и содержит, так сказать, ядро, базу Основная идея примерно такая:
int main()
{
  gaia::Application app(1920, 1080, "SANDBOX");
  app.EnableVsync();

  auto scene = new gaia::Scene();

  auto e = scene.CreateEntity("Name");
  e.AddComponent<Physics>();
  e.GetComponent<Transform>()->position.x = 200.0f;

  scene->GetRenderStack().Push(
      {.name = "Sprites",
       .target = LoadRenderTexture(1920, 1080),
       .execute = [](Registry& reg,
                     std::unordered_map<std::string, RenderTexture>& targets,
                     RenderTarget& target) {
         reg.View<Sprite, Transform>().each([&](auto& sprite, auto& transform) {
           // Display sprite
         });
       }});

  scene->GetRenderStack().Push(
      {.name = "Lighting",
       .target = LoadRenderTexture(1920, 1080),
       .execute = [](Registry& reg,
                     std::unordered_map<std::string, RenderTexture>& targets,
                     RenderTarget& target) {
         reg.View<Light, Transform>().each([&](auto& sprite, auto& transform) {
           // Display light
         });
       }});

  scene->GetRenderStack().Push(
      {.name = "Compose",
       .target = LoadRenderTexture(1920, 1080),
       .execute = [](Registry& reg,
                     std::unordered_map<std::string, RenderTexture>& targets,
                     RenderTarget& target) {
         // Compose Light and Sprites
       }});

  app.SetActiveScene(scene);

  app.Run();
}
Как видно отсюда, я хочу, то что называется ScriptableRenderPipeline (ну или что-то похожее на это). У меня это называется RenderStack (Рендерный Стек), потому что собственно это будет стек. При этом основной блок игры - это Scene (Сцена). Сцена содержит Entity (сущности) и их Components (компоненты), а также всю информацию о стеке, что значит, что, например для разных сцен можно использовать разные варианты шейдеров и отрисовки Насчёт того, как удобно реализовать систему работы с инпутом игрока я пока что думаю. Насчёт системы анимаций у меня есть наброски, но ничего конкретного пока что. Хотелось бы, чтобы было гибко и одновременно просто А ну да. И движок называется Gaia (Гея). Жду шуток про пидорасов (осуждаю) #software #dev #gaia

Если что, рассказываю ваше новое мнение по поводу новых трейлеров, которые показали на State Of Play: Росомаха - смешно как у него костюм восстановился после повреждений во время боя. Много крови, странно что конечности у противников во время боя не отрубается. В конце показали немного расчленёнки. В целом под пиво пойдёт Rayman Legends Retold - максимально похуй. Может поиграю, но не фанат реймена вообще Лара Крофт - сиськи есть, жопа тоже. Если не будет неоптимизированным говном (будет), то можно играть The Lost Wild - чё-то про динозавров. Все любят динозавров Phantom Blade Zero - выглядит как Souls-Like. Рот их ебал. А фанаты тёмных душ любое говно схавают Silent Hill: Townfall - с сайлент хилом не угадаешь. Silent Hill F был лютейшим говнищем. Может быть тут будет получше. Пока что играть не хочется, а вот разбор от металиста можно будет и глянуть, когда выйдет ILL - выглядит прикольно. Вангую, что работать будет как полнейшая залупа в 30 кадров на самых топовых компах. А играться будет как такой Resident Evil 7 на минималках. Если будет норм работать - однозначно поиграю. Детей пинать - это круто Control Resonant - БЛЯ, мне вообще похуй что там будет. Сэм Лейк мне может в рот насрать и я буду кушать, причмокивая с кайфом. Предзаказ уже оформлен Until Dawn 2 - Бля. А чё он выглядит так хуёво, как-будто под PS4 сделан? Я в первую часть не играл. Смотрел у Юзи, вроде. Ну хз. Кинцо. Поебать God of War Laufey - неиронично игра про женщину выглядит менее душной, чем GoW и GoW Ragnarok. Хотя, она вполне может быть такой же душной. Прикольно что боги из разных мифологий типа. Я GoW еле-еле осилил, настолько он был скучный. Может эту часть попробую, но пока что как-будто скип На всё остальное в принципе похуй #news #games

Что у нас там из новых игр? 007 First Light Forza Horizon 6 PRAGMATA Два победителя. Каждый может выбрать, что он хочет. Заме
Что у нас там из новых игр? 007 First Light Forza Horizon 6 PRAGMATA Два победителя. Каждый может выбрать, что он хочет. Заменять нельзя, можно выбрать только из этих трёх Результаты будут 7-го Июня в 12:00. Как всегда шансы на победу можно увеличить, бла, бла, бла. Инфа при нажатии на кнопку

Я с разной периодичностью переключаюсь между разными своими проектами, которые можно глянуть тут и тут по большей части. Один
+2
Я с разной периодичностью переключаюсь между разными своими проектами, которые можно глянуть тут и тут по большей части. Один из давних моих проектов - это Daedalus. Обёртка над imgui, основная идея которой всегда была в том, чтобы максимально быстро прототипировать GUI приложения без необходимости каждый раз писать бойлерплейт для imgui и другой хуйни. Примером такой штуки может являться, например Iris Injector. Он как раз был написан с использованием ранней версии Daedalus'а, равно как и лаунчер для слитой версии второго сталкера (если кто-то такой помнит) Ну и собственно с недавних пор в этот список хотелок захотелось внести возможность кросс-компиляции и сборки под линукс/винду. На 2 и 3 картинках собственно, нативная версия под линукс и виндовая, запущенная через wine, соответственно (линуксовая пока не все стили виндовой поддерживает) Если кому-то интересно, можете попробовать, поюзать для своих проектов (p.s. если будете, то советую зайти сюда и написать о своих проблемах, хотелках) https://gitlab.com/pantheon-team/daedalus Но предупреждаю, что это достаточно ранняя версия в целом #software #dev #daedalus

Отменили ли мне заказ? Тоже да. Осуждаю

Решил, эксперимента ради заебашить простенький Voice Chat на плюсах. На удивление оказалось гораздо проще, чем кажется Сервер
Решил, эксперимента ради заебашить простенький Voice Chat на плюсах. На удивление оказалось гораздо проще, чем кажется Сервер и клиент сейчас суммарно занимают в районе 400 строчек кода. 200 на клиент и 200 на сервер. Фул консольные приложения, никакого графического интерфейса Нет шифрования, нет аутентификации, нельзя замутить микрофон, нельзя поменять источник звука. Подключаешься - ты слышишь всех, все слышат тебя. Ну и ещё есть простенький чат. Собирал и проверял клиент под винду и линукс. Оба работают. В том числе виндовый клиент запускается на линуксе под Wine/Proton Базовая идея такая: 1) Нужны PortAudio + Opus + любая сетевая библиотека (я брал ENet) 2) PortAudio будет отвечать за получение звука с микрофона. В него можно передать колбэк, который будет получать буффер со всеми данными 3) Из PortAudio прогоняем голые данные через Opus (создаём encoder) 4) Отправляем результат работы Opus'а по сетке (UDP без Reliable режима) на сервер. Сервер рассылает всем подключённым юзерам 5) При получении звука прогоняем через Opus (создаём decoder), и отправляем в PortAudio (выходной поток, который будет проигрываться на основном, либо выбранном устройстве вывода) Ну и вообщем-то всё. Добавляем проверок по вкусу, дополнительный канал для отправки текстовых данных (текстовой чат) и всё. Получаем сервер и клиент по 200 строчек кода Эксперимент достаточно интересный получился. Может добавлю графический интерфейс и шифрование и будет вполне себе юзабельно #software #dev

Заебашил чистку в дискорде А то там сидят читаки по SCP:SL и периодически проёбывают аккаунты и начинают спамить всякой хуйнёй. В принципе по факту там нихуя не происходит. Сервак мёртвый, но пока удалять не буду. Пусть живёт

Заказал ли я себе Steam Controller по оверпрайсу? Да

Попущенные плебеи теперь расступаются перед Королём Добавил немного травы на фон. Королём теперь можно упралять. Следующий пункт - вражеские юниты и сражение между союзниками и противниками (на видео я мышкой используй те способности, которые будут у юнитов в дальнейшем) #gamedev #video

Добавляю немного этого... как его... как там молодёжь говорит? Флекса? Мога? Вейпа? Вот этого, вот, короче #gamedev #video