imgui_gm
A downloadable library for Windows
Download NowName your own price
An ImGui wrapper for modern GameMaker
Features
- Support for the latest versions of GameMaker and ImGui
- This includes window docking, tables, and various additions and improvements made in the docking branch of ImGui
- Simple wrappers all contained in a single ImGui script
- Native support for passing GameMaker sprites and surfaces to ImGui
- Free and open source!
Usage
- Download the extension and import it into your GameMaker project (Tools -> Import Local Package)
- ⚠️ See "LTS Support" if using GameMaker LTS
- Create a persistent object and call the following functions in their respective events:
- ImGui.__Initialize() in the create event
- ImGui.__Update() in any updating event (suggested Begin Step)
- ImGui.__Render() in any rendering event (suggested: Draw GUI)
- Start using ImGui in the step event! See objExample's step event for some example GML.
⚠️ NOTICE
This build of ImGui_GM is Windows only!
As of 1/31/2023, ImGui_GM is usable in the v2023.1.0.58 release of GameMaker stable. You can download the latest version of GameMaker from here. See the LTS Support article on the wiki for information on using ImGui_GM with older versions of GameMaker.
FAQ
- Q: I can't find "X" function?
- A: Either GameMaker's autocomplete is glitched or the function hasn't been wrapped. Check the "ImGui.gml" script to see all wrapped functions
- Q: Function "X" wasn't in the script, what should I do?
- A: Creating wrapper functions is a lotta work and I'm only one person! But you can submit an issue on GitHub or create a thread on community page to give me a heads up!
- Q: How do I adjust the depth of what ImGui renders?
- A: Calling ImGui.__Render() submits all verticies from ImGui, so depth is tied to wherever the function is called
- Q: Why is the game silently closing or acting strange when using ImGui_GM?
- A: This could be anything, BUT! It could also very likely be an ImGui exception occurring. By default, the extension uses the release DLL for performance; but you can extract "debug.zip" in "extensions/ImGui_GM/" to enable assertion popups. Just be sure to keep the release DLL and replace it back for best performance!
- Q: Where can I download the latest version of GameMaker?
- A: From this page here! Make sure you're using at least v2023.1.0.58 to ensure compatibility
- Q: What's that... thing in the top left on the icon?
- A: I have absolutely no idea how that thing got there?!
Documentation
- JSDoc annotations can be found for each wrapper function in the "ImGui.gml" script. Overall API coverage is documented in COVERAGE.MD on the GitHub. Additionally, the ImGui_GM GitHub wiki includes documentation on any differences from native ImGui
- In general, I've tried to wrap functions with identical arguments as their C++ counterparts, so you'll probably be okay to reference existing ImGui code. imgui_demo.cpp from the ImGui repo is super helpful!
Source Code
- ImGui_GM's source can be found on GitHub
Special Thanks
- Omar Cornut for creating Dear ImGui
- rousr for creating ImGuiGML which inspired development of this
- nkrapivin for helping with extension interface magic
- kraifpatrik's GMD3D11 for serving as reference on how to retrieve textures from GameMaker
Status | In development |
Category | Other |
Platforms | Windows |
Rating | Rated 5.0 out of 5 stars (4 total ratings) |
Author | nommiin |
Made with | GameMaker |
Tags | extension, GameMaker, imgui, library |
Code license | MIT License |
Links | Source code |
Download
Download NowName your own price
Click download now to get access to the following files:
imgui_gm_v1_0_17.yymps 2.4 MB
imgui_gm_v1_0_16.yymps 2.5 MB
imgui_gm_v1_0_15.yymps 2.3 MB
imgui_gm_v1_0_14.yymps 3.8 MB
imgui_gm_v1_0_13.yymps 3.5 MB
imgui_gm_v1_0_12.yymps 2.5 MB
imgui_gm_v1_0_11.yymps 2.3 MB
imgui_gm_v1_0_10.yymps 2.3 MB
imgui_gm_v1_0_9.yymps 2.3 MB
imgui_gm_v1_0_8.yymps 2.3 MB
imgui_gm_v1_0_7.yymps 2.3 MB
imgui_gm_v1_0_6.yymps 2.3 MB
imgui_gm_v1_0_5.yymps 3 MB
imgui_gm_v1_0_4.yymps 2.9 MB
imgui_gm_v1_0_3.yymps 2.8 MB
imgui_gm_v1_0_2.yymps 2.6 MB
imgui_gm_v1_0_1.yymps 2.6 MB
imgui_gm_v1_0_0.yymps 2.7 MB
Development log
- ImGui_GM v1.0.17Mar 09, 2024
- ImGui_GM v1.0.16Dec 31, 2023
- ImGui_GM v1.0.15Nov 07, 2023
- ImGui_GM v1.0.14Oct 27, 2023
- ImGui_GM v1.0.13Oct 16, 2023
- ImGui_GM v1.0.12Mar 11, 2023
- ImGui_GM v1.0.11Mar 03, 2023
- ImGui_GM v1.0.10Feb 23, 2023