Modern UI is a UI framework for desktop application development. Many of the structures are similar to Android, but the implementation can be quite different. The render engine uses OpenGL 4.5 core profile and can be multi-threaded, so the performance is much better than 2D graphics libraries drawn by CPU. The text engine is unicode-based and uses HarfBuzz and ICU4j, so it has a broad compatibility for various languages.
This project is still in early stages.
Releases for Minecraft Mod are available on CurseForge.
If you have any questions, feel free to join our Discord server.
- Modern UI
- Textures, Shaders, Models, Documents, Translations
- Sounds
- Third Party Libraries
- caffeine by Ben Manes
- flexmark-java by Atlassian Pty Ltd, Vladimir Schneider
- fastutil by Vigna
- Apache Log4j, IBM ICU4j, LWJGL
- Windows, Linux or macOS
- JDK 16.0.1 or above
- OpenGL 4.5 or above (see Mesa Zink for macOS users)
- (Optional) Forge 1.17.1-37.0.97
repositories {
maven {
name 'IzzelAliz Maven'
url 'https://maven.izzel.io/releases/'
}
}
dependencies {
implementation "icyllis.modernui:ModernUI-Core:${modernui_version}"
}
You need to regenerate run configurations.
minecraft {
runs {
client {
property 'mixin.env.remapRefMap', 'true'
property 'mixin.env.refMapRemappingFile', "${projectDir}/build/createSrgToMcp/output.srg"
}
server {
property 'mixin.env.remapRefMap', 'true'
property 'mixin.env.refMapRemappingFile', "${projectDir}/build/createSrgToMcp/output.srg"
}
}
}
configurations {
library
implementation.extendsFrom library
}
minecraft.runs.all {
lazyToken('minecraft_classpath') {
configurations.library.copyRecursive().resolve().collect { it.absolutePath }.join(File.pathSeparator)
}
}
dependencies {
library "icyllis.modernui:ModernUI-Core:${modernui_version}"
implementation fg.deobf("icyllis.modernui:ModernUI-Forge:${minecraft_version}-${modernui_version}")
}