diff --git a/src/client/kotlin/net/airgame/compose/ui/client/screen/ComposeScreen.kt b/src/client/kotlin/net/airgame/compose/ui/client/screen/ComposeScreen.kt index 945c993..5dc45f5 100644 --- a/src/client/kotlin/net/airgame/compose/ui/client/screen/ComposeScreen.kt +++ b/src/client/kotlin/net/airgame/compose/ui/client/screen/ComposeScreen.kt @@ -73,8 +73,15 @@ class ComposeScreen( private val frameDispatcher = FrameDispatcher(mainScope) { needRedraw.value = true } + + private val mcGuiScale = MinecraftClient.getInstance().options.guiScale.value.toFloat() + private val fontScaleValue = 1f private val scene: ComposeScene = MultiLayerComposeScene( - density = Density(MinecraftClient.getInstance().options.guiScale.value.toFloat() / 2), + density = if (mcGuiScale <= 0) { + Density(1f, fontScaleValue) + } else { + Density(mcGuiScale / 2, fontScaleValue) + }, size = IntSize(windowWidth, windowHeight), coroutineContext = Dispatchers.Main, invalidate = { frameDispatcher.scheduleFrame() }