[1.6.4] Как сделать анимацию в аналоге GuiMainMenu

176
0
Сделал свой GuiMainMenu. Заменяю через event. Т.е не орать что лезу в сырцы xD

Рендер фона идёт следующий.
Код:
    /**
     * Renders the skybox in the main menu
     */
    private void renderSkybox(int par1, int par2, float par3)

    {
        GL11.glViewport(0, 0, this.mc.displayWidth, this.mc.displayHeight);
        Tessellator tessellator = Tessellator.instance;

        this.mc.getTextureManager().bindTexture(new ResourceLocation("textures/gui/bg.jpg"));
        tessellator.startDrawingQuads();
        float f1 = this.width > this.height ? 256.0F / (float)this.width : 120.0F / (float)this.height;
        float fy = (float)this.height * f1 / 424.0F;
        float fx = (float)this.width * f1 / 800.0F;
        double k = this.width;
        double l = this.height;
        tessellator.addVertexWithUV((double)k, (double)l, (double)this.zLevel, 0.5 + fx, 0.5 + fy);
        tessellator.addVertexWithUV((double)k, 0.0D, (double)this.zLevel, 0.5 + fx, 0.5 - fy);
        tessellator.addVertexWithUV(0.0D, 0.0D, (double)this.zLevel, 0.5 - fx, 0.5 - fy);
        tessellator.addVertexWithUV(0.0D, (double)l, (double)this.zLevel, 0.5 - fx, 0.5 + fy);
        tessellator.draw();

    }
Хочу сделать анимацию огня.  Ну что-то навроде камина. Как реализовать постепенную отрисовку кадров? И обязательно ли менять весь фон? Можно ли просто рендерить участок, или это чревато проблемами при масштабировании.
 
UP?
 
Можно добавить переменную и ++ ее. И менять название спрайта. А можно попробовать воткнуть стандартную анимацию, но я не уверен.
 
Volkula написал(а):
Как реализовать постепенную отрисовку кадров? И обязательно ли менять весь фон? Можно ли просто рендерить участок, или это чревато проблемами при масштабировании.
Поверь, разницы не будет абсолютно - с фоном ты рисуешь или без. Это хардварная отрисовка (всего 4 вершин), треугольниками. Там производительность зависит от количества вершин и шейдеров. Ну ещё от разрешения текстуры. Да даже в софтверном просто готовый массив пикселей кинет и всё.
Огонь.. Я в ресурсах кубача не встречал анимированную текстуру огня. Зато в 1.2.5 версии точно видел код генерации огня, он в реалтайме по алгоритму строит картинку. У портала та же фигня. Можешь вполне создать атлас, накидать туда пререндеренных кодом текстур огня и просто менять каждый тик uv-координаты.
 
Назад
Сверху