Сделал модель в Cinema 4D, экспортировал её с помощью плагина Riptide в формате obj. В игре почему-то модель прозрачная.
Вот как она выглядит
Main mod:
Block:
P.S. Знаю, что полно лишних строк, от них потом избавлюсь. Просто брал код из mcreator'а
Вот как она выглядит
Main mod:
Код:
@Mod(modid = ExampleMod.MODID, version = ExampleMod.VERSION)
public class ExampleMod
{
public static final String MODID = "examplemod";
public static final String VERSION = "1.0";
@SidedProxy(serverSide = "com.example.examplemod.CommonProxy", clientSide = "com.example.examplemod.ClientProxy")
public static CommonProxy proxy;
@Instance(MODID)
public static ExampleMod instance;
BlockBigTable bigTable = new BlockBigTable();
//BlockTableChair tableChair = new BlockTableChair();
@EventHandler
public void load(FMLInitializationEvent event) {
if (event.getSide() == Side.CLIENT) {
OBJLoader.INSTANCE.addDomain("examplemod");
}
bigTable.load(event);
//mcreator_1.load(event);
proxy.registerRenderers(this);
}
@EventHandler
public void serverLoad(FMLServerStartingEvent event) {
bigTable.serverLoad(event);
}
@EventHandler
public void preInit(FMLPreInitializationEvent event) {
bigTable.instance = this.instance;
bigTable.preInit(event);
}
}
Block:
Код:
public class BlockBigTable {
public BlockBigTable() {
}
public static BlockBigtable block;
public static Object instance;
public void registerRenderers() {
}
public void serverLoad(FMLServerStartingEvent event) {
}
public void preInit(FMLPreInitializationEvent event) {
}
public void load(FMLInitializationEvent event) {
if (event.getSide() == Side.CLIENT) {
Minecraft.getMinecraft().getRenderItem().getItemModelMesher()
.register(Item.getItemFromBlock(block), 0, new ModelResourceLocation("examplemod:Bigtable", "inventory"));
}
}
static {
block = (BlockBigtable) (new BlockBigtable().setUnlocalizedName("Bigtable")
.setCreativeTab(CreativeTabs.BUILDING_BLOCKS));
}
static class BlockBigtable extends Block {
protected BlockBigtable() {
super(Material.GROUND);
GameRegistry.registerBlock(this, "Bigtable");
setSoundType(SoundType.WOOD);
}
@Override
public boolean isOpaqueCube(IBlockState state) {
return false;
}
@Override
public boolean isFullCube(IBlockState state) {
return false;
}
@Override
public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) {
return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 1.0D, 1.0D);
}
}
}
P.S. Знаю, что полно лишних строк, от них потом избавлюсь. Просто брал код из mcreator'а