- 7,099
- 324
- 1,509
У BlockContainer есть метод getRenderType, определяющий, какая часть блока будет рендериться: baked-модель, tile special renderer(tesr) или оба.
В tesr рисую предмет над своим блоком.
Когда getRenderType возвращает MODEL(режим объединенной модели), то предмет рисуется очень темным.
Когда только tesr - все нормально. Очень смахивает на баг, но возможно, я просто че-то забыл еще включить.
Смена освещения, кстати, не помогает
Рендер тайла:
В tesr рисую предмет над своим блоком.
Когда getRenderType возвращает MODEL(режим объединенной модели), то предмет рисуется очень темным.
Когда только tesr - все нормально. Очень смахивает на баг, но возможно, я просто че-то забыл еще включить.
Смена освещения, кстати, не помогает
Рендер тайла:
Scala:
override def render(te: BlockWandBuilder.TileWandBuilder, x: Double, y: Double, z: Double, partialTicks: Float, destroyStage: Int, alpha: Float): Unit = {
super.render(te, x, y, z, partialTicks, destroyStage, alpha)
if (te != null && !te.inv.getStackInSlot(0).isEmpty) {
val ticks = Minecraft.getMinecraft.getRenderViewEntity.ticksExisted.toFloat + partialTicks
GL11.glPushMatrix()
GL11.glTranslatef(x.toFloat + 0.5F, y.toFloat + 0.75F, z.toFloat + 0.5F)
GL11.glScaled(1.25D, 1.25D, 1.25D)
GL11.glRotatef(ticks % 360.0F, 0.0F, 1.0F, 0.0F)
val is = te.inv.getStackInSlot(0).copy
is.setCount(1)
val entityitem = new EntityItem(Minecraft.getMinecraft.world, 0.0D, 0.0D, 0.0D, is)
entityitem.hoverStart = 0.0F
val rendermanager = Minecraft.getMinecraft.getRenderManager
rendermanager.renderEntity(entityitem, 0.0D, 0.0D, 0.0D, 0.0F, 0.0F, false)
GL11.glPopMatrix()
}
}