• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

SFML, IMGUI - instalacja

0 głosów
717 wizyt
pytanie zadane 26 marca 2017 w C i C++ przez sofnir Gaduła (4,690 p.)

Hej, mam problem ze zrozumieniem procesu instalacyjnego biblioteki IMGUI.

Setting up:

  • Download ImGui
  • Add ImGui folder to your include directories (kopiuję ten folder do folderu, w którym mam SFMLa do podfolderu include C:\SFML\SFML-2.4.2\include)
  • Add imgui.cpp and imgui_draw.cpp to your build/project (kopiuję te pliki do mojego projektu, tam gdzie mam również plik main.cpp C:\Users\Maciej\Desktop\Maciej\C++ SFML\IMGUI_TEST\IMGUI_TEST)
  • Copy the contents of imconfig-SFML.h to your imconfig.h file. (to be able to cast ImVec2 to sf::Vector2f and vice versa) (kopiuję zawartość tego pliku i wklejam do drugiego, w miejsce na samym końcu pliku)
  • Add a folder which contains imgui-SFML.h to your include directories (czyli cały ten folder wklejam do folderu, w którym mam SMFLa i podfolder include C:\SFML\SFML-2.4.2\include)
  • Add imgui-SFML.cpp to your build/project (czyli wklejam ten plik do mjego projektu, tam gdzie mam plik main.cpp C:\Users\Maciej\Desktop\Maciej\C++ SFML\IMGUI_TEST\IMGUI_TEST)

Po wykonaniu wszystiego używam przykładowego programu.

#include "imgui.h"
#include "imgui-SFML.h"

#include <SFML/Graphics/RenderWindow.hpp>
#include <SFML/System/Clock.hpp>
#include <SFML/Window/Event.hpp>
#include <SFML/Graphics/CircleShape.hpp>

int main()
{
    sf::RenderWindow window(sf::VideoMode(640, 480), "ImGui + SFML = <3");
    window.setFramerateLimit(60);
    ImGui::SFML::Init(window);

    sf::CircleShape shape(100.f);
    shape.setFillColor(sf::Color::Green);

    sf::Clock deltaClock;
    while (window.isOpen()) {
        sf::Event event;
        while (window.pollEvent(event)) {
            ImGui::SFML::ProcessEvent(event);

            if (event.type == sf::Event::Closed) {
                window.close();
            }
        }

        ImGui::SFML::Update(window, deltaClock.restart());

        ImGui::Begin("Hello, world!");
        ImGui::Button("Look at this pretty button");
        ImGui::End();

        window.clear();
        window.draw(shape);
        ImGui::Render();
        window.display();
    }

    ImGui::SFML::Shutdown();
}

Miałem błąd cannot open imgui.h oraz cannot open imgui-SFML.h, dodałem więc te pliki również do mojego projektu i wtedy te błędy zniknęły, pojawił się błąd, cannot open imconfig.h, to też go dodałem i też zniknął ten błąd. 

Teraz zostały mi takie błędy:

  Cannot open include file: 'imgui_internal.h', 'imgui_internal.h', 'imgui.h' no such files or directory.

Inkluduję je w taki sposób: C:\SFML\SFML-2.4.2\include;%(AdditionalIncludeDirectories)
 Czyli nie może otworzyć tych plików, tylko teraz już nie wiem co zrobić, żeby to naprawić, możliwe, że robię coś źle według instrukcji, dlatego opisałem wyżej krok po kroku co robię.

Pozdrawiam i bardzo proszę o pomoc

komentarz 6 września 2017 przez SimiVoid Pasjonat (19,790 p.)
Robisz to źle:
#include "imgui.h"
#include "imgui-SFML.h"

A powinno być:

#include <imgui.h>
#include <imgui-SFML.h>
komentarz 6 września 2017 przez SimiVoid Pasjonat (19,790 p.)
Zrób tak jak ci pokazałem i usuń te pliki co dodałeś bo one się nie przydadzą bo masz je tam gdzie SFML

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
0 odpowiedzi 211 wizyt
pytanie zadane 9 kwietnia 2021 w C i C++ przez Kochany 1337 Użytkownik (860 p.)
0 głosów
0 odpowiedzi 362 wizyt
pytanie zadane 8 czerwca 2019 w C i C++ przez MegaaSoft Obywatel (1,430 p.)
0 głosów
0 odpowiedzi 188 wizyt

93,607 zapytań

142,529 odpowiedzi

322,999 komentarzy

63,098 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...