Jump to content

Recommended Posts

Posted

Here is the code I used for my Souls Mod. It is called in  renderItem(ItemRenderType type, ItemStack item, Object... data)

if (data[1] != null && data[1] instanceof EntityPlayer) {
		if (!((EntityPlayer) data[1] == Minecraft.getMinecraft().renderViewEntity
				&& Minecraft.getMinecraft().gameSettings.thirdPersonView == 0 && !((Minecraft
				.getMinecraft().currentScreen instanceof GuiInventory || Minecraft
				.getMinecraft().currentScreen instanceof GuiContainerCreative) && RenderManager.instance.playerViewY == 180.0F))) {
			GL11.glRotatef(-90, 0, 0, 1);
			GL11.glTranslatef(-1.05f, 0.3f, -0.1f);
		} else {
			GL11.glTranslatef(1f, 2f, 0f);
			GL11.glRotatef(190, 1, 0, 0);
		}
	}
	batModel.render((Entity) data[1], 0, 0, 0, 0, 0, 0.0625f);

 

And I use this code to check whether or not the 3D item should be rendered.

	@Override
public boolean handleRenderType(ItemStack item, ItemRenderType type) {
	switch (type) {
	case EQUIPPED:
		return true;
	default:
		return false;
	}
}

 

If you wish, I can release my full ItemRenderClub.java. Just ask.

Aspergers is annoying sometimes :(

Posted

I see your code and i raise you mine

 

 

if(data[1] != null && data[1] instanceof EntityPlayer)
	{
		if(!((EntityPlayer)data[1] == Minecraft.getMinecraft().renderViewEntity && Minecraft.getMinecraft().gameSettings.thirdPersonView == 0 && !((Minecraft.getMinecraft().currentScreen instanceof GuiInventory || Minecraft.getMinecraft().currentScreen instanceof GuiContainerCreative) && RenderManager.instance.playerViewY == 180.0F)))
		{
			GL11.glScalef(1.5f, 1.5f, 1.5f);
			GL11.glTranslatef(x, y, z);
			GL11.glRotatef(15+rotZ, 0.0f, 0.0f, 1.0f);
			GL11.glRotatef(12+rotY, 0.0f, 1.0f, 0.0f);
			GL11.glRotatef(145+rotX, 1.0f, 0.0f, 0.0f);
		}
		else
		{
			GL11.glRotatef(15f+Z, 0.0f, 0.0f, 1.0f);
			GL11.glRotatef(175F+X, 1.0f, 0.0f, 0.0f);
			GL11.glRotatef(102F+Y, 0.0f, 1.0f, 0.0f);
			GL11.glScalef(1.5f, 1.5f, 1.5f);
			GL11.glTranslatef(-0.2f+fpsX ,-0.3f+fpsY, 0.2F+fpsZ);
		}

////////////////////////////////////:

@Override
public boolean handleRenderType(ItemStack item, ItemRenderType type) {
	boolean render = item.getItem().equals(Item.dyePowder) && item.getItemDamage() != 4 ? false : true;
	switch(type)
	{
	case  EQUIPPED:
		return render;
	case ENTITY: 
		return render;
	default: break;
	}
	return false;
} 

 

 

i've got what's needed :/ does your renderer work in 1.5.2 ?

Posted

I see your code and i raise you mine

 

 

if(data[1] != null && data[1] instanceof EntityPlayer)
	{
		if(!((EntityPlayer)data[1] == Minecraft.getMinecraft().renderViewEntity && Minecraft.getMinecraft().gameSettings.thirdPersonView == 0 && !((Minecraft.getMinecraft().currentScreen instanceof GuiInventory || Minecraft.getMinecraft().currentScreen instanceof GuiContainerCreative) && RenderManager.instance.playerViewY == 180.0F)))
		{
			GL11.glScalef(1.5f, 1.5f, 1.5f);
			GL11.glTranslatef(x, y, z);
			GL11.glRotatef(15+rotZ, 0.0f, 0.0f, 1.0f);
			GL11.glRotatef(12+rotY, 0.0f, 1.0f, 0.0f);
			GL11.glRotatef(145+rotX, 1.0f, 0.0f, 0.0f);
		}
		else
		{
			GL11.glRotatef(15f+Z, 0.0f, 0.0f, 1.0f);
			GL11.glRotatef(175F+X, 1.0f, 0.0f, 0.0f);
			GL11.glRotatef(102F+Y, 0.0f, 1.0f, 0.0f);
			GL11.glScalef(1.5f, 1.5f, 1.5f);
			GL11.glTranslatef(-0.2f+fpsX ,-0.3f+fpsY, 0.2F+fpsZ);
		}

////////////////////////////////////:

@Override
public boolean handleRenderType(ItemStack item, ItemRenderType type) {
	boolean render = item.getItem().equals(Item.dyePowder) && item.getItemDamage() != 4 ? false : true;
	switch(type)
	{
	case  EQUIPPED:
		return render;
	case ENTITY: 
		return render;
	default: break;
	}
	return false;
} 

 

 

i've got what's needed :/ does your renderer work in 1.5.2 ?

 

There's a new feature in the newest Forge, which splits the first- and third-person-view:

Add case  EQUIPPED_FIRST_PERSON: below case  EQUIPPED:

Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! |

mah twitter

This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.

Posted

/**

        * The render type used for when a ItemMap is rendered in first person,

        * All appropriate rotations have been applied, and the player's hands,

        * and the map BG are already rendered.

        *

        * Data Parameters:

        * EntityPlayer player - The player holding the map

        * RenderEngine engine - The RenderEngine instance

        * MapData mapData - The map data

        */

        FIRST_PERSON_MAP

 

 

there is no such case equipped_first_person

Posted

/**

        * The render type used for when a ItemMap is rendered in first person,

        * All appropriate rotations have been applied, and the player's hands,

        * and the map BG are already rendered.

        *

        * Data Parameters:

        * EntityPlayer player - The player holding the map

        * RenderEngine engine - The RenderEngine instance

        * MapData mapData - The map data

        */

        FIRST_PERSON_MAP

 

 

there is no such case equipped_first_person

 

Oh, then that's the one. I just saw the PR, which got pulled. (seems like I have to update Forge, again :P)

Nuh, wait D:

Do you use the LATEST Forge?

Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! |

mah twitter

This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.

Posted

haha, now my eclipse does the same thing xD

 

I think it's a bug in 688 !! because 684 in eclipse worked, and i had 688 in my vanilla minecraft. that's why.

 

Did you add the case statement I gave you before?

Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! |

mah twitter

This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.

Posted

/**

        * Called to render an item currently held in-hand by a living entity in

        * first person. If rendering as a 3D block, the item will be rotated to a

        * 45-degree angle. To render a 2D texture with some thickness, see

        * net.minecraft.src.ItemRenderer. In either case, rendering should be done

        * in local coordinates from (0,0,0)-(1,1,1).

        *

        * Data parameters:

        * RenderBlocks render - The RenderBlocks instance

        * EntityLiving entity - The entity holding this item

        */

        EQUIPPED_FIRST_PERSON,

 

I can now affirm that the case exists. thanks !!

 

bug solved. i'm changing the title and i'll close the topic :)

Guest
This topic is now closed to further replies.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • My guess would be that you are not getting the chunk coordinates right, or getChunk dosnt work.
    • Hello, Recently I have been hosting an RLcraft server on Minecraft Forge Version 1.12.2 - 14.23.5.2860 I originally had lag issues and I chalked it up to playing on less than perfect hardware so I moved the server to better hardware(i9-9900k with 64GB of RAM for 1 player.) After lots of troubleshooting I discovered a couple of things. World saving was causing the MSPT to spike to over 2000Miliseconds and was happening every minute. This kind of makes sense as the world was pre-generated and is over 100GB. I learned that I could turn off world saving and just schedule that and that resolved that issue. After that issue was resolved I discovered another issue. It appears that when exploring chunks, any chunks explored stay loaded. They persist. I was originally thinking that this had to be a mod issue, but it didn't seem like anyone was talking about it. This isn't really a problem on packs with few worldgen mods or just few mods in general, but on beefier packs it becomes a problem. I went through forge changelogs and found this line. Build: 1.12.2-14.23.5.2841 - Thu Aug 29 01:58:50 GMT 2019 bs2609: Improve performance of persistent chunk checks (#5706) Is this a related item to what I am dealing with or just something else?   I went ahead and created a new dedicated server with Just Forge 14.23.5.2860, spark reforged, and it's core mods. I was able to replicate the issue and log it with spark. Hopefully you're able to see this spark profile. It basically shows that as I explored the chunk loading persisted(2000 chunks loaded over 10 minutes with one player)The view distance is set to 10 so that should be 200 chunks per player. If I don't move the loaded chunks are 200. I was however able to fix the persistent chunk issue if I save the world more frequently. My question is, is this intended function of the game or is this a bug? Everywhere I read seems to indicate Minecraft servers save every 5 minutes and not every minute. Can chunks not unload if the world does not autosave. Additionally. Autosave specifically appears to fix this issue. Manually running save-all does not resolve the issue.   I realize this is kind of a log one, sorry. Please let me know if you require further information. Thanks in advance for your time. https://spark.lucko.me/NvlMtC39Yt https://imgur.com/a/K0oyukx https://pastebin.com/z0qGu1Vh  
    • Thank you so much, I had originally tried to allocate 16 gb of ram but still had the same issue with the lag, 12 was perfect.
    • Something related to shaders - check the config file of this mod - maybe you can disable shaders there
  • Topics

×
×
  • Create New...

Important Information

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