Вопрос Смазливый бро

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
22 Мар 2022
Сообщения
349
Реакции
8

Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:

  • бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
  • маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
  • приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
  • обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.

Спасибо!

Я делаю таргет худ и то этого просто с красным треугольником бегал без рендера головы, подумал что уже надо сделать и пошёл набахал а там это в таргет худе

1752069740197.png
но рендер скинов которые дефолт типо alex steave ну и кто там ещё появился ВСЁ НОРМАЛЬНО они чёткие сочные.

вот сам рендер головы

фывфыв:
Expand Collapse Copy
    public static void drawHead(GuiGraphics guiGraphics, ResourceLocation skin, float x, float y, float width, float height, float radius, float alpha, float hurtPercent) {
        float pixelX = Math.round(x);
        float pixelY = Math.round(y);
        float pixelWidth = Math.round(width);
        float pixelHeight = Math.round(height);

        RenderSystem.enableBlend();
        RenderSystem.defaultBlendFunc();
        RenderSystem.disableCull();
        RenderSystem.disableDepthTest();

        RenderSystem.setShaderTexture(0, skin);

        Matrix4f matrix4f = guiGraphics.pose().last().pose();

        CompiledShaderProgram shader = RenderSystem.setShader(CoreShaders.RENDERTYPE_HEAD);

        if (shader != null) {
            if (shader.getUniform("StartCoords") != null) shader.getUniform("StartCoords").set(pixelX, pixelY);
            if (shader.getUniform("Size") != null) shader.getUniform("Size").set(pixelWidth, pixelHeight);
            if (shader.getUniform("Radius") != null) shader.getUniform("Radius").set(radius, radius, radius, radius);
            if (shader.getUniform("RectColor") != null) shader.getUniform("RectColor").set(1.0f, 1.0f, 1.0f, 1.0f);
            if (shader.getUniform("HurtTime") != null) shader.getUniform("HurtTime").set(hurtPercent);
            if (shader.getUniform("Alpha") != null) shader.getUniform("Alpha").set(alpha);

            float texXSize = 64.0f;
            float texYSize = 64.0f;

            float uHead0 = 8.0f;
            float vHead0 = 8.0f;
            float uHead1 = 16.0f;
            float vHead1 = 16.0f;

            if (shader.getUniform("StartU") != null) shader.getUniform("StartU").set(uHead0);
            if (shader.getUniform("StartV") != null) shader.getUniform("StartV").set(vHead0);
            if (shader.getUniform("EndU") != null) shader.getUniform("EndU").set(uHead1);
            if (shader.getUniform("EndV") != null) shader.getUniform("EndV").set(vHead1);
            if (shader.getUniform("TexWidth") != null) shader.getUniform("TexWidth").set(texXSize);
            if (shader.getUniform("TexHeight") != null) shader.getUniform("TexHeight").set(texYSize);
        } else {
            return;
        }

        Tesselator tesselator = Tesselator.getInstance();
        BufferBuilder builder = tesselator.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX_COLOR);

        int vertexColor = 0xFFFFFFFF;

        builder.addVertex(matrix4f, pixelX, pixelY, 0)
                .setUv(0, 0)
                .setColor(vertexColor);

        builder.addVertex(matrix4f, pixelX, pixelY + pixelHeight, 0)
                .setUv(0, 1)
                .setColor(vertexColor);

        builder.addVertex(matrix4f, pixelX + pixelWidth, pixelY + pixelHeight, 0)
                .setUv(1, 1)
                .setColor(vertexColor);

        builder.addVertex(matrix4f, pixelX + pixelWidth, pixelY, 0)
                .setUv(1, 0)
                .setColor(vertexColor);

        tesselator.draw(builder);

        RenderSystem.enableDepthTest();
        RenderSystem.enableCull();
        RenderSystem.disableBlend();
    }

и вызов этого кода в тх

ResourceLocation skinLocation = mc.getSkinManager().getInsecureSkin(player.getGameProfile()).texture();
if (skinLocation == null) {
skinLocation = DefaultPlayerSkin.getDefaultTexture();
}

RenderUtil.drawHead(guiGraphics, skinLocation, x + 6f, y + 6f, minHeight - 12f, minHeight - 12f, 5, 255, 0);

честно хз как это чинить. шейдер такого чудить не может так что без понятий. Попрошу помощи в поисках бага
или недороботки
 
Выключи линейную фильтрацию текстуры, каким хуем делается это в кубаче - я хз, могу максимум подказать gl команды
Пожалуйста, авторизуйтесь для просмотра ссылки.


Java:
Expand Collapse Copy
// По идее должно прокатить чисто с glTextureParameteri который должен задавать мин/маг фильтры по текстуре а не по всему таргету
glTextureParameteri(TEXTURE_ID, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTextureParameteri(TEXTURE_ID, GL_TEXTURE_MAG_FILTER, GL_NEAREST);

Скорее всего сложность будет просто достать id текстуры твоего скина, поэтому варики либо куда-то всунуть этот код после создания текстуры, либо пытаться найти аналогичный код под капотом кубача и использовать корректный функционал
 
Назад
Сверху Снизу