Текст отображается в неправильном положенииJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Текст отображается в неправильном положении

Сообщение Anonymous »

Я пытаюсь отобразить текст в определенной позиции с помощью этих функций:

Код: Выделить всё

public void renderText(Vec3d pos) {
var client = MinecraftClient.getInstance();
if (client == null) return;
var textRenderer = client.textRenderer;

if (buffer == null) return;
matrixStack.push();

Render3DUtils.calculateModelViewMatrix(matrixStack, pos, camera);
matrixStack.scale(-0.025f, -0.025f, 0);

textRenderer.draw(Text.literal("123"), 0, 0, 0xffffffff, true, matrixStack.peek().getPositionMatrix(),
MinecraftClient.getInstance().getBufferBuilders().getEntityVertexConsumers(),
TextRenderer.TextLayerType.NORMAL,
0, 0xF000F0);

matrixStack.pop();
}

Код: Выделить всё

public static void calculateModelViewMatrix(MatrixStack matrixStack, Vec3d worldPos, Camera camera) {
Quaternionf inverseRotation = new Quaternionf();
camera.getRotation().conjugate(inverseRotation);
matrixStack.multiply(inverseRotation);
matrixStack.translate(
(float)-camera.getPos().x,
(float)-camera.getPos().y,
(float)-camera.getPos().z
);
matrixStack.translate(
(float)worldPos.x,
(float)worldPos.y,
(float)worldPos.z
);
}
Но оно вообще отображается некорректно. Текст меняет свое положение и отображается не в том месте. Я пытаюсь отобразить его в позиции (0, 0, 0) и вот что получаю:
Изображение

(Он должен отображаться в позиции красной шерсти).

Подробнее здесь: https://stackoverflow.com/questions/798 ... t-position
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»