Jump to content

[1.9] Render custom item


TPD
 Share

Recommended Posts

  • Replies 95
  • Created
  • Last Reply

Top Posters In This Topic

I'm pretty sure you need to use the new JSON model system or IBakedModels. I have found no tutorials on either of these.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

You could read diesiebens 2nd response and that may answer your question.

http://www.minecraftforge.net/forum/index.php/topic,39203.0/wap2.html

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

Is it possible to cancel the rendering of only the item in one Hand during 'RenderHandEvent'/are there also events that get fired for each Hand independently?

 

If not, is there a reliable way to render the item in a hand?

Link to comment
Share on other sites

Why was IItemRenderer removed?

The mod that I'm working on is FlansMod. I want to update it to 1.10 but it has it's own way of rendering things and the models and animations of all weapons and vehicles are made with this system. It's probably not possible to implement IModel / IBakedModel to this...

Link to comment
Share on other sites

Ok. This means I will use the new system.

 

I still don't exactly understand how IModel and IBakedModel are implemented. I can try to explain how the current Model system works, maybe you know how I could implement it.

 

This is a (very simplified) schematic where I try to explain how it works:

tJk2Qmj.png

 

This is for example what the Model class of a gun looks like:

[spoiler=ModelM9.java]


public class ModelM9 extends ModelGun 
{
public ModelM9()
{
	int textureX = 32;
	int textureY = 16;

	gunModel = new ModelRendererTurbo[3];

	gunModel[0] = new ModelRendererTurbo(this, 0, 0, textureX, textureY);
	gunModel[0].addBox(-1F, -2F, -1F, 3, 4, 2);

	gunModel[1] = new ModelRendererTurbo(this, 0, 6, textureX, textureY);
	gunModel[1].addBox(-1F, 2F, -1F, 8, 1, 2);

	gunModel[2] = new ModelRendererTurbo(this, 0, 9, textureX, textureY);
	gunModel[2].addBox(-0.5F, 3.5F, -0.5F, 8, 1, 1);

	slideModel = new ModelRendererTurbo[3];

	slideModel[0] = new ModelRendererTurbo(this, 0, 12, textureX, textureY);
	slideModel[0].addBox(-1F, 3F, -1F, 8, 2, 2);

	slideModel[1] = new ModelRendererTurbo(this, 10, 2, textureX, textureY);
	slideModel[1].addBox(5.95F, 4.5F, -0.5F, 1, 1, 1);

	slideModel[2] = new ModelRendererTurbo(this, 8, 0, textureX, textureY);
	slideModel[2].addBox(-0.8F, 4.5F, -0.5F, 1, 1, 1);

	ammoModel = new ModelRendererTurbo[1];

	ammoModel[0] = new ModelRendererTurbo(this, 14, 0, textureX, textureY);
	ammoModel[0].addBox(-0.5F, -1.8F, -0.5F, 2, 4, 1);

	barrelAttachPoint = new Vector3f(7.5F / 16F, 4F / 16F, 0F);

	scopeAttachPoint = new Vector3f(3F / 16F, 5F / 16F, 0F);
	scopeIsOnSlide = true;

	gunSlideDistance = 0.25F;
	animationType = EnumAnimationType.PISTOL_CLIP;
}
}

 

 

Here's the source of the mod: https://github.com/gitgud-software/FlansMod

(changes to the mod made by me are not yet committed, but I can commit them if you need the code; I fixed the compiler errors and started fixing bugs)

 

 

Link to comment
Share on other sites

Basically you have to start over.

Make the models in a proper model editor and export them as obj files. Forge will happily load them.

Or you can write a custom model loader (ICustomModelLoader) to add support for a different file type.

 

IModel is basically an unoptimized representation of your model, containing the information like it was read from the model file on disk.

IBakedModel is the form that can actually be rendered and is basically just a list of BakedQuads, where BakedQuad is the vertex information for one quad of the model.

Link to comment
Share on other sites

The mod adds many different items for which I need different ICustomModelLoaders. How should I determine whether or not the ICustomLoader accepts it when I just have a ResourceLocation?

 

Edit: nvm. that was a stupid question. I can just add a folder called guns in assets/flansmod/models/item right?

Link to comment
Share on other sites

I'm not sure if it's possible to use the same format for each kind of item... Guns should consist of multiple parts that will have to be moved independently during reloading-animations and so on, but Plane-Models, for example, have other properties...

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share




×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.