Текстура жидкости

Версия Minecraft
1.12.2

GoogleTan

Картошка :3
1,354
43
310
Мне нужно дасть текстуру жидости из fluidstack? fluidstack.getFluid().getStill() не работает - просто черно-розовый квадрат. Во вторых, если я ее достану, то как мне ее натенуть на блок(ModelRenderer)?
 

GoogleTan

Картошка :3
1,354
43
310
О! Первая проблема решена: ResourceLocation TEXTURE_FLUID = new ResourceLocation(te.getTank().getFluid().getFluid().getStill().getNamespace(), "textures/" + te.getTank().getFluid().getFluid().getStill().getPath() + ".png");
Осталась вторая:
1591858468956.png
 

Вложения

  • 1591858448612.png
    1591858448612.png
    1.5 MB · Просмотры: 3
3,005
192
592
Тимаха вроде скидывал код на форуме, где идет рендер жижи на блоке.
 
7,099
324
1,509
Вот так создаешь квад
Java:
import hohserg.endothermic.builder.BakedQuadBuilder;
import hohserg.endothermic.format.AttributeRepresentation.*;

private BakedQuad waterQuad = new BakedQuadBuilder(DefaultVertexFormats.BLOCK)
    .atlas(Minecraft.getMinecraft.getTextureMapBlocks.getAtlasSprite(FluidRegistry.WATER.getStill().toString))
    .withAttribute(x_1, <x1>).withAttribute(y_1, <y1>).withAttribute(z_1, <z1>)
    .withAttribute(x_2, <x1>).withAttribute(y_2, <y1>).withAttribute(z_2, <z1>)
    .withAttribute(x_3, <x1>).withAttribute(y_3, <y1>).withAttribute(z_3, <z1>)
    .withAttribute(x_4, <x1>).withAttribute(y_4, <y1>).withAttribute(z_4, <z1>)
    .toBakedQuad();
Вот так рендеришь
Java:
val tessellator = Tessellator.getInstance();
val bufferbuilder = tessellator.getBuffer();
bufferbuilder.begin(7, DefaultVertexFormats.ITEM);
LightUtil.renderQuadColor(bufferbuilder, waterQuad, -1);
tessellator.draw();
Т.к. квад по идее статичен, но создать его можно заранее, а потом просто рендерить
 
Последнее редактирование:
7,099
324
1,509
Сверху