• Я зарабатываю 100 000 RUB / месяц на этом сайте!

    А знаешь как? Я всего-лишь публикую (создаю темы), а админ мне платит. Трачу деньги на мороженое, робуксы и сервера в Minecraft. А ещё на паль из Китая. 

    Хочешь так же? Пиши и узнавай условия: https://t.me/alex_redact
    Реклама: https://t.me/yougame_official

Вопрос Траблы с фреймбаффером

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
23 Дек 2024
Сообщения
4
Реакции
0
Рендерит буффер не на весь экран, а до половинки, хотя u,v вроде правильные и так юзается в framebufferRenderExt
Пожалуйста, авторизуйтесь для просмотра ссылки.

Java:
Expand Collapse Copy
import net.minecraft.client.Minecraft;
import net.minecraft.client.shader.Framebuffer;

public class CustomFrameBuffer extends Framebuffer {
    public CustomFrameBuffer() {
        super(mc.getMainWindow().getFramebufferWidth(), mc.getMainWindow().getFramebufferHeight(), true, Minecraft.IS_RUNNING_ON_MAC);
    }

    public CustomFrameBuffer(int framebufferWidth, int framebufferHeight, boolean depth, boolean isRunningOnMac) {
        super(framebufferWidth, framebufferHeight, depth, isRunningOnMac);
    }

    public void draw() {
        this.framebufferRenderExt(sr.getScaledWidth(), sr.getScaledHeight(), false);

        this.unbind();
    }

    private void resize() {
        int w = sr.getFramebufferWidth();
        int h = sr.getFramebufferHeight();

        if (this.framebufferHeight != h || this.framebufferWidth != w) {
            this.resize(w, h, Minecraft.IS_RUNNING_ON_MAC);
        }

    }

    public void bind() {
        this.resize();
        this.framebufferClear(Minecraft.IS_RUNNING_ON_MAC);
        this.bindFramebuffer(true);
    }

    public void unbind() {
        this.unbindFramebuffer();
        mc.getFramebuffer().bindFramebuffer(true);
    }
}
P.S. Еще и прицел плющит
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
Рендерит буффер не на весь экран, а до половинки, хотя u,v вроде правильные и так юзается в framebufferRenderExt
Пожалуйста, авторизуйтесь для просмотра ссылки.

Java:
Expand Collapse Copy
import net.minecraft.client.Minecraft;
import net.minecraft.client.shader.Framebuffer;

public class CustomFrameBuffer extends Framebuffer {
    public CustomFrameBuffer() {
        super(mc.getMainWindow().getFramebufferWidth(), mc.getMainWindow().getFramebufferHeight(), true, Minecraft.IS_RUNNING_ON_MAC);
    }

    public CustomFrameBuffer(int framebufferWidth, int framebufferHeight, boolean depth, boolean isRunningOnMac) {
        super(framebufferWidth, framebufferHeight, depth, isRunningOnMac);
    }

    public void draw() {
        this.framebufferRenderExt(sr.getScaledWidth(), sr.getScaledHeight(), false);

        this.unbind();
    }

    private void resize() {
        int w = sr.getFramebufferWidth();
        int h = sr.getFramebufferHeight();

        if (this.framebufferHeight != h || this.framebufferWidth != w) {
            this.resize(w, h, Minecraft.IS_RUNNING_ON_MAC);
        }

    }

    public void bind() {
        this.resize();
        this.framebufferClear(Minecraft.IS_RUNNING_ON_MAC);
        this.bindFramebuffer(true);
    }

    public void unbind() {
        this.unbindFramebuffer();
        mc.getFramebuffer().bindFramebuffer(true);
    }
}
P.S. Еще и прицел плющит
Пожалуйста, авторизуйтесь для просмотра ссылки.
помоему у тебя u,v не правильно высчитанны
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Рендерит буффер не на весь экран, а до половинки, хотя u,v вроде правильные и так юзается в framebufferRenderExt
Пожалуйста, авторизуйтесь для просмотра ссылки.

Java:
Expand Collapse Copy
import net.minecraft.client.Minecraft;
import net.minecraft.client.shader.Framebuffer;

public class CustomFrameBuffer extends Framebuffer {
    public CustomFrameBuffer() {
        super(mc.getMainWindow().getFramebufferWidth(), mc.getMainWindow().getFramebufferHeight(), true, Minecraft.IS_RUNNING_ON_MAC);
    }

    public CustomFrameBuffer(int framebufferWidth, int framebufferHeight, boolean depth, boolean isRunningOnMac) {
        super(framebufferWidth, framebufferHeight, depth, isRunningOnMac);
    }

    public void draw() {
        this.framebufferRenderExt(sr.getScaledWidth(), sr.getScaledHeight(), false);

        this.unbind();
    }

    private void resize() {
        int w = sr.getFramebufferWidth();
        int h = sr.getFramebufferHeight();

        if (this.framebufferHeight != h || this.framebufferWidth != w) {
            this.resize(w, h, Minecraft.IS_RUNNING_ON_MAC);
        }

    }

    public void bind() {
        this.resize();
        this.framebufferClear(Minecraft.IS_RUNNING_ON_MAC);
        this.bindFramebuffer(true);
    }

    public void unbind() {
        this.unbindFramebuffer();
        mc.getFramebuffer().bindFramebuffer(true);
    }
}
P.S. Еще и прицел плющит
Пожалуйста, авторизуйтесь для просмотра ссылки.
Попробуй заменить sr.getScaledWidth() на framebufferWidth и sr.getScaledHeight() на framebufferHeight.
 
Попробуй заменить sr.getScaledWidth() на framebufferWidth и sr.getScaledHeight() на framebufferHeight.
Заменил в методе draw(), так баффер рендерится где нужно но все остальное сьезжает
нет особо, тут уже надо чекать зачем он тебн и где ты его юзаешь
Для рук от 1го лица
 
Назад
Сверху Снизу