Skip to content

Commit 4953111

Browse files
committed
Updating doc for release
1 parent c3cf630 commit 4953111

File tree

2 files changed

+53
-50
lines changed

2 files changed

+53
-50
lines changed

Code/Client/NetImgui_Api.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@
44
//! @Name : NetImgui
55
//=================================================================================================
66
//! @author : Sammy Fatnassi
7-
//! @date : 2026/01/01
8-
//! @version : v1.12.3
7+
//! @date : 2026/01/04
8+
//! @version : v1.13.0
99
//! @Details : For integration info : https://github.com/sammyfreg/netImgui/wiki
1010
//=================================================================================================
11-
#define NETIMGUI_VERSION "1.12.3" // Imported Texture rework into dev branch
12-
#define NETIMGUI_VERSION_NUM 11203
11+
#define NETIMGUI_VERSION "1.13.0" // Release of v 1.13
12+
#define NETIMGUI_VERSION_NUM 11300
1313

1414

1515
//-------------------------------------------------------------------------------------------------

README.md

Lines changed: 49 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
1-
2-
<p align="center"><img src="https://raw.githubusercontent.com/wiki/sammyfreg/netImgui/Web/img/netImguiLogo.png" width=128 height=128></p>
3-
1+
<table width="100%"><tr><td align="center" valign="middle" bgcolor="white"><img src="https://raw.githubusercontent.com/wiki/sammyfreg/netImgui/Web/img/netImguiLogo.png" width=128 height=128></td></tr></table>
42

53
# Summary
4+
65
[![(Build VS2022 Main)](https://github.com/sammyfreg/netImgui/actions/workflows/msbuild_vs2022_main.yml/badge.svg?branch=master)](https://github.com/sammyfreg/netImgui/actions/workflows/msbuild_vs2022_main.yml)
76
[![(Build VS2022 Dev)](https://github.com/sammyfreg/netImgui/actions/workflows/msbuild_vs2022_dev.yml/badge.svg?branch=dev)](https://github.com/sammyfreg/netImgui/actions/workflows/msbuild_vs2022_dev.yml)
87

98
[![Release Version](https://img.shields.io/github/release/sammyfreg/netImgui.svg)](https://github.com/sammyfreg/netImgui/releases)
109
![Release Date](https://shields.io/github/release-date/sammyfreg/netImgui)
11-
[![Downloads](https://shields.io/github/downloads/sammyfreg/netImgui/total)]((https://github.com/sammyfreg/netImgui/releases))
10+
[![Downloads](https://shields.io/github/downloads/sammyfreg/netImgui/total)](https://github.com/sammyfreg/netImgui/releases)
1211
[![Forks](https://img.shields.io/github/forks/sammyfreg/netImgui)](https://github.com/sammyfreg/netImgui/network/members)
1312
![Stars](https://img.shields.io/github/stars/sammyfreg/netImgui)
1413
[![License](https://img.shields.io/github/license/sammyfreg/netImgui)](https://github.com/sammyfreg/netImgui/blob/master/LICENSE.txt)
@@ -43,15 +42,10 @@ Here is a quick overview of the logic behind using the **NetImgui Server** and o
4342
![NetImgui](https://raw.githubusercontent.com/wiki/sammyfreg/netImgui/Web/img/NetImguiExplanation.gif)
4443

4544
**1.** *(NetImgui Server)* **Capture user's inputs with mouse/keyboard**
46-
4745
**2.** *(NetImgui Server)* **Send the Inputs to client and request a draw update**
48-
4946
**3.** *(NetImgui Client)* **Draw the *Dear ImGui* content normally** (without need to display on client)
50-
5147
**4.** *(NetImgui Client)* **Send the drawing results to server**
52-
5348
**5.** *(NetImgui Server)* **Receives the drawing result and display them**
54-
5549
**6. Go back to 1**
5650

5751
#### Note
@@ -71,26 +65,24 @@ The NetImgui Server application currently compiles under Windows and Mac, but fe
7165
- Replace call to `ImGui::NewFrame()` with `NetImgui::NewFrame()`.
7266
- Replace call to `ImGui::Render()` / `ImGui::EndFrame()` with `NetImgui::EndFrame()`.
7367
4. Start the **NetImgui** server application and connect your application to it.
74-
7568
- *More integration details can be found on the [Wiki](https://github.com/sammyfreg/netImgui/wiki "Wiki").*
7669
- *Multiple samples are also provided in the depot, providing additional insights.*
7770

7871
#### Note
7972
- Connection between **NetImgui Server** and a **netImGui Client** can be achieved in 4 different ways.
80-
- **Server waits for connection and** :
81-
- (A) Client calls `ConnectToApp()` with the Server address.
82-
- **Client calls `ConnectFromApp()` then waits for connection and** :
83-
- (B) Server configure the Client's address and connect to it.
84-
- (C) Server is launched with the Client's address in the commandline.
85-
- (D) Server receives a Client's address from another application, through [Windows named pipe](https://docs.microsoft.com/en-us/windows/win32/ipc/named-pipes "Windows named pipe") : \\.\pipe\netImgui'.
73+
- **Server waits for connection and** :
74+
- (1) Client calls `ConnectToApp()` with the Server address.
75+
- **Client calls `ConnectFromApp()` then waits for connection and** :
76+
- (2) Server configure the Client's address and connect to it.
77+
- (3) Server is launched with the Client's address in the commandline.
78+
- (4) Server receives a Client's address from another application, through [Windows named pipe](https://docs.microsoft.com/en-us/windows/win32/ipc/named-pipes "Windows named pipe") : \\.\pipe\netImgui'.
8679

8780

88-
- **Advanced:** Different **Dear ImGui** content can be displayed locally and remotely at the same time. Look at *SampleDualUI* for more information.
89-
90-
- `NetImgui::IsConnected()` and `NetImgui::IsDrawingRemote()` can be used during Dear ImGui drawing, helping to make selective decisions on the content to draw based on where it will be displayed.
81+
- **Advanced:** Different **Dear ImGui** content can be displayed locally and remotely at the same time.
82+
- `NetImgui::IsConnected()` and `NetImgui::IsDrawingRemote()` can be used during Dear ImGui drawing, helping to make selective decisions on the debug ui content based on this.
9183

9284
#### Dear Imgui versions
93-
- Tested against **Dear ImGui** versions **1.71** to **1.90**.
85+
- Tested against **Dear ImGui** versions **1.71** to **1.92.5**.
9486
- *Note*: Should support other versions without too much difficulties.
9587
- *Note*: See **Build\GenerateCompatibilityTest.bat** for an exact list of tested versions.
9688

@@ -112,40 +104,51 @@ Related projects making use of **NetImgui**.
112104
- ~~Support of monitor DPI~~
113105
- ~~Support for connection takeover~~
114106

115-
### Version 1.12.1
116-
(2024/12/10)
117-
- **API Changes**
118-
- None
119-
- **Various small changes and fixes**
120-
- Fixed a Copy/paste and a Disconnect crash
121-
122-
### Version 1.12
123-
(2024/12/08)
107+
### Version 1.13
108+
109+
(2026/01/05)
124110
- **API Changes**
125-
- None
111+
- Added support of new *ImTextureRef* parameter to **NetImgui::SetBackground(...)**
112+
- *NetImgui::eTexFormat* enum entries shuffled
113+
- *'FontCreation callback'* parameter in **ConnectToApp(...)** and **ConnectFromApp(...)** now ignored in **Dear ImGui 1.92+**
114+
- No need to regenerate texture atlas on DPI change anymore, making the callback pointless
115+
- Callback is left as a parameter for programs using **Dear ImGui** versions from before 1.92
116+
- If you did implement the callback, the code can be safely removed (on version 1.92+)
117+
- Disabled Custom Texture format
118+
- Allows transmitting data for user managed custom texture format but has not been made functional with updated texture system yet
126119
- **Backend change**
127-
- Networking protocol has been reworked
128-
- If you are using our own networking layer, you will need to support changes made to *'DataReceive'* and *'DataSend'* and the addition of *'DataReceivePending'*
129-
- This was done to drastically improve performances by using non-blocking sockets
130-
- For more details, please look at the changes done to *NetImgui_NetworkWin32.cpp* or *NetImgui_NetworkUE4.cpp*
131-
- ***Note:** The Posix network code has not been updated to new protocol yet, only Windows and UE4 have been done*
132-
- **Various small changes and fixes**
133-
- Tested **Dear ImGui** versions up to 1.91.5 and updated the **NetImgui Server** to it (docking branch).
134-
120+
- Upgraded to [Dear ImGui 1.92.5](https://github.com/ocornut/imgui/releases/tag/v1.92.5)
121+
- Added support for new Dear ImGui 1.92+ font atlas
122+
- Font texture atlas contains needed glyphs only, doesn't pre-render all glyphs at each font point
123+
- This means much a smaller texture
124+
- Improved handling of monitor DPI
125+
- Transparent to library users
126+
- Added support for Dear ImGui managed textures
127+
- Automatic hookup into textures creations/update/destruction
128+
- Partial texture region update support
129+
- **Samples**
130+
- Reworked *'Sample Textures'* to demonstrate...
131+
- Creating, updating and using **Dear ImGui** managed textures
132+
- **NetImgui** automatically forwarding all of the managed textures operations to the **NetImgui Server**
133+
- The ability of still using your own textures objects
134+
- These need to be manually send to the **NetImgui Server**
135+
- Removed *Sample DPI*
136+
- Uneeded now that DPI is automatically handle without user needing to implement anything
137+
- Removed *Sample DualUI*
138+
- Can no longuer re-use same remote Imgui draw data to re-use for local display so remove it
139+
- **Misc**
140+
- Updated Sharpmake version to 0.92
141+
- Added *Visual Studio 2026* support
142+
- Used by Server and Samples solutions generation (not needed by library users of **NetImgui's** client code)
143+
135144
### Older
136145
[Release Notes](https://github.com/sammyfreg/netImgui/wiki/Release-notes)
137146

138-
# Contact
139-
It seems that various gaming studios are making use of this code. I would enjoy hearing back from library users, for general comments and feedbacks. Always interested in learning of people usercase. I can be reached through my [**GitHub profile**](https://github.com/sammyfreg) (email or twitter) or creating a new entry in [**GitHub Issue**](https://github.com/sammyfreg/netImgui/issues "GitHub Issues").
140-
141147
# Credits
142148
Sincere thanks to [Omar Cornut](https://github.com/ocornut/imgui/commits?author=ocornut) for the incredible work on **[Dear ImGui](https://github.com/ocornut/imgui)**.
143-
144149
Support of image formats via [**stb_image.h**](https://github.com/nothings/stb/blob/master/stb_image.h) by Sean Barrett (public domain).
145-
146150
Support of Solutions generation via [**Sharpmake**](https://github.com/ubisoft/Sharpmake) by Ubisoft (public domain).
147-
148151
Support of Posix sockets thanks to [Aaron Lieberman](https://github.com/AaronLieberman).
149-
150152
Support of json save file via [**nlohmann json**](https://github.com/nlohmann/json)
151-
<p align="center"><img src="https://raw.githubusercontent.com/wiki/sammyfreg/netImgui/Web/img/netImguiLogo.png" width=128 height=128></p>
153+
154+
<p align="center"><img src="https://raw.githubusercontent.com/wiki/sammyfreg/netImgui/Web/img/netImguiLogo.png" width=128 height=128></p>

0 commit comments

Comments
 (0)