File tree Expand file tree Collapse file tree 2 files changed +33
-1
lines changed Expand file tree Collapse file tree 2 files changed +33
-1
lines changed Original file line number Diff line number Diff line change @@ -11,7 +11,23 @@ FetchContent_Declare(SFML
1111    EXCLUDE_FROM_ALL 
1212    SYSTEM )
1313FetchContent_MakeAvailable(SFML)
14+ FetchContent_Declare(ImGui
15+     GIT_REPOSITORY https://github.com/ocornut/imgui
16+     GIT_TAG v1.91.1
17+     GIT_SHALLOW ON 
18+     EXCLUDE_FROM_ALL 
19+     SYSTEM )
20+ FetchContent_MakeAvailable(ImGui)
21+ FetchContent_GetProperties(ImGui SOURCE_DIR IMGUI_DIR)
22+ set (IMGUI_SFML_FIND_SFML OFF )
23+ FetchContent_Declare(ImGui-SFML
24+     GIT_REPOSITORY https://github.com/SFML/imgui-sfml
25+     GIT_TAG v3.0
26+     GIT_SHALLOW ON 
27+     EXCLUDE_FROM_ALL 
28+     SYSTEM )
29+ FetchContent_MakeAvailable(ImGui-SFML)
1430
1531add_executable (main src/main.cpp)
1632target_compile_features (main PRIVATE  cxx_std_17)
17- target_link_libraries (main PRIVATE  SFML::Graphics)
33+ target_link_libraries (main PRIVATE  SFML::Graphics ImGui-SFML::ImGui-SFML )
Original file line number Diff line number Diff line change 11#include  < SFML/Graphics.hpp> 
2+ #include  < imgui-SFML.h> 
3+ #include  < imgui.h> 
24
35int  main ()
46{
57    auto  window = sf::RenderWindow (sf::VideoMode ({1920u , 1080u }), " CMake SFML Project"  );
68    window.setFramerateLimit (144 );
9+     if  (!ImGui::SFML::Init (window))
10+         return  -1 ;
711
12+     sf::Clock clock;
813    while  (window.isOpen ())
914    {
1015        while  (const  std::optional event = window.pollEvent ())
1116        {
17+             ImGui::SFML::ProcessEvent (window, *event);
18+ 
1219            if  (event->is <sf::Event::Closed>())
1320            {
1421                window.close ();
1522            }
1623        }
1724
25+         ImGui::SFML::Update (window, clock.restart ());
26+ 
27+         ImGui::Begin (" Hello, world!"  );
28+         ImGui::Button (" Look at this pretty button"  );
29+         ImGui::End ();
30+ 
1831        window.clear ();
32+         ImGui::SFML::Render (window);
1933        window.display ();
2034    }
35+ 
36+     ImGui::SFML::Shutdown ();
2137}
    
 
   
 
     
   
   
          
     
  
    
     
 
    
      
     
 
     
    You can’t perform that action at this time.
  
 
    
  
     
    
      
        
     
 
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments