Задать вопрос
  • Как принимать деньги от физиков и передавать их другим людям онлайн без юрлица или ИП?

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

    Поэтому даже не знаю что ещё предложить, кроме виртуальных "фантиков" и крипты.
    Написано
  • Как добавить плавность при обработке коллизий?

    historydev
    > А как понять? Двигаются объекты в мировых координатах, наверно плоскость.
    Да очень просто, у вас в позиции сколько координат? Если одна - то движение по линии, если две - то по плоскости, если три - то в пространстве, это же очевидно.

    Судя по последнему сообщению у вас две координаты в позиции, значит видимо про плоскость идёт речь.
    В этом случае обычно вектор скорости тоже двумерный, т.к. по каждой оси компонент скорости может быть разный: например кружок может быстро двигаться вниз/вверх, но одновременно с этим медленно смещаться вправо/влево или наоборот. Двумерный вектор скорости позволяет хранить скорость по каждой оси независимо. В вашем примере vec2(x * v, y * v) ваш кружок сможет лететь только под 45 градусов относительно координатных осей. Может вам так и достаточно, я не знаю. Но если вы хотите столкнуть шары, лучше дать им двумерные скорости, иначе нормально рассчитать не получится.

    Дальше я предположу, что вас интересует абсолютно упругое столкновение, погуглите что это значит (школьный курс физики). Вам нужно для двух шаров (кружков) массы m1 и m2 и с начальными скоростями v1 и v2 рассчитать результирующие скорости. Можно попробовать взять вот эту формулу, она похожа на правду (проверить не на чем сейчас). В этой статье правда расписано для движения по одной оси, но запись в векторной форме, поэтому по идее для двух осей ничего не меняется в формуле. Нужны только двумерные вектора скоростей.
    Написано
  • Как добавить плавность при обработке коллизий?

    historydev
    Я не знаю вашей постановки задачи, на плоскости у вас движутся круги или по линии. Я ориентировался чисто на термины, а по-английски velocity это вектор скорости, а speed - скаляр скорости. Если у вас только одна ось, то velocity будет содержать только один компонент, что эквивалентно скаляру + знак (вперёд/назад).

    > Сделал так, работает совсем не так, как хотелось бы
    Я не знаю ни как оно работает сейчас, ни как вам хотелось бы. Как думаете, я смогу чем-то помочь?)

    У вас движение на плоскости или по линии?
    Написано
  • Как запустить SFML проект в VS Code с CMake?

    Nipheris
    @Nipheris Куратор тега C++
    Что вы пробовали и что не получилось?
    Написано
  • Как исправить ошибку при установке psd-tools "\meson.build:1:0: ERROR: Compiler cl cannot compile programs"?

    q0tya покажите последние несколько строк из логов. Что-то произошло, когда Meson попытался вызвать студийный компилятор, чем-то он ему не понравился. Чем - непонятно.
    Написано
  • Как исправить ошибку с OpenCV и C++?

    Nipheris
    @Nipheris Куратор тега C++
    include_directories(${OpenCV_INCLUDE_DIRS

    И вот это тоже лучше делать с помощью команд для таргетов. Уже 2024-й год, хватит использовать старые команды из доисторических времён.
    Написано
  • Как настроить CMake на установку пакетов?

    Nipheris
    @Nipheris Куратор тега C++
    @Eugene-Usachev
    В общем у вас вопросы из разряда "как собрать и задеплоить приложение на C++?", в крупных проектах это считается за отдельную специализацию, называется build-инженер. Следовательно, в рамках ответа на тостере я вас полностью научить этому не смогу, но могу предложить конкретные направления, куда вы можете углубляться, если уж решили "делать по взрослому".
    Написано
  • Как настроить CMake на установку пакетов?

    Nipheris
    @Nipheris Куратор тега C++
    @Eugene-Usachev
    Я не знаю, на какой ОС будет собираться моё приложение.

    Желательно узнать это как можно раньше, т.к. даже если вы будете использовать кроссплатформенные библиотеки, конечную дистрибуцию поддерживать придётся под конкретные ОС. Лучше сразу узнать или договориться, под что нужно собирать клиент и сервер.
    Оба проекта имеют общие зависимости, как минимум gRPC и сгенерированные proto файлы.

    Тут бы я не спешил с выводами. Да, можно строить зависимости так, что proto-файлы у вас в каком-то отдельно пакете, от которого зависит и клиент и сервер, но вы вполне можете сделать так, что результатом сборки сервера будут помимо прочего ещё и proto-файлы, упакованные тем или иным образом. Это будет похоже на уже стандартный подход для HTTP-сервисов, когда для сервиса пишется руками или генерируется по коду OpenAPI-спецификация, и при релизе сервиса она тоже выкатывается куда-то в виде статического документа, доступного по HTTP, или в виде пакета. В этом есть логика: ведь сервис определяет, какая именно сейчас у него API-ха реализована, тем более если это не какая-то стандартная открытая спецификация (ну типа API S3), которую вы должны релизовать независимо от того нравится она вам или нет, а именно ваша спека gRPC-сервисов. Логично, что при выкатке новой версии сервиса будет выкатываться и новая спека в виде proto-файлов, которую можно подтянуть в клиенты. Заодно кстати и semver пригодится, про который вы спрашивали недавно.

    Но для начала, хочу собрать хотя бы сервер.

    Ну тогда рекомендую выбрать Linux, и сосредоточиться на сборке Docker-образа на базе какой-нибудь убунты. На Винде тоже есть нативный докер сейчас, и тоже принято паковать сервисы в виде образов контейнеров, но там свои заморочкки, можно будет добавить это позже, если вдруг понадобится. Вероятнее всего на сервере будет Линукс.
    Я задал этот вопрос, чтобы прояснить ситуацию, так как разные ссылки в Гугле дают разные ответы, но на форуме ответы тоже разделились.

    Ну это C++ коммьюнити, вот так тут заведено. C++ везде разный, инфраструктура и сборка ОЧЕНЬ разные в разных сферах и платформах. Игроделы, которые пилят под Винду, Мак и какую-нибудь Плойку делают по своему, Яндекс пилит свой бэк по-своему, везде разные ОС, разные библиотеки и разные системы сборки. CMake сейчас стал более-менее стандартом, но не то чтобы ему нет конкуренции, взять тот же Meson.
    В отличие от JS, Go или Rust в C++ более-менее одинаковый только сам язык, всё остальное различается.
    Выше мне посоветовали скачать библиотеки без менеджера, Вы советуете его использовать.

    Люди достаточно инертны (это же C++), плюс что Conan что vcpkg это довольно сложные инструменты, это вам не NPM где херак-херак и зависимости поставились. С ними разбираться надо. С другой стороны, если вы не будете упаковывать библиотеку, а только два приложения, тогда вам будет значительно проще - Conan сильно проще использовать, если вам нужно только зависимости выкачать и конечное приложение собрать.
    Написано
  • Насколько хороша такая политика обновления библиотеки?

    @Eugene-Usachev

    Если смотреть с точки зрения круга пользователей, то у беты он заметно больше. Обычно попользоваться альфой приглашают отдельно небольшое количество пользователей/клиентов. Бета обычно считается подходящей для более широкого круга лиц.

    С точки зрения кода у альфы может быть ещё не сформирован даже конечный API или отсутствовать какие-то ключевые функции. Когда выпускается бета, уже ожидается, что функциональность в целом готова, т.е. по мнению разработчиков "допилено" всё, но есть либо мелкие известные баги, либо какие-то неизвестные. Иными словами, то что в альфе что-то недоделано разработчики и сами знают (и слава богу хоть что-то уже работает), а какие ещё баги есть в бете - могут и не знать, для этого им нужны внешние пользователи (какое-то подмножество ВСЕХ пользователей релизной версии, например 2%).
    Написано
  • Какой язык программирования выбрать для разработки астропроцессора?

    После прочтения вопроса сначала подумал, что речь идёт о каком-то новом типе вычислителей (ну типа квантовых компьютеров, только астра), и для них требуется что-то типа своего Verilog-а.
    Написано
  • Почему зависает commit?

    vottakoinick первая команда, предложенная Sand, не отработала потому что автор написал её для bash-а, а у вас запущен павершелл, в нём переменные окружения задаются через $env:NAME="foobar".

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

    Ну или научитесь писать простой текст в Vim, его особо изучать не нужно для этого.
    Написано
  • Как разумно поставить себе начало в программировании (C++ и C#)?

    Nipheris
    @Nipheris Куратор тега C++
    Василий Банников У вас вклад в тэг C# в 3 раза больше, чем у следующего за вами куратора) А теперь вы растаман, моё почтение) Пожалуй надо в этом году и мне доучить раст наконец))
    Написано
  • Простое решение для десктопа?

    NET минимальной версии 3.6

    Это что за версия дотнета такая? Не помню такой ни у Framework, ни у Core.
    Написано
  • Как узнать, есть ли новые коммиты в подмодуле?

    Что вы понимаете под "новыми коммитами"? Коммиты в том же бранче в ремоуте?
    Написано
  • Как решить проблему подключения БД к WPF проекту?

    Nipheris
    @Nipheris Куратор тега C#
    Может ещё быть вариант с тем, что у вас ругается на .arm64.dII модуль, но виртуальная машина может быть на x64

    Думаю это пока самая вероятная причина. Vinch1k У вас Винда в виртуалке ARM-ная?
    Написано
  • Как исправить ошибку скачивания Microsoft PC Manager в Windows 11?

    Для начала - нажать "подробнее" и можно сразу открыть "eventvwr.msc", и посмотреть, не записывается ли в журнал каких-нибудь ивентов в лог Application and Services Logs > Microsoft > Windows > Store > Operational
    Написано
  • В Visual Studio не запускается проект Avalonia?

    Nipheris
    @Nipheris Куратор тега C#
    Ali-Muhammad покажите ваш XAML код, в котором ошибка. Скорее всего у вас несколько элементов-потомков там, где их больше одного быть не может.
    Написано
  • Как открывать много TCP соединений и поддерживать их?

    Сергей Соловьев
    что в протоколе TCP нет поля указывающего на сетевой интерфейс/карту

    Конечно его нет, ведь оно есть в поле протокола IP. Их даже два. Называются IP-адрес отправителя и IP-адрес получателя.