关于火焰(Block)渲染错误

Eroslon_黎明


你使用的IDE:IntelliJ IDEA
你使用的IDE版本:2020.1
Forge版本: 31.1.0
Minecraft版本: 1.15.2
Mapping 文件版本:20200514

如图:


火焰渲染但是有黑色阴影,代码如下:

public class BloodSeaFire extends Block {
    public BloodSeaFire() {
        super(Properties.create(Material.FIRE).sound(SoundType.GROUND).hardnessAndResistance(1f, 5f).lightValue(0).doesNotBlockMovement());
    }

    @Override
    public boolean propagatesSkylightDown(BlockState state, IBlockReader reader, BlockPos pos) {
        return true;
    }
}

渲染问题,不知道怎么改,求助!


FledgeXu


第一件事,论坛的发帖是Markdown格式的,请去学习一下Markdown的用法,以后不要发没有格式化过的代码。
如果,你想要写一个火焰,为什么不直接继承FireBlock
如果你一定要继承Block,这个看上去好像没有指定碰撞箱引起的。
试试

public VoxelShape getShape(BlockState state, IBlockReader worldIn, BlockPos pos, ISelectionContext context) {
      return VoxelShapes.empty();
}

vvvbbbcz


代码如以下所示:

private void doClientStuff(final FMLClientSetupEvent event) {
RenderTypeLookup.setRenderLayer( [你的火焰方块的对象] , RenderType.getCutout());
}

回复时有点急,所以可能讲的有些不清楚,请见谅。


FledgeXu


不用这个……
把这个删了,按照我说的改试试。


FledgeXu


还有,拜托你去学一下Markdown,你的符号全部用错了。


Eroslon_黎明


OK,多谢多谢


Eroslon_黎明


这个不行,只是取消了碰撞箱…


FledgeXu


Sorry,我弄错人了……


FledgeXu


你试试在Properties,加上.notSolid(),或者按照 @ShaGuaRedstone 提及的方法,修改渲染类型试试。
既然不生效,就不要设置为正确答案……


Eroslon_黎明


好的,我试试


system


该主题在最后一个回复创建后7天后自动关闭。不再允许新的回复。