I've followed every tutorial I could find, mainly the one by MrCrayfish, and everything still renders as a purple and black block.
There are no "missing texture" errors like there was in 1.7.10 but I dunno if that was just removed in 1.8 or not for the new rendering system.
I dunno where the problem is so I'll just post everything...
Main class
@Mod(modid = This.modid, version = This.version)
public class This
{
public static final String modid = "oregenesis";
public static final String version = "1.0";
@SidedProxy(clientSide = "eiw.oregenesis.network.ClientProxy", serverSide = "eiw.oregenesis.network.ServerProxy")
public static ServerProxy proxy;
@EventHandler
public void preInit(FMLPreInitializationEvent event)
{
RegItems.register();
RegBlocks.register();
}
@EventHandler
public void init(FMLInitializationEvent event)
{
proxy.renderContent();
}
@EventHandler
public void postInit(FMLPostInitializationEvent event)
{
}
}
Item registry
public class RegItems
{
public static Item ingot_copper;
public static void register()
{
ingot_copper = new ModItem(1F).setUnlocalizedName("ingot_copper");
GameRegistry.registerItem(ingot_copper, ingot_copper.getUnlocalizedName().substring(5));
}
public static void render()
{
rr(ingot_copper);
}
public static void rr(Item item)
{
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0, new ModelResourceLocation(This.modid + ":" + item.getUnlocalizedName().substring(5), "inventory"));
}
}
Block Registry
public class RegBlocks
{
public static Block ore_copper;
public static void register()
{
ore_copper = new BlockOre(ore_copper).setUnlocalizedName("ore_copper");
GameRegistry.registerBlock(ore_copper, ore_copper.getUnlocalizedName().substring(5));
}
public static void render()
{
rr(ore_copper);
}
public static void rr(Block block)
{
Item item = Item.getItemFromBlock(block);
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0, new ModelResourceLocation(This.modid + ":" + item.getUnlocalizedName().substring(5), "inventory"));
}
}
ClientProxy
public class ClientProxy extends ServerProxy
{
public static void renderContent()
{
RegItems.render();
RegBlocks.render();
}
}
======================================================================
Item .json for the ingot
{
"parent": "builtin/generated",
"textures": {
"layer0": "oregenesis:items/ingot_copper"
},
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}
}
Item model .json for the ore block
{
"parent": "oregenesis:block/ore_copper",
"display": {
"thirdperson": {
"rotation": [ 10, -45, 170 ],
"translation": [ 0, 1.5, -2.75 ],
"scale": [ 0.375, 0.375, 0.375 ]
}
}
}
Blockstate .json for the ore block
{
"variants": {
"normal": { "model": "oregenesis:ore_copper" }
}
}
Block model .json for the ore block
{
"parent": "block/cube_all",
"textures": {
"all": "oregenesis:blocks/ore_copper"
}
}