Мультимедийная библиотека SFML разработка игр #7.2 Движение объектов

Поділитися
Вставка
  • Опубліковано 7 вер 2024
  • Разработка аркадной игры "Путь домой" на языке программирования С++ используя мультимедийную библиотеку SFML. Выпуск 2
    Движение объектов. Имитация космического полёта.
    Клонировать репозиторий:
    github.com/cne...
    Проект с анимацией
    github.com/cne...
    Телеграмм:
    t.me/C_Verhovc...

КОМЕНТАРІ • 30

  • @forme6857
    @forme6857 Рік тому +2

    Суперский ролик, исходя из других "недо-обучателей" ваш контент лучший, среди того чего пришлось наблюдать до того как наткнулся на вас!

  • @user-nl7lu9yj6w
    @user-nl7lu9yj6w Рік тому +3

    1:07 Буква L перед текстом говорит о том, что текст передается в кодировке Unicode, иначе он будет передаваться в кодировке 1252 для западноевропейских языков, где русского языка нет.

  • @user-nl7lu9yj6w
    @user-nl7lu9yj6w Рік тому +1

    Кроме привязки ко времени можно привязаться еще к фреймрейту. Если задан фремрейт, то скорость объектов можно определять исходя из него, например, делением заданной константы на частоту кадров. Если константа 120 и фреймрейт 120, то абсолютная скорость 1, а скорости всех объектов находятся умножением на коэффициенты заданные для каждого объекта. Я это так реализовал.

  • @oleg_kishinskii
    @oleg_kishinskii 6 місяців тому +2

    2:40 - Библиотека SFML прекрасно работает на 64битной архитектуре, что соответствует параметру x64

    • @user-yb6um2kh1q
      @user-yb6um2kh1q 3 місяці тому

      Она прекрасно работает с cmake и похрее на чем. Этож cmake.

  • @haryz846
    @haryz846 15 днів тому

    У меня не загружается текстура космоса, что делать? (я все тексуры уже копировал на C:\IT\SFML-2.5.1-windows-vc15-64-bit)

  • @wsxpocxeafx
    @wsxpocxeafx Місяць тому

    Не понял в чём был прикол с возвратом кода 35 и потом снова возврата к 1

  • @vladimiradamov7316
    @vladimiradamov7316 2 роки тому +2

    Норма!

  • @un1or747
    @un1or747 10 місяців тому +2

    Почему то картинку не видно код работает

    • @user-ch1mt9eo8w
      @user-ch1mt9eo8w  9 місяців тому

      После клонирования репозитория разместить распакованную библиотеку SFML на диске
      C:\IT\SFML-2.5.1-windows-vc15-64-bit

    • @_shooter636_
      @_shooter636_ 8 місяців тому

      @@user-ch1mt9eo8w разместил, все равно не появляются картинки, хотя иконка работает корректно

    • @haryz846
      @haryz846 15 днів тому

      у меня тоже самое

  • @mrbudson
    @mrbudson 9 місяців тому

    Прошу пояснить, зачем 2-ой бэкграунд, и что за проверка pos.x < -1280, и зачем нужен clock.restart?

    • @user-ch1mt9eo8w
      @user-ch1mt9eo8w  9 місяців тому

      Второй бэкграунд работает в паре с первым, двигается создавать иллюзию полёта, замещая фон звёздным небом. Если уходит в - 1280 перемещается на начальное положение. 1-2-1-2-1-..... вот таким образом попеременно.

    • @mrbudson
      @mrbudson 9 місяців тому

      @@user-ch1mt9eo8w спасибо

  • @user-cg4bh4ve5n
    @user-cg4bh4ve5n 2 місяці тому

    заканчиваеться картинка космоса(

    • @user-ch1mt9eo8w
      @user-ch1mt9eo8w  2 місяці тому

      Выполните цикличность одна меняет другую

  • @wsxpocxeafx
    @wsxpocxeafx 2 місяці тому

    7:31 Не увидел, где обновляется time.

    • @wsxpocxeafx
      @wsxpocxeafx 2 місяці тому

      8:59 увидел. Думаю, это было нужно написать с самого начала.

  • @wsxpocxeafx
    @wsxpocxeafx Місяць тому

    Зачем window переименовал в win? В чём удобство?

    • @haryz846
      @haryz846 15 днів тому

      так меньше печатать

    • @wsxpocxeafx
      @wsxpocxeafx 15 днів тому

      звучит так себе 🙂

  • @gfest1119
    @gfest1119 10 місяців тому

    А нормально что у меня работает на базе конфигурации x64, и выдает ошибки когда ставлю х86?

    • @user-ch1mt9eo8w
      @user-ch1mt9eo8w  10 місяців тому +1

      Да это нормально, так как данный вариант библиотеки SFML предназначен только для 64х разрядных систем.

    • @gfest1119
      @gfest1119 10 місяців тому +1

      @@user-ch1mt9eo8w спасибо

  • @user-yu7it8ev6u
    @user-yu7it8ev6u 10 місяців тому

    код работает, но картинок нет. в чем я ошибаюсь?

    • @user-ch1mt9eo8w
      @user-ch1mt9eo8w  9 місяців тому

      После клонирования репозитория разместить распакованную библиотеку SFML на диске
      C:\IT\SFML-2.5.1-windows-vc15-64-bit

  • @scherbakovss2012
    @scherbakovss2012 8 місяців тому

    Не работает загрузка текстури. Сборка х64, 2.6.1
    Поток 0x1b5c завершился с кодом 4 (0x4).
    #include
    using namespace sf;
    int main()
    {
    // Створення вікна Windows
    RenderWindow win(VideoMode(1280, 720), "Група домой");
    Image icon;
    if (!icon.loadFromFile("images/icon.png"))
    {
    return 1; // Отсутствует иконка приложения
    }
    win.setIcon(32, 32, icon.getPixelsPtr());
    // Космос
    Image imgSpace;
    if (!imgSpace.loadFromFile("images/kosmos.png"))
    {
    return 3; // Отсутствует изображение космоса
    }
    Texture textureSpace;
    if (!textureSpace.loadFromImage(imgSpace))
    {
    return 4; // Не вдалося створити текстуру з зображення
    }
    RectangleShape gamingBackground(Vector2f(1280, 720));
    gamingBackground.setTexture(&textureSpace);
    while (win.isOpen())
    {
    Event event;
    while (win.pollEvent(event))
    {
    if (event.type == Event::Closed)
    win.close();
    }
    win.clear();
    win.draw(gamingBackground);
    win.display();
    }
    return 0;
    }

    • @user-ch1mt9eo8w
      @user-ch1mt9eo8w  8 місяців тому

      Доброго времени суток. Попробуйте использовать версию sfml 2.5 и загрузить репозиторий согласно инструкции в githab

    • @scherbakovss2012
      @scherbakovss2012 8 місяців тому +1

      @@user-ch1mt9eo8w я экспериментально понял, что оригинальная картинка 1280 на 720 загружается ибо return 1 отсутствует, а вот текстура не загружает это ретуон с другим кодом ошибки. Экспериментально уменьшил картинку на 36,68% и текстура ее отобразила, дальше понял что картинку можно программно утешать в размера и передать в текстуру, а ее в спрайт. Последний маштабируем до оригинального размера.
      Почему так не понял. Мне не очень нравить когда window.draw может текстуру,спрайт,фигуру принять параметром, а вот изображение отказаться.