[MC-3493] Item frames "jumping" Created: 19/Nov/12  Updated: 12/Jul/20  Resolved: 09/Mar/14

Status: Resolved
Project: Minecraft: Java Edition
Component/s: None
Affects Version/s: Minecraft 1.4.4, Minecraft 1.4.5, Minecraft 1.4.7, Minecraft 1.5, Minecraft 1.5.1, Minecraft 1.6.1, Minecraft 1.6.2
Fix Version/s: Minecraft 14w10c

Type: Bug
Reporter: Must I Really Assignee: Unassigned
Resolution: Fixed Votes: 8
Labels: precision-loss, rendering
Environment:

Operating system: Windows XP
Java version: 1.6.0_33


Attachments: PNG File 2012-11-19_13.33.49.png     PNG File 2012-11-19_15.13.27.png     PNG File 2012-11-22_17.11.14.png     PNG File 2012-11-22_17.11.18.png     JPEG File Chalmes reproduce.jpg    
Issue Links:
Duplicate
is duplicated by MC-14773 Item frames glitch up when far away f... Resolved
is duplicated by MC-24813 Glitched signs and item frames Resolved
is duplicated by MC-30439 Item frame bug Resolved
Relates
relates to MC-3718 Textures and Effects are off when far... Resolved
CHK:
Confirmation Status: Confirmed
Game Mode: Creative

 Description   

At very large distances away from spawn (2,000,000 blocks is where I noticed it), item frames "jump" when you move, and at certain angles the background disappears into the block it is mounted on.

Possibly unrelated, but MCedit becomes unaligned between actual position and appearance of blocks at these distances.

Note: In image, the item frame on the right is mounted on a non-opaque stair block.



 Comments   
Comment by Brad Larson [ 09/Mar/14 ]

Jumping in frames is gone, rendering of frames and contents of frames is still jacked.

when facing:
East Positive X: You are able to see what is in the item frame, however frame is nearly black.
West Negative X: Looks perfect.
North Positive Y: Color of item frame looks good, but you cannot see any item put into the frame.
South Negative Y: Same as North Positive Y.

From my testing. 14w10c - XYZ: 10Million , 70, 100

Comment by Gunni [ 09/Mar/14 ]

This bug seems to be fixed, atleast the "jumping" part is gone, but the frames are still black but i belive that's another bug report..

Also, at 10m i could not place stuff in the item frames instead it tried to just right click the block behind it, if i did it with a block, it just placed the block, over the item frame, but that too is another bug.

Tested today with 14w10c at 0, 5m and 10m

Comment by [Mod] Ezekiel (ezfe) [ 26/Jan/14 ]

Is this still a concern in the latest Minecraft version 14w04b? If so, please update the affected versions in order to best aid Mojang ensuring bugs are still valid in the latest releases/pre-releases.

Comment by Eric Areiter [ 29/Jul/13 ]

Awesome, thanks a ton!

Comment by Kru Batch [ 28/Jul/13 ]

Sorry it took me a little longer, I've been caught up with some things! I can only apologize, here is the patch for 1.6.2 and the instructions on how to install it into your client. The instructions below assume you are using a client with no other mods, if this is not the case you will probably know how to place it inside the JAR with your mods.

1) Download the 'bgs.class' file located here: http://www.kruithne.net/minecraft/bgs.class
2) Navigate to the 'versions' folder inside your Minecraft installation. (%appdata%/.minecraft/versions)
3) Copy the folder called '1.6.2' and call it anything you want, for this example we will use 'itemframefix'.
4) Go inside the newly created folder and rename both the files in there to the same as the folder, so 'itemframefix.json' and 'itemframefix.jar'.
5) Open the JAR file with an arching program such as WinRAR.
6) Delete the META-INF folder if you have not already done this for other reasons.
7) Copy the 'bgs.class' you downloaded into the JAR file and close it again.
8) Open the 'itemframefix.json' with a text editor and rename the 'id' on the second line from '1.6.2' to 'itemframefix'.
9) Run Minecraft and edit your current profile (or create a new one). Under 'Use version' select 'itemframefix'.
10) Your Minecraft should now be set to have steady item frames once again.

For people with other mods, simply dropping the class file in with other mods should be fine but I cannot guarantee that they will not conflict with one another if the other mods touch item frames rendering in any way. This patch is intended for use with vanilla Minecraft installations.

Comment by Eric Areiter [ 28/Jul/13 ]

Any chance we can get a patch?

Comment by Gunni [ 28/Jul/13 ]

I have the same issue, starts being evident after x|z > 100.000 as it starts to vibrate a little when I move.

Comment by Eric Areiter [ 09/Jul/13 ]

Awesome, thanks!

Comment by Kru Batch [ 09/Jul/13 ]

Sure, I will see if I can't hammer one out.

Comment by Eric Areiter [ 08/Jul/13 ]

Can we get another community fix for it for 1.6.2? Thanks

Comment by Brad Larson [ 08/Jul/13 ]

1.6.1 and 1.6.2 arrived, still not fixed... baffling.

Comment by Brad Larson [ 31/May/13 ]

So This issue have been fixed by the community... yet they still haven't applied it to a patch yet?? All the work is done folks, DO IT! 1.6 better include this one for real!

Comment by Eric Areiter [ 23/May/13 ]

Thanks so much, that's amazing Stanley. You just made my week. We were just about to move our entire continent to around x=10k to get rid of the issue, now we don't have to.

Comment by Kru Batch [ 23/May/13 ]

@Eric - Here is a Minecraft 1.5.2.client JAR with the change I mentioned above implemented, I have been giving this out to players on my server to cope with this bug until it is fixed.

http://www.kruithne.net/minecraft.jar

Comment by Eric Areiter [ 23/May/13 ]

Is there any way this could be corrected via a mod until this is (hopefully) patched eventually?

Comment by Kru Batch [ 22/May/13 ]

Hello there,

This issue is caused by the calculation made when rendering the item frame with the players position and the players distance from 0, 0,0. The output of this calculation is made into a float before a following calculation with the entity frames position, causing it to round incorrectly with large numbers. To fix this issue, the first calculation output needs to be a double before being passed into the second, and then cast to a float after that instead.

Inside RenderItemFrame.java in the function JAD decompiles for me as func_82404_a.

double frameX = (par1EntityItemFrame.posX - par2) - 0.5D;
double frameY = (par1EntityItemFrame.posY - par4) - 0.5D;
double frameZ = (par1EntityItemFrame.posZ - par6) - 0.5D;

int var13 = par1EntityItemFrame.xPosition + Direction.offsetX[par1EntityItemFrame.hangingDirection];
int var14 = par1EntityItemFrame.yPosition;
int var15 = par1EntityItemFrame.zPosition + Direction.offsetZ[par1EntityItemFrame.hangingDirection];

double oX = var13 - frameX;
double oY = var14 - frameY;
double oZ = var15 - frameZ;

GL11.glTranslatef((float) oX, (float) oY, (float) oZ);
Comment by Eric Areiter [ 22/May/13 ]

This is incredibly annoying and I can't believe it is still not fixed

Comment by eluMC [ 03/Apr/13 ]

Each day that passes with the problem existing is increasingly more disheartening than the last. I'd beg for even some indication that this problem is being investigated in a meaningful way.

So so frustrating for those it effects!

Comment by Brad Larson [ 01/Apr/13 ]

This is still broken... I have this really awesome vault with 900 item chests, that have item frames marking them... and since I am far from the spawn on my server its completely worthless.... When are we fixing this folks? Still broken in 1.5.1, I would donate money to have it expedited to the top of the fix list.

Comment by Brad Larson [ 07/Mar/13 ]

This still happens in 1.5 prerelease confirmed!

Comment by Brad Larson [ 28/Feb/13 ]

Why has this not been fixed yet? honestly item frames are worthless when your over a couple mil from spawn, like in all of my multiplayer games. This seems like a basic rounding error in the code that could be fixed in seconds.

Comment by Stephen Colletta [ 11/Feb/13 ]

Confirmed. It happens at X 1,000,000 z 1,000,000 too.

Comment by FireHunterX [ 22/Nov/12 ]

Added 2 Screenshots of them glitching out in a Superflat world where I /tp'd to 2000000 40 2000000. One 2 sides they were black, but they behaved the same way.

Confirmed.

Comment by Must I Really [ 19/Nov/12 ]

MUCH more noticeable.

Comment by Must I Really [ 19/Nov/12 ]

The bug occurs at 2,000,000-(Y)-2,000,000; I made a mistake in typing my coordinates on the sign. I also tested it at 20,000,000-1-20,000,000... with much more severe results.

Comment by Chalmes (Jon) [ 19/Nov/12 ]

i expect the 200,000,000 on the sign is a typo, but i definitely reporoduced the bug at the coordinates as per my screenshot.

Comment by Kumasasa [ 19/Nov/12 ]

Can you both please check the coordinates ?
"Must I Really" wrote on his sign the coordinates 2 Mio / 200 Mio and Jon 2 Mio / 2 Mio .
The "Farlands" are beginning somewhere in the 20 Mio ... 32 Mio region, but not at 2 Mio.

Comment by Chalmes (Jon) [ 19/Nov/12 ]

Confirmed. Ported to 2,000,000, 64, 2,000,000 and placed an item frame on a block, item frame would jump around when I moved.

Generated at Sun Jan 12 12:01:24 UTC 2025 using Jira 9.12.2#9120002-sha1:301bf498dd45d800842af0b84230f1bb58606c13.