File tree 2 files changed +30
-1
lines changed
2 files changed +30
-1
lines changed Original file line number Diff line number Diff line change @@ -5,13 +5,26 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
5
5
option (BUILD_SHARED_LIBS "Build shared libraries" OFF )
6
6
7
7
include (FetchContent)
8
+
8
9
FetchContent_Declare(SFML
9
10
GIT_REPOSITORY https://github.com/SFML/SFML.git
10
11
GIT_TAG 2.6.x)
11
12
FetchContent_MakeAvailable(SFML)
12
13
14
+ FetchContent_Declare(ImGui
15
+ GIT_REPOSITORY https://github.com/ocornut/imgui
16
+ GIT_TAG v1.89.9)
17
+ FetchContent_MakeAvailable(ImGui)
18
+ FetchContent_GetProperties(ImGui SOURCE_DIR IMGUI_DIR)
19
+
20
+ set (IMGUI_SFML_FIND_SFML OFF )
21
+ FetchContent_Declare(ImGui-SFML
22
+ GIT_REPOSITORY https://github.com/SFML/imgui-sfml
23
+ GIT_TAG 2.6.x)
24
+ FetchContent_MakeAvailable(ImGui-SFML)
25
+
13
26
add_executable (main src/main.cpp)
14
- target_link_libraries (main PRIVATE sfml-graphics)
27
+ target_link_libraries (main PRIVATE sfml-graphics ImGui-SFML::ImGui-SFML )
15
28
target_compile_features (main PRIVATE cxx_std_17)
16
29
17
30
if (WIN32 )
Original file line number Diff line number Diff line change 1
1
#include < SFML/Graphics.hpp>
2
+ #include < imgui-SFML.h>
3
+ #include < imgui.h>
2
4
3
5
int main ()
4
6
{
5
7
auto window = sf::RenderWindow{ { 1920u , 1080u }, " CMake SFML Project" };
6
8
window.setFramerateLimit (144 );
9
+ if (!ImGui::SFML::Init (window))
10
+ return -1 ;
7
11
12
+ sf::Clock clock ;
8
13
while (window.isOpen ())
9
14
{
10
15
for (auto event = sf::Event{}; window.pollEvent (event);)
11
16
{
17
+ ImGui::SFML::ProcessEvent (window, event);
18
+
12
19
if (event.type == sf::Event::Closed)
13
20
{
14
21
window.close ();
15
22
}
16
23
}
17
24
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
+
18
31
window.clear ();
32
+ ImGui::SFML::Render (window);
19
33
window.display ();
20
34
}
35
+
36
+ ImGui::SFML::Shutdown ();
21
37
}
You can’t perform that action at this time.
0 commit comments