NetImgui Versions Save

'Dear Imgui' remote access library and application

v1.10.0

4 months ago

NetImgui

Version 1.10

(2023/12/30)

  • API Changes
    • ConnectToApp() and ConnectFromApp() functions now accept a callback to be used by the NetImgui Server when wanting to update the font to a specific DPI scale.
      • Can be left untouched, with null used by default.
      • Without a callback, we apply the text scaling to ImGuiIO.FontGlobalScale instead of requesting the generation of a new font with increased pixel size.
      • Using ImGuiIO.FontGlobalScale gives a blurier text result than recreating the font with the exact DPI needed.
      • See SampleFontDPI for more info.
    • SendDataTexture() now support a new texture format kTexFmtCustom.
      • It requires that the dataSize parameter is specified since we can't deduce it anymore (but not used for other formats)
      • It allows user to send a texture command with custom data that also needs to be added to NetImguiServer codebase.
      • This could be used for movie streaming, etc...
      • See SampleTexture for more info.
  • Upgraded Dear ImGui support to 1.90
  • Added monitor DPI support
    • The Server now scale the text up on a high resolution monitor, so it can still be read
    • The Server font atlas is regenerated with a higher pixel size to match the resolution
    • The Client connected will be asked to regenerate their font atlas if they provided a callback when connecting
      • When this callback is received, the client codebase should regenerate the font atlas using the provided scale
      • When no callback has been assigned, the client automatically relies on ImGuiIO.FontGlobalScale when drawing (blurier results)
      • See SampleFontDPI for more info.
  • Added Clipboard support
    • Can now seamlessly use text clipboard between Client and Server!
    • Text copied on the Server PC is now sent over to the NetImgui Clients and can be pasted inside their Dear ImGui content
    • Text copied inside the Client's Dear ImGui content is now received by the Server PC and can be used on it
  • Shared Client configs
    • When adding a Client configuration on the NetImgui Server application, the property Shared can now be specified
    • When enabled, it will save the config in a User Directory instead of the current Working Directory
    • This means that user can have NetImgui Server applications in various locations, but they can all still share the same Client Configs.
    • Note: Requires that the function HAL_GetUserSettingFolder() is implemented in the NetImgui Server codebase. It has been done for Windows.
  • Various small changes and fixes
    • When the NetImgui Server config file netImgui.cfg is detected readonly, now tries to create a second one. This should help if user submit the default config file to perforce but still want to add new Clients.
    • Quickly typed text was dropping characters when received by Client
    • DirectX textures error when quickly recreating them

v1.9.0

1 year ago
  • Upgraded Dear ImGui support to 1.89.5
  • Various small changes and fixes

NetImgui

Version 1.9

(2023/05/04)

  • API Changes
    • None, but communication version increase, need both client code and server exe to match.

v1.8.1

1 year ago
  • Updated missing Api number update in api file
  • Support for new Dear ImGui input event architecture
  • Various small changes and fixes

NetImgui

Version 1.8.1

(2022/07/18)

  • API Changes
    • None
  • Dear ImGui 1.87 input event support
    • Input handling refactored to handle new Dear ImGui input event system (thanks to @lemantisee)
    • Added gamepad support
  • Compatibility tests
    • Now compile simple compatibility app for each Dear ImGui version supported
    • Allows to make sure the NetImgui Server works properly against any Dear ImGui version
  • Other Changes
    • 32bits support bugs fix in client code
    • NetImgui server popup now centered on main window
    • Some OpenGL fixes
    • Visual Studio 2022 LLVM support fix

v1.8.0

1 year ago
  • Support for new Dear ImGui input event architecture
  • Various small changes and fixes

NetImgui

Version 1.8

(2022/07/18)

  • API Changes
    • None
  • Dear ImGui 1.87 input event support
    • Input handling refactored to handle new Dear ImGui input event system (thanks to @lemantisee)
    • Added gamepad support
  • Compatibility tests
    • Now compile simple compatibility app for each Dear ImGui version supported
    • Allows to make sure the NetImgui Server works properly against any Dear ImGui version
  • Other Changes
    • 32bits support bugs fix in client code
    • NetImgui server popup now centered on main window
    • Some OpenGL fixes
    • Visual Studio 2022 LLVM support fix

v1.7.5

2 years ago

Fixed a memory leak in the NetImguiServer application. (Client code remains unchanged).

NetImgui

Version 1.7.5

(2022/01/31)

  • API Changes
    • None
  • Bug fixes
    • NetImgui Server memory leak fix

v1.7.4

2 years ago

Note: Please use release v1.7.5. (Contains a memory leak fix on the NetImguiServer application)

Description A few bug fixes, to resolve some out of sync issue when compression active.

NetImgui

Version 1.7.4

(2022/01/30)

  • API Changes
    • Removed the bWait parameter from Shutdown()
      • Always wait for Shutdown completion before returning now
      • This prevents multithread data release issues
    • Added a NETIMGUI_API define prefix to functions exported in NetImgui_Api.h
      • Similar to IMGUI_API, allows library user to control dll import/export
      • Takes the same value as IMGUI_API by default
  • Bug fixes
    • Compression feature causing some out of sync issue with NetImgui Server
    • 32bits index support crash

v1.7.0

2 years ago

New

  • Data compression to greatly reduce bandwidth.

    • Can reduce the bandwidth by 100x+ with low overhead !
  • Visual Studio 2021 support.

  • NetImgui Server OpenGL3 support

NetImgui

Version 1.7

(2022/01/10)

  • API Changes
    • Added SetCompressionMode(...) / GetCompressionMode(), allow library user to manage the data compression feature
      • By default, Client relies on Server Setting
  • Data Compressions Support
    • Drawing data generated by the Client can now be compressed before being sent to Server
      • Greatly reduce the bandwidth between Client/Server at a negligible cost on the Client
      • Using Delta Compression. The draw data usually vary little from previous frame. Sending only the changed bytes produce great results at low overhead
    • Highly dynamic UI content lower improvements
    • A new sample (SampleCompression) demonstrate the use of data compression and its metrics
      • At 30 Fps, data rate send from client goes from ~ 3400 KB/s to ~ 22 KB/s (~ 160x improvement !)
      • Since it depends on static content, moving around a Window reduce the benefits
  • Other Changes
    • Added OpenGL3 support to NetImgui Server
      • Still DirectX11 by default
      • OpenGL3 support helps with the Server Application port to non Windows OS
      • To enable, set HAL_API_PLATFORM_GLFW_GL3 define to 1 and HAL_API_PLATFORM_WIN32_DX11 to 0
    • Added support for Visual Studio 2021
    • Support up to Dear ImGui 1.86 has been tested

v1.6.0

2 years ago
  • Mostly some bug fixes **

NetImgui

Version 1.6

(2021/08/09)

  • API Changes
    • None
  • Other Changes
    • Mostly some small bug fixes
    • Fixed issue with keyboard input
    • Fixed 16/32bits index handling (NetImgui Server app now handle both case without recompiling)

v1.5.0

2 years ago
  • Dear ImGui 1.83 support
  • Mostly some bug fixes and reduction of CPU/GPU usage by the NetImgui Server

NetImgui

Release notes

(2021/05/30)

  • API Changes
    • None
  • Other Changes
    • Mostly some small bug fixes
    • Reduced NetImgui server CPU/GPU usage
    • Better handling of NetImgui server's window move between 4K and lower resolution monitors

v1.4.0

3 years ago

Release of NetImgui v1.4

  • Dear ImGui 1.81 support
  • Auto interception of Dear ImGui ImGui::NewFrame() / ImGui::Render() (no longuer need to use NetImgui::NewFrame() / NetImgui::EndFrame())
  • User can now specify their own custom background image and color in their Client window.
  • Updated the Client background rendering on the Server, for better handling of alpha channel (makes text more readable)
  • Some bug fixes NetImgui

Release notes

(2021/03/13)

  • API Changes
    • Added SetBackground(...) letting user configure the client window background appearance
      • The new sample SampleBackground demonstrate its usage.
    • Removed support of empty API functions when NETIMGUI_ENABLED is false
      • Keeps NetImgui client code clutter to minimum.
  • New
    • Auto interception of Dear ImGui ImGui::NewFrame() / ImGui::Render()
      • Using Dear ImGui 1.81's Callbacks support, replacing theses Dear ImGui functions call with NetImgui::NewFrame() / NetImgui::EndFrame() can now be avoided
      • This means less changes to existing codebase wanting to use NetImgui, only requiring a single call to :
        • Startup
        • Shutdown
        • ConnectToApp or ConnectFromApp
      • However, calling directly NetImgui::NewFrame() / NetImgui::EndFrame() has the additional benefit of being able to skip drawing when not needed