Не работает модель obj

Версия Minecraft
1.12.2
17
1
Начал ставить obj файлы и решил начать с меча, написал код, модель поставил, залил текстуру, и все хорошо, код не жалуется, начал запускать майнкрафт и тут же получаю ошибку.
Вот код файлов:
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
Overlord.java
Java:
@Mod(modid = Overlord.MODID, name = Overlord.NAME, version = Overlord.VERSION)
public class Overlord
{
    public static final String MODID = "overlord";
    public static final String NAME = "Overlord";
    public static final String VERSION = "1.0";

    @SidedProxy(clientSide = "com.drezimor.overlord.proxy.ClientProxy", serverSide = "com.drezimor.overlord.proxy.CommonProxy")
    public static CommonProxy proxy;

    public static CreativeTabs over = new Over("over");

    @EventHandler
    public void preInit(FMLPreInitializationEvent event)
    {
        proxy.preInit(event);
    }

    @EventHandler
    public void init(FMLInitializationEvent event)
    {
        proxy.init(event);
    }

    @EventHandler
    public void postInit(FMLPostInitializationEvent event)
    {
        proxy.postInit(event);
    }
}
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
BasicSword.java
Java:
public class BasicSword extends ItemSword {

    public BasicSword(ToolMaterial material, String name) {
        super(material);
        setUnlocalizedName(name);
        setCreativeTab(Overlord.over);
    }
}
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
ItemReg.java
Java:
public class ItemReg
{
    public static Item cerep = new BasicItem("cerep",64);
    public static Item persatka = new BasicItem("persatka",64);
    public static Item stakan = new BasicItem("stakan",64);

    public static Item  sword;

    public static void preInit()
    {
        sword = new BasicSword(EnumHelper.addToolMaterial("SWORD", 3 ,1, 8.0f, 10.0f, 30), "sword");
    }

    public static void register()
    {
        setRegistter(cerep);
        setRegistter(persatka);
        setRegistter(stakan);
    }

    public static void registerRender()
    {
        setRender(cerep);
        setRender(persatka);
        setRender(stakan);
    }

    public static void setRegistter(Item item)
    {
        ForgeRegistries.ITEMS.register(item);
    }

    public static void setRender(Item item)
    {
        Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item,0, new ModelResourceLocation(item.getRegistryName(),"inventory"));
    }
}
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
ClientProxy.java
Java:
public class ClientProxy extends CommonProxy
{
    @Override
    public void preInit(FMLPreInitializationEvent event)
    {
        OBJLoader.INSTANCE.addDomain(Overlord.MODID);
        registerModel(ItemReg.sword);
        super.preInit(event);
    }

    public void registerModel(Item item)
    {
        ModelLoader.setCustomModelResourceLocation(item,0, new ModelResourceLocation(item.getRegistryName(),"inventory"));
    }

    @Override
    public void init(FMLInitializationEvent event)
    {
        ItemReg.registerRender();
        super.init(event);
    }

    @Override
    public void postInit(FMLPostInitializationEvent event)
    {
        super.postInit(event);
    }
}
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
 
Краш-лог
Description: There was a severe problem during mod loading that has caused the game to fail

net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from Overlord (overlord)
Caused by: java.lang.NullPointerException
at com.drezimor.overlord.proxy.ClientProxy.registerModel(ClientProxy.java:25)
at com.drezimor.overlord.proxy.ClientProxy.preInit(ClientProxy.java:19)
at com.drezimor.overlord.Overlord.preInit(Overlord.java:28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:629)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
at com.google.common.eventbus.EventBus.post(EventBus.java:217)
at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:218)
at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:196)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
at com.google.common.eventbus.EventBus.post(EventBus.java:217)
at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:135)
at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:627)
at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:245)
at net.minecraft.client.Minecraft.init(Minecraft.java:513)
at net.minecraft.client.Minecraft.run(Minecraft.java:421)
at net.minecraft.client.main.Main.main(Main.java:118)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)
at GradleStart.main(GradleStart.java:25)
Краш-лог:
Description: There was a severe problem during mod loading that has caused the game to fail

net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from Overlord (overlord)
Caused by: java.lang.NullPointerException
    at com.drezimor.overlord.proxy.ClientProxy.registerModel(ClientProxy.java:25)
    at com.drezimor.overlord.proxy.ClientProxy.preInit(ClientProxy.java:19)
    at com.drezimor.overlord.Overlord.preInit(Overlord.java:28)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:629)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
    at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
    at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
    at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
    at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
    at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
    at com.google.common.eventbus.EventBus.post(EventBus.java:217)
    at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:218)
    at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:196)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.google.common.eventbus.Subscriber.invokeSubscriberMethod(Subscriber.java:91)
    at com.google.common.eventbus.Subscriber$SynchronizedSubscriber.invokeSubscriberMethod(Subscriber.java:150)
    at com.google.common.eventbus.Subscriber$1.run(Subscriber.java:76)
    at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)
    at com.google.common.eventbus.Subscriber.dispatchEvent(Subscriber.java:71)
    at com.google.common.eventbus.Dispatcher$PerThreadQueuedDispatcher.dispatch(Dispatcher.java:116)
    at com.google.common.eventbus.EventBus.post(EventBus.java:217)
    at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:135)
    at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:627)
    at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:245)
    at net.minecraft.client.Minecraft.init(Minecraft.java:513)
    at net.minecraft.client.Minecraft.run(Minecraft.java:421)
    at net.minecraft.client.main.Main.main(Main.java:118)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97)
    at GradleStart.main(GradleStart.java:25)
1.
1532967115627.png
2.
Java:
public void registerModel(Item item)
{
     ModelLoader.setCustomModelResourceLocation(item,0, new ModelResourceLocation(item.getRegistryName(),"inventory"));
}
Заменить на
Java:
public void registerModel(Item item) {
   ModelLoader.setCustomModelResourceLocation(item,0, new ModelResourceLocation(new ResourceLocation(item.getRegistryName().getResourceDomain(), item.getRegistryName().getResourcePath().concat(".obj")),"inventory"));
}
 
1,038
57
229
а где у тебя происходит вызов этого метода, я что-то в упор не вижу этой строки
Java:
ItemReg.preInit();

И ещё поставь пчёлку сюда
Код:
System.out.println(ModelLoader);
System.out.println(item);
System.out.println(item.getRegistryName());
ModelLoader.setCustomModelResourceLocation(item,0, new ModelResourceLocation(new ResourceLocation(item.getRegistryName().getResourceDomain(), item.getRegistryName().getResourcePath().concat(".obj")),"inventory"));
 
17
1
а где у тебя происходит вызов этого метода, я что-то в упор не вижу этой строки
Java:
ItemReg.preInit();

И ещё поставь пчёлку сюда
Код:
System.out.println(ModelLoader);
System.out.println(item);
System.out.println(item.getRegistryName());
ModelLoader.setCustomModelResourceLocation(item,0, new ModelResourceLocation(new ResourceLocation(item.getRegistryName().getResourceDomain(), item.getRegistryName().getResourcePath().concat(".obj")),"inventory"));
Начал ругаться на ModelLoader
 
1,038
57
229
А что пишет? Что нет у тебя такой переменной?
 
1,038
57
229
И ты её из головы придумал?
 
17
1
Ну у меня импортировало ModelLoader когда я прописал эту строку кода
Java:
ModelLoader.setCustomModelResourceLocation(item,0, new ModelResourceLocation(new ResourceLocation(item.getRegistryName().getResourceDomain(), item.getRegistryName().getResourcePath().concat(".obj")),"inventory"));
 
1,038
57
229
Тогда лог ошибки

Java:
Description: There was a severe problem during mod loading that has caused the game to fail

net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from Overlord (overlord)
Caused by: java.lang.NullPointerException
    at com.drezimor.overlord.proxy.ClientProxy.registerModel(ClientProxy.java:25)
    at com.drezimor.overlord.proxy.ClientProxy.preInit(ClientProxy.java:19)
буквально 6 строчек мне надо из него
 
1,038
57
229
мне нужно 6 строк ошибки, а не кода
 
1,038
57
229
1,038
57
229
удали её, я ошибся чуток )
надо было написать ModelLoader.class в скобках, чтобы проверить импорт класса, но ты его уже показал, поэтому в этой строке код не нуждается.
 
Последнее редактирование:
1,038
57
229
А можно полный лог?
потому что я не вижу вывода двух System.out.println перед крашом
 
1,038
57
229
проблему решил, отсутствовал setRegistryName(...), подправленный код отправил обратно
 
Сверху