Class DoorVboRenderer
java.lang.Object
com.hbm_m.client.render.AbstractGpuMesh
com.hbm_m.client.render.SingleMeshVboRenderer
com.hbm_m.client.render.implementations.DoorVboRenderer
-
Nested Class Summary
Nested classes/interfaces inherited from class com.hbm_m.client.render.SingleMeshVboRenderer
SingleMeshVboRenderer.VboData -
Field Summary
Fields inherited from class com.hbm_m.client.render.SingleMeshVboRenderer
MACHINE_PART_VERTEX_STRIDE_BYTES, useSlicedLightFields inherited from class com.hbm_m.client.render.AbstractGpuMesh
eboId, indexCount, initFailed, initialized, objBbox, vaoId, vboId -
Method Summary
Modifier and TypeMethodDescriptionprotected SingleMeshVboRenderer.VboDatavoidcleanup()Освобождение GL-ресурсов (VAO/VBO/EBO) на render-треде.static voidОчищает кэш VBO рендереров при перезагрузке ресурсовstatic DoorVboRenderergetOrCreate(DoorBakedModel model, String partName) static DoorVboRenderergetOrCreate(DoorBakedModel model, String partName, String doorType) Получает или создает VBO рендерер для указанной анимированной части двери ВАЖНО: НЕ используется для статической части "frame"!static DoorVboRenderergetOrCreate(DoorBakedModel model, String partName, String doorType, DoorModelSelection selection) Получает или создает VBO рендерер с поддержкой выбора модели.protected List<net.minecraft.client.renderer.block.model.BakedQuad>Квады для Iris-совместимого пути (BufferBuilder + GameRenderer shader).static booleanisStaticPart(String partName) Проверяет, является ли часть статической (не должна рендериться через DoorVboRenderer)voidrenderPart(com.mojang.blaze3d.vertex.PoseStack poseStack, int packedLight, net.minecraft.core.BlockPos blockPos, net.minecraft.world.level.block.entity.BlockEntity blockEntity, DoorDecl doorDecl, float openTicks, boolean child, net.minecraft.client.renderer.MultiBufferSource bufferSource) Methods inherited from class com.hbm_m.client.render.SingleMeshVboRenderer
bindBlockLitSamplerTextures, getFadeAlpha, initVbo, isWorldMissileOverlayDraw, prepareBlockLitSamplers, render, render, render, setEntityMissileDepthBias, setFadeAlpha, setUseSlicedLight, setWorldMissileOverlayDrawMethods inherited from class com.hbm_m.client.render.AbstractGpuMesh
getObjBbox, setObjBboxFrom
-
Method Details
-
getOrCreate
Получает или создает VBO рендерер для указанной анимированной части двери ВАЖНО: НЕ используется для статической части "frame"! -
getOrCreate
public static DoorVboRenderer getOrCreate(DoorBakedModel model, String partName, String doorType, DoorModelSelection selection) Получает или создает VBO рендерер с поддержкой выбора модели. Включает тип модели и скин в ключ кэша. -
isStaticPart
Проверяет, является ли часть статической (не должна рендериться через DoorVboRenderer) -
getOrCreate
-
buildVboData
- Specified by:
buildVboDatain classSingleMeshVboRenderer
-
getQuadsForIrisPath
Description copied from class:SingleMeshVboRendererКвады для Iris-совместимого пути (BufferBuilder + GameRenderer shader). Переопределяется в рендерерах, созданных через MeshRenderCache.- Overrides:
getQuadsForIrisPathin classSingleMeshVboRenderer
-
renderPart
public void renderPart(com.mojang.blaze3d.vertex.PoseStack poseStack, int packedLight, net.minecraft.core.BlockPos blockPos, @Nullable net.minecraft.world.level.block.entity.BlockEntity blockEntity, DoorDecl doorDecl, float openTicks, boolean child, @Nullable net.minecraft.client.renderer.MultiBufferSource bufferSource) -
clearCache
public static void clearCache()Очищает кэш VBO рендереров при перезагрузке ресурсов -
cleanup
public void cleanup()Description copied from class:AbstractGpuMeshОсвобождение GL-ресурсов (VAO/VBO/EBO) на render-треде. Конкретные рендереры должны вызывать этот метод из своего cleanup().- Overrides:
cleanupin classSingleMeshVboRenderer
-