Skip to content

Commit be1a4a3

Browse files
committed
readme: add initial readme
1 parent d2d812d commit be1a4a3

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

README.md

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# mainui_cpp
2+
3+
Main Menu UI for Xash3D FWGS engine, built entirely in C++.
4+
5+
Key features:
6+
* Custom font renderer with multiple backends based on FreeType, stb_truetype and GDI on Windows
7+
* Unicode and l10n support
8+
* Completely self-contained, just clone this repo (with --recursive) and add to your mod
9+
* Complex widget containers system, ability to put widget into containers into container
10+
* Window system as a continuation of containers system
11+
* Client-side menus (needs to be documented)
12+
13+
### Including mainui_cpp in your mod
14+
15+
1. Clone this repo: `git clone --recursive https://github.com/FWGS/mainui_cpp` to your mod source code tree.
16+
2. If you use:
17+
* CMake: invoke `add_subdirectory(mainui_cpp)` in your CMakeLists.txt file
18+
* Waf/WAiFu: invoke `ctx.add_subdirectory('mainui_cpp')` in your wscript file
19+
* Visual Studio: if you want to build it from your mod tree, include `vs2022/mainui_cpp.vcxproj` to your mod solution, or use `vs2022/mainui_cpp.sln`.
20+
3. Place your built `menu.dll`/`libmenu.so` ALONGSIDE your `client.dll`/`client.so`.
21+
4. Check that everything is working and happy hacking!
22+
23+
If you have any troubles setting this up, create an issue in https://github.com/FWGS/mainui_cpp/issues.
24+
25+
### Notes and restrictions
26+
27+
* mainui_cpp doesn't supports original Xash3D anymore. If it's possible, you can switch to Xash3D FWGS, otherwise you're on your own. I will accept patches to enable other Xash3D forks, but I won't support them on my own.
28+

0 commit comments

Comments
 (0)