跳到正文

CraftUI

作者:Igrium

An implementation of Dear ImGui on top of Minecraft for in-game editors.

收藏

截图

介绍

中文介绍正在准备中,下面暂时显示原文。

CraftUI

A framework to use Dear ImGui in Minecraft


Over the past few years, I’ve noticed a growing use of ImGui in utility mods such as Flashback. However,
due to technical constraints, none of these mods can be compatible with each other (and if they are, they’re extremely jank).

CraftUI is a framework that attempts to fix this. Being a minecraft-specific wrapper for Dear ImGui, it handles mounting
and rendering the ImGui native code, cross-mod compatibility, as well as providing a set of extra, Minecraft-specific utility systems.

Note: This framework is still in development, and public API functionality might change.

It also doesn’t support all Minecraft versions right now.

Examples

Example of an editor UI
Some of the widgets ImGui provides

Features

CraftUI is built on ImGui Java, and by extension, contains all its features.
On top of that, it also includes:

  • Resource-pack-based font loading
  • User-definable themes (also resource-pack-based)
  • Game viewport resizing via dock-space
  • Native file browser access
  • Other various utilities

Getting Started

To preface, it’s important to have a basic understanding of Dear ImGui, and specifically ImGui Java, before using this library.
Any questions pertaining ImGui on its own will be redirected there.

With that said, to install, add the following to the repositories section of your buildscript:

repositories {
    // ...
    maven { url = 'https://jitpack.io' }
}

Then, in your dependencies section, add the following, replacing [version] with the desired version:

dependencies {
    // ...
    modImplementation 'com.github.Igrium:CraftUI:[version]'
}

And don’t forget to add it as a dependency in fabric.mod.json!

Once you have the framework installed and building, you can create a new UI application by extending CraftApp:

public class ExampleApp extends CraftApp {
    @Override
    protected void render(MinecraftClient client) {
        // ImGui rendering code here
    }
}

Now, to open the UI, call:

AppManager.openApp(new ExampleApp());

The app will now render atop the game until it is closed with exampleApp.close(). See testmod for a more in-depth example.

Important Notes:

  • Due to the size of the included native libraries, it is not recommended to bundle the framework itself with your mod.
  • The package com.igrium.craftui.impl is not considered part of the public API, and could change without warning!

常见问题

CraftUI 支持哪些 Minecraft 版本?

CraftUI 支持 Minecraft Java 版 1.21.4–26.3,共 3 个版本,可用的加载器:Fabric。下载时注意选择和你游戏版本一致的文件。

CraftUI 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅客户端。

评论

登录后评论和评分

Igrium 的其他作品

查看全部 →