Minecraft:Bedrock Edition distance effects: Difference between revisions
More actions
Sync: updated from Minecraft Tag: Manual revert |
Sync: updated from Minecraft |
||
| (3 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
{{About|the effects caused by the 32-bit float precision loss|other uses|Distance effects}} | {{About|the effects caused by the 32-bit float precision loss|other uses|Distance effects}} | ||
{{Exclusive|Bedrock}} | {{Exclusive|Bedrock}} | ||
As the player travels far from the world's origin in {{BE}}, things begin to break or the world starts to behave abnormally and become distorted. This is mostly caused by precision loss of the [[Minecraft:w:Single-precision floating-point format|32-bit floating point numbers]] used for location, which dedicates only 23 bits to the fraction; thus, for any position between ''n'' and ''2n'', where n is a power of 2, the precision error makes the world (including blocks and entities) offset by {{frac|''n''|8388608}} blocks, or {{frac|''n''|524288}} block pixels. For example, between X/Z | As the player travels far from the world's origin in {{BE}}, things begin to break or the world starts to behave abnormally and become distorted. This is mostly caused by precision loss of the [[Minecraft:w:Single-precision floating-point format|32-bit floating point numbers]] used for location, which dedicates only 23 bits to the fraction; thus, for any position between ''n'' and ''2n'', where n is a power of 2, the precision error makes the world (including blocks and entities) offset by {{frac|''n''|8388608}} blocks, or {{frac|''n''|524288}} block pixels. For example, between X/Z ±15,491,998 and X/Z 15,491,999 coordinates of all entities are multiples of 2, and only blocks at these coordinates can be rendered; blocks not at these values visually snap to them. | ||
There are a few effects that appear at coordinates other than powers of two, which are shaded in blue on this page. Furthermore, the game defines some intended horizontal and vertical limits for gameplay, such as teleporting being limited to X/Y/Z ±30,000,000. See [[Minecraft:World boundary]] for information on these limits. | There are a few effects that appear at coordinates other than powers of two, which are shaded in blue on this page. Furthermore, the game defines some intended horizontal and vertical limits for gameplay, such as teleporting being limited to X/Y/Z ±30,000,000. See [[Minecraft:World boundary]] for information on these limits. | ||
[[File:Bedrock Edition hard limits map.png|thumb|right|Map of other distance effects ( | [[File:Bedrock Edition hard limits map.png|thumb|right|Map of other distance effects (not to scale). The Corner Slice Lands still have a [[bedrock]] ocean, despite the rendering effectively stopping due to one-dimensional terrain generation.]] | ||
== General effects == | == General effects == | ||
Some effects can occur at any distance but gradually worsen as the coordinates increase. {{BE}} uses 32-bit floating points for many of its calculations, such as the player's position, as opposed to {{JE}}, which uses 64-bit floating points. A 32-bit floating point uses 23 of these bits for precision (the other 9 are used for the sign and the order of magnitude). Thus, there are 2<sup>23</sup> (8,388,608) possible positions for any given order of magnitude. For example, there are 8,388,608 possible positions between 1 and 2, each {{frac|1|8,388,608}} apart, but there are also 8,388,608 possible positions between 8,388,608 and 16,777,216, each a full block apart. In general, between 2<sup>''n''</sup> and 2<sup>''n''+1</sup>, the valid positions are 2<sup>''n''-23</sup> apart. At higher coordinates, the valid positions are farther apart, so the position is less precise. This principle has several implications. | Some effects can occur at any distance but gradually worsen as the coordinates increase. {{BE}} uses 32-bit floating points for many of its calculations, such as the player's position, as opposed to {{JE}}, which uses 64-bit floating points. A 32-bit floating point uses 23 of these bits for precision (the other 9 are used for the sign and the order of magnitude). Thus, there are 2<sup>23</sup> (8,388,608) possible positions for any given order of magnitude. For example, there are 8,388,608 possible positions between 1 and 2, each {{frac|1|8,388,608}} apart, but there are also 8,388,608 possible positions between 8,388,608 and 16,777,216, each a full block apart. In general, between 2<sup>''n''</sup> and 2<sup>''n''+1</sup>, the valid positions are 2<sup>''n''-23</sup> apart. At higher coordinates, the valid positions are farther apart, so the position is less precise. This principle has several implications. | ||
| Line 212: | Line 212: | ||
* [[Minecraft:Pressure plate]]s cover an entire block. | * [[Minecraft:Pressure plate]]s cover an entire block. | ||
* [[Minecraft:Redstone repeater]]s and [[Minecraft:redstone comparator]]s render without torches. | * [[Minecraft:Redstone repeater]]s and [[Minecraft:redstone comparator]]s render without torches. | ||
* [[Minecraft:Cocoa | * [[Minecraft:Cocoa beans]] in the second stage render as wide as mature cocoa beans. | ||
* The [[Minecraft:cacti]] renders as a full block, with gaps at the edges. | * The [[Minecraft:cacti]] renders as a full block, with gaps at the edges. | ||
* [[Minecraft:Bamboo]] renders wider than normal, flat, or invisible. | * [[Minecraft:Bamboo]] renders wider than normal, flat, or invisible. | ||
| Line 428: | Line 428: | ||
| | | | ||
* The game crashes near this point, as this is above the maximum value for a signed 32-bit binary integer in C++<ref>{{tweet|jeb|122350670648066049|The Pocket Edition is ported to C++|2011-10-7}}</ref><ref>{{cite|url=https://news.xbox.com/en-us/wp-content/uploads/sites/2/2021/04/Minecraft-Franchise-Fact-Sheet_April-2021.pdf|title=Minecraft Franchise Fact Sheet|date=April 4, 2021|website=Xbox Wire}}</ref> (using a 32-bit system). Specifically, the game crashes if the player attempts to load a chunk that is within 64 blocks of this limit of 2 frames, so increasing the render distance can make the rendering limit get closer and crash the game. | * The game crashes near this point, as this is above the maximum value for a signed 32-bit binary integer in C++<ref>{{tweet|jeb|122350670648066049|The Pocket Edition is ported to C++|2011-10-7}}</ref><ref>{{cite|url=https://news.xbox.com/en-us/wp-content/uploads/sites/2/2021/04/Minecraft-Franchise-Fact-Sheet_April-2021.pdf|title=Minecraft Franchise Fact Sheet|date=April 4, 2021|website=Xbox Wire}}</ref> (using a 32-bit system). Specifically, the game crashes if the player attempts to load a chunk that is within 64 blocks of this limit of 2 frames, so increasing the render distance can make the rendering limit get closer and crash the game. | ||
* In older versions, teleporting a few blocks just before this limit causes the player to get stuck in a glitched position after a few seconds, being unable to move in any direction ( | * In older versions, teleporting a few blocks just before this limit causes the player to get stuck in a glitched position after a few seconds, being unable to move in any direction (although moving the camera is still possible). This happens especially with a high render distance. | ||
|} | |} | ||
| Line 479: | Line 479: | ||
== Stripe Lands == | == Stripe Lands == | ||
[[File:Stripe Lands Swamp.jpg|thumb|197x197px|The "Stripe Lands" at X/Z 16,777,216 | [[File:Stripe Lands Swamp.jpg|thumb|197x197px|The "Stripe Lands" at X/Z 16,777,216]] | ||
[[File:Stripe Lands_0.jpg|thumb|197x197px|Ditto but captured in the new version{{info needed|What version?}}]] | [[File:Stripe Lands_0.jpg|thumb|197x197px|Ditto but captured in the new version{{info needed|What version?}}]] | ||
The "Stripe Lands" are an artifact of the game's rendering and block hitbox calculation, rather than a quirk relating directly to terrain generation.<ref name="StripeLands">{{reddit|name=stripe lands|sub=MCPE|24sshy/no_far_lands_how_about_the_stripe_lands|chah6ah|context=3|MCPE uses single precision (faster and more mobile-friendly), so, sadly, you notice the first jittering around 700k and it's well unplayable around 900k.|mojang_tommo|May 5, 2014}}</ref> The Stripe Lands start at X/Z ±16,777,216. They exist because coordinates are off by up to a full block, causing the blocks themselves (not just their corners) to appear in the wrong places. | The "Stripe Lands" are an artifact of the game's rendering and block hitbox calculation, rather than a quirk relating directly to terrain generation.<ref name="StripeLands">{{reddit|name=stripe lands|sub=MCPE|24sshy/no_far_lands_how_about_the_stripe_lands|chah6ah|context=3|MCPE uses single precision (faster and more mobile-friendly), so, sadly, you notice the first jittering around 700k and it's well unplayable around 900k.|mojang_tommo|May 5, 2014}}</ref> The Stripe Lands start at X/Z ±16,777,216. They exist because coordinates are off by up to a full block, causing the blocks themselves (not just their corners) to appear in the wrong places. | ||
| Line 649: | Line 649: | ||
Lost of mountain in bedrock 1.png|Disappearing mountain biomes and exposed lava lake | Lost of mountain in bedrock 1.png|Disappearing mountain biomes and exposed lava lake | ||
Lost of mountain in bedrock 2.png|Another landscape | Lost of mountain in bedrock 2.png|Another landscape | ||
2022-06-23 (17).png|An ancient city exposed by the generation failing | 2022-06-23 (17).png|An ancient city exposed by the generation failing | ||
2022-09-10 (11).png|A woodland mansion and pillager outpost generating in the failed terrain | 2022-09-10 (11).png|A woodland mansion and pillager outpost generating in the failed terrain | ||
2022-06-23 (1).png|Terrain failing near the Stripe Lands | 2022-06-23 (1).png|Terrain failing near the Stripe Lands | ||
BETerrainBreakdownThreshold.png|The edge of the terrain breakdown | BETerrainBreakdownThreshold.png|The edge of the terrain breakdown | ||
Stuffed Islands in The End.png|The starting point of the End terrain malfunction | Stuffed Islands in The End.png|The starting point of the End terrain malfunction | ||
| Line 658: | Line 658: | ||
End terrain malfunction in Stripe Lands.png|End terrain malfunction near the Stripe Lands | End terrain malfunction in Stripe Lands.png|End terrain malfunction near the Stripe Lands | ||
BE Terrain Breakdown - Monolith.png|[[Minecraft:Monolith]]-like structures generating beyond X/Z ±2,812,333 | BE Terrain Breakdown - Monolith.png|[[Minecraft:Monolith]]-like structures generating beyond X/Z ±2,812,333 | ||
Image5.png|At exactly 2,812,333 blocks on mobile | Image5.png|At exactly 2,812,333 blocks on mobile | ||
</gallery> | </gallery> | ||
==== Other effects ==== | ==== Other effects ==== | ||
<gallery> | <gallery> | ||
Thick tripwire hook.png|Tripwire hook becomes thick beyond ±1,048,576 | Thick tripwire hook.png|Tripwire hook becomes thick beyond ±1,048,576. | ||
Firefly bush bigger.png|Firefly bushes are slightly wider beyond ±1,048,576 | Firefly bush bigger.png|Firefly bushes are slightly wider beyond ±1,048,576. | ||
Screenshot 2024-11-30 164219.png|Torches become 2D or invisible after ±1,048,576 | Screenshot 2024-11-30 164219.png|Torches become 2D or invisible after ±1,048,576. | ||
Screenshot 2024-11-30 175123.png|Blocks, entities, and items glitching after ±1,048,576 | Screenshot 2024-11-30 175123.png|Blocks, entities, and items glitching after ±1,048,576 | ||
ThickTripwirehook X axis.png|Render of a tripwire hook beyond ±1,048,576 in one direction | ThickTripwirehook X axis.png|Render of a tripwire hook beyond ±1,048,576 in one direction | ||
Torch z ±1048576.png|Render of a torch beyond ±1,048,576 in one direction | Torch z ±1048576.png|Render of a torch beyond ±1,048,576 in one direction | ||
Highway streetlight shaped tripwire hook.png|Tripwire hook base becomes flat and metal thin again shaped like highway streetlights beyond ±2,097,152. | Highway streetlight shaped tripwire hook.png|Tripwire hook base becomes flat and metal thin again shaped like highway streetlights beyond ±2,097,152. | ||
BEFenceGateGlitch.png|Fence gate texture renders flat after ±2,097,152 | BEFenceGateGlitch.png|Fence gate texture renders flat after ±2,097,152. | ||
OutpostFenceRenderError.png|Fence post renders invisible in a pillager outpost beyond ±2,097,152 | OutpostFenceRenderError.png|Fence post renders invisible in a pillager outpost beyond ±2,097,152. | ||
Tripwire hook highway shaped Z axis.png|Render of a tripwire hook beyond ±2,097,152 in one direction | Tripwire hook highway shaped Z axis.png|Render of a tripwire hook beyond ±2,097,152 in one direction | ||
Tripwire hooks become 2D and base invisible.png|Render of a tripwire hook beyond ±2,097,152 in both directions | Tripwire hooks become 2D and base invisible.png|Render of a tripwire hook beyond ±2,097,152 in both directions | ||
| Line 678: | Line 678: | ||
BE redstone 4194304.png|Redstone posted beyond ±4,194,304 blocks. Redstone lines are completely invisible and the rest of redstone renders incorrectly (one of the crosses is connected to four lines). | BE redstone 4194304.png|Redstone posted beyond ±4,194,304 blocks. Redstone lines are completely invisible and the rest of redstone renders incorrectly (one of the crosses is connected to four lines). | ||
BE redstone 8388608.png|Redstone placed beyond ±8,388,608 blocks. Unlike the [[Minecraft:Java Edition distance effects#Redstone wire|similar historical redstone model issue on ''Java Edition'']], redstone lines are stretched to a full block in both directions. | BE redstone 8388608.png|Redstone placed beyond ±8,388,608 blocks. Unlike the [[Minecraft:Java Edition distance effects#Redstone wire|similar historical redstone model issue on ''Java Edition'']], redstone lines are stretched to a full block in both directions. | ||
Zipcave.png|A cave generated beyond ±8,388,608, with serrated-looking edge walls in front and the perfect holes in the back | Zipcave.png|A cave generated beyond ±8,388,608, with serrated-looking edge walls in front and the perfect holes in the back | ||
BE Badlands 8388608.png|A badlands biome beyond ±8,388,608, with noticeably distorted terracotta strata | BE Badlands 8388608.png|A badlands biome beyond ±8,388,608, with noticeably distorted terracotta strata | ||
Fences8388608.png|Fences after ±8,388,608 (left) and before (right) | Fences8388608.png|Fences after ±8,388,608 (left) and before (right) | ||
Image2.png|At exactly 8,388,608 blocks, where flowers become 2-dimensional. | Image2.png|At exactly 8,388,608 blocks, where flowers become 2-dimensional. | ||
SplitStonecutterError.png|Stonecutter blades duplicate on the edge after ±8,388,608 | SplitStonecutterError.png|Stonecutter blades duplicate on the edge after ±8,388,608. | ||
Stretched and 2d tripwire hook.png|Tripwire hooks become completely distorted, one stretched to a full block without the metal part, one becomes 2D and the metal part becomes invisible beyond ±8,388,608. | Stretched and 2d tripwire hook.png|Tripwire hooks become completely distorted, one stretched to a full block without the metal part, one becomes 2D and the metal part becomes invisible beyond ±8,388,608. | ||
Canyon near far lands.png|[[Minecraft:Canyon]]s generate more blocky beyond ±8,388,608. | Canyon near far lands.png|[[Minecraft:Canyon]]s generate more blocky beyond ±8,388,608. | ||
Chain X 8388608.png|Render of a chain beyond ±8,388,608 in one direction | Chain X 8388608.png|Render of a chain beyond ±8,388,608 in one direction | ||
Chain both axis.png|Render of a chain beyond ±8,388,608 in both directions | Chain both axis.png|Render of a chain beyond ±8,388,608 in both directions | ||
Z fighting piston.png|The piston head Z-fighting with the piston brain | Z fighting piston.png|The piston head Z-fighting with the piston brain | ||
CactusRenderingErrorBE.png|Cacti incorrectly render as full blocks, with gaps at the edges | CactusRenderingErrorBE.png|Cacti incorrectly render as full blocks, with gaps at the edges. | ||
BEComposterCauldronRenderError.png|Cauldron and composter have completely flat walls | BEComposterCauldronRenderError.png|Cauldron and composter have completely flat walls. | ||
Beyond some point crops become 2d on each side.png|Beyond some point crops become 2D on each side | Beyond some point crops become 2d on each side.png|Beyond some point crops become 2D on each side{{info needed}} | ||
Screenshot 20251007-182834.png|Some blocks, including the [[Minecraft:shelf]], are stretched or rendered incorrectly. | Screenshot 20251007-182834.png|Some blocks, including the [[Minecraft:shelf]], are stretched or rendered incorrectly. | ||
BEFenceGlitch.png|Fence texture renders flat | BEFenceGlitch.png|Fence texture renders flat. | ||
Lead past 1048576.png|Leads zig zag beyond X/Z ±1,048,576 | Lead past 1048576.png|Leads zig zag beyond X/Z ±1,048,576. | ||
Dripstone past 8388608.png|Pointed dripstone beyond X/Z ±8,388,608 | Dripstone past 8388608.png|Pointed dripstone beyond X/Z ±8,388,608 | ||
Shadow past 8388608.png|Shadows appears blocky past X/Z ±8,388,608 | Shadow past 8388608.png|Shadows appears blocky past X/Z ±8,388,608. | ||
</gallery> | </gallery> | ||
| Line 701: | Line 701: | ||
==== Stripe Lands ==== | ==== Stripe Lands ==== | ||
<gallery> | <gallery> | ||
Stripe Lands.jpg|The first screenshot posted of the Stripe Lands, by [[Minecraft:Tommaso Checchi]], at 32,000,000 | Stripe Lands.jpg|The first screenshot posted of the Stripe Lands, by [[Minecraft:Tommaso Checchi]], at 32,000,000<ref>{{tweet|tomcc|463398793723928576|So, I've teleported to X{{=}}32.000.000... the Stripe Lands?|May 5, 2014}}</ref> | ||
Stripe Lands Start.jpg|The start of the Stripe Lands at ±16,777,216 | Stripe Lands Start.jpg|The start of the Stripe Lands at ±16,777,216 | ||
2022-06-23 (14) (1).png|A high shot of a village near the Stripe Lands | 2022-06-23 (14) (1).png|A high shot of a village near the Stripe Lands | ||
Frozen Stripe Lands.jpg|A frozen ocean biome in the Stripe Lands | Frozen Stripe Lands.jpg|A frozen ocean biome in the Stripe Lands | ||
Stripe Lands Ruins.png|Underwater ruins in the Stripe Lands | Stripe Lands Ruins.png|Underwater ruins in the Stripe Lands | ||
Latest revision as of 11:02, 4 June 2026
|
For the {{{Description}}} of the same name, see [[{{{Destination}}}]]. |
Template:Exclusive As the player travels far from the world's origin in Template:BE, things begin to break or the world starts to behave abnormally and become distorted. This is mostly caused by precision loss of the 32-bit floating point numbers used for location, which dedicates only 23 bits to the fraction; thus, for any position between n and 2n, where n is a power of 2, the precision error makes the world (including blocks and entities) offset by Template:Frac blocks, or Template:Frac block pixels. For example, between X/Z ±15,491,998 and X/Z 15,491,999 coordinates of all entities are multiples of 2, and only blocks at these coordinates can be rendered; blocks not at these values visually snap to them.
There are a few effects that appear at coordinates other than powers of two, which are shaded in blue on this page. Furthermore, the game defines some intended horizontal and vertical limits for gameplay, such as teleporting being limited to X/Y/Z ±30,000,000. See Minecraft:World boundary for information on these limits.
General effects
Some effects can occur at any distance but gradually worsen as the coordinates increase. Template:BE uses 32-bit floating points for many of its calculations, such as the player's position, as opposed to Template:JE, which uses 64-bit floating points. A 32-bit floating point uses 23 of these bits for precision (the other 9 are used for the sign and the order of magnitude). Thus, there are 223 (8,388,608) possible positions for any given order of magnitude. For example, there are 8,388,608 possible positions between 1 and 2, each Template:Frac apart, but there are also 8,388,608 possible positions between 8,388,608 and 16,777,216, each a full block apart. In general, between 2n and 2n+1, the valid positions are 2n-23 apart. At higher coordinates, the valid positions are farther apart, so the position is less precise. This principle has several implications.
Block rendering errors
Various blocks are rendered as partial blocks, and the game uses 32-bit floating points to calculate the corners. At high coordinates, these coordinates become offset, causing the block to render incorrectly. Blocks with more detailed models usually become glitched at lower coordinates. A few blocks start to render incorrectly at a relatively low 131,072 blocks, while full blocks continue to render correctly past 8,388,608 blocks up to X/Z ±16,777,216, farther out than most partial blocks.
Terrain generation errors
Many Minecraft:mountain biomes gradually stop generating at around X/Z ±2,812,332, replacing by lava lakes. Ancient cities will also be exposed above ground. On Windows, the terrain generation of Minecraft:the End begins to generate incorrectly beyond X/Z > ±9,991,500 (the exact starting position varies slightly depending on the seed), and the outer islands will be filled to almost solid. After 1.18 the terrain generation in the Nether and Overworld start to generate incorrectly beyond X or Z 67,108,864 where it seems stretched and this effect doubles at every power of 2 beyond this point.
Slow movement becomes impossible
For an entity to move, it advances a certain distance each tick. At slow speeds or high coordinates, the increase in distance per tick is so little that when rounding to the nearest valid position, the entity is placed at its original position, so it essentially does not move at all. More specifically, between 2n and 2n+1, an entity's speed is rounded to the nearest multiple of 20×2n-23, so it must move at least 10×2n-23 to actually be considered moving.
There are several ways to slow the player's movement, such as Minecraft:sneaking, Minecraft:status effects, using an item (e.g. drawing back a Minecraft:bow), or certain blocks (such as Minecraft:cobwebs and Minecraft:soul sands). In addition, moving diagonally decreases the player's speed on any given axis. This effect can be amplified by moving almost (but not exactly) along an axis, and by walking into an object, one can do this without changing their coordinate on the other axis. Note that due to trigonometric rounding errors,Template:Verify extremely small angles do not cause the player to move as slowly as expected. The slowest form of movement without walking into objects (Minecraft:sneaking through Minecraft:cobweb over Minecraft:blue ice with Minecraft:Slowness VI while touching Minecraft:powder snow and drawing back a Minecraft:bow) becomes impossible at 2048 blocks, and coincidentally, the slowest form of movement achievable by walking into an object at a slight angle also becomes impossible at 128 blocks; as a result, both methods must be used to slow the player down if one wishes to observe this effect at lower coordinates.
Jitter
The game normally runs at 60 frames per second, so when the player moves, the game must calculate the camera position on the intermediate frames between ticks. This is normally not an issue, but if the player is moving close to the slowest possible speed, the camera position on intermediate frames becomes distorted, the game starts to jitter and cause delay movements.
Eventually, the slow speed and precision errors reach a point where the player advances by only one valid position per tick, forcing that the game to render the intermediate frames at exactly the starting or ending position. As a result, the camera moves as though the game ran at 20 frames per second instead of 60.
Since slower speeds become jittery at lower coordinates, it is impossible to say exactly where jitter "starts", as it is an effect that gradually becomes more severe as the player moves further away from the center of the world. However, jittering at regular walking speed becomes obvious at or beyond X/Z ±524,288.
Falling through the world
At extreme coordinates, small entity hitboxes shrink to a width of 0, and such entities can fall through the edges of solid blocks. For example, if an entity smaller than Template:Frac blocks exceeds coordinate 2,097,152, its position is rounded to the nearest quarter. Since its hitbox extends less than Template:Frac from a valid position in each direction, both sides of the hitbox are rounded to the same position, so the apparent hitbox size is 0.
In addition, it is possible to manipulate hitboxes and fall through the world at much lower coordinates. While the positions of the centers of entities are stored in NBT, the positions of the individual hitbox corners are stored in memory. If the player is crossing a power of 2, these corners may move at different speeds, if they are affected differently by floating-point precision errors, thus changing the hitbox size. The hitbox size resets to 0.6 in certain situations, including:Template:Info needed
- Exiting and reloading the world.
- Using the Template:Cmd command.
- Switching between Minecraft:walking, Minecraft:sneaking, Minecraft:crawling, Minecraft:swimming, and Minecraft:gliding positions.
- Teleporting using Minecraft:ender pearls or Minecraft:chorus fruit.
Again, if the player's hitbox size shrinks to 0, it becomes possible to fall through the edges of blocks and into the void.<ref>Template:Bug</ref> Conversely, it is possible to stretch one's hitbox to several blocks wide.<ref>Template:Ytl</ref>
Minor effects (X/Z ±0–131,071)
Minor movement effects occurs here; no block distortion occurs here.<ref>Template:Bug</ref>
| Coordinates | Effects |
|---|---|
| X/Z ±1 (±20) |
|
| X/Z ±128 (±27) |
|
| X/Z ±256 (±28) |
|
| X/Z ±512 (±29) |
|
| X/Z ±1,024 (±210) |
|
| X/Z ±2,048 (±211) |
|
| X/Z ±4,096 (±212) |
|
| X/Z ±8,192 (±213) |
|
| X/Z ±16,384 (±214) |
|
| Between X/Z ±≈19,188 and ±≈19,200 |
|
| X/Z ±32,768 (±215) |
|
| Between X/Z ±≈40,960 and ±≈44,036 |
|
| X/Z ±65,536 (±216) |
|
Medium effects (X/Z ±131,072–1,048,575)
Eventually, some common forms of movement begin to glitch. In addition, blocks with detailed models begin to render incorrectly.
| Coordinates | Effects |
|---|---|
| X/Z ±131,072 (±217) |
|
| X/Z ±262,144 (±218) |
|
| X/Z ±524,288 (±219) |
|
Major effects (X/Z ±1,048,576–16,777,215)
Template:Info needed section Blocks are rendered based on their corners, whose coordinates are 32-bit floating point numbers. Generally, these are multiples of Template:Frac. Thus, most blocks render normally as long the floating points are precise to the nearest sixteenth. This breaks at X/Z ±1,048,576 (220), and many partial blocks continue to render incorrectly as the coordinates go even farther out.<ref>Template:Bug</ref>
When Minecraft:RTX (ray tracing) is enabled, the lighting is unaffected by floating-point precision errors, even though the block shapes themselves are incorrect.<ref>Template:Ytl</ref>
Many commonly-used forms of movement, such as sneaking and walking, becomes difficult or even impossible, with severe jittery. It becomes harder to stand on blocks and easier to fall through the world. In addition, the terrain starts to break down following the table.
| Coordinates | Effects |
|---|---|
| X/Z ±1,048,576 (±220) |
|
| X/Z ±2,097,152 (±221) |
|
| X/Z ±2,812,333 |
|
| X/Z ±4,194,304<ref>Template:Bug</ref> (±222) |
|
| X/Z ±8,388,608 (±223) |
|
Game-breaking effects (X/Z ≥±16,777,216)
Template:Info needed section Here, the rendering fundamentally breaks down to the point where Minecraft:blocks are no longer visible. The minimum speed for moving gradually increases, up to the point that regular Creative mode flying is no longer possible, and the player is limited to flying with Minecraft:elytra and a Minecraft:Riptide trident, or a glitch where the speed from Minecraft:Soul Speed is infinitely applied to Creative mode flying.
At extreme coordinates near the integer limit, the game crashes.
| Coordinates | Effects |
|---|---|
| X/Z ±16,777,216<ref>Template:Bug</ref> (±224) |
|
| X/Z ±33,554,432 (±225) |
|
| X/Z ±67,108,864 (±226) |
|
| X/Z ±134,217,728 (±227) |
|
| X/Z ±268,435,456 (±228) |
|
| X/Z ±536,870,912 (±229) |
|
| X/Z ±1,073,741,824 (±230) |
|
| X/Z ±2,147,483,647 (±231 − 1) |
|
Beyond the 32-bit limit
These distances are practically not reachable since the game runs on 32-bit integers, and therefore all effects are theoretical. Every power of two in coordinates, the visual gaps double in width, and the minimum movements speed doubles.
| Coordinates | Effects |
|---|---|
| X/Z ±2,147,483,648 (±231) |
|
| X/Z ±4,294,967,296 (±232) |
|
| X/Z ±34,359,738,368 (±235) |
|
| X/Z ±281,474,976,710,656 (±248) |
|
| X/Z ±53,905,378,846,979,748 (±Template:Frac) |
|
| X/Z ±9,223,372,036,854,775,807 (±263 – 1) |
|
| X/Z ±~3.4028237e+38 or ±~3.4028237×1038 (±2128) |
|
| X/Z ±~1.7976931e+308 or ±~1.7976931×10308 (±21024) |
|
Stripe Lands
The "Stripe Lands" are an artifact of the game's rendering and block hitbox calculation, rather than a quirk relating directly to terrain generation.<ref name="StripeLands">Template:Reddit</ref> The Stripe Lands start at X/Z ±16,777,216. They exist because coordinates are off by up to a full block, causing the blocks themselves (not just their corners) to appear in the wrong places.
As it can be difficult to use Minecraft:Creative mode flight to move here, using elytra propelled with either a Minecraft:Riptide trident or Minecraft:firework rockets allows the user to easily move through this region. A Minecraft:spear enchanted with Minecraft:Lunge III is very useful for more precise movement, due to it moving the player to the next valid position.
Past X/Z ±33,554,432, all blocks are rendered as two-dimensional, and the gap between valid blocks doubles to 1 out of four, which makes horizontal block rendering stop completely, marking the "Slice Lands". This gap doubles again at every power of 2 and reaches 128 blocks wide at X/Z: ±1,073,741,824. This is the widest the gaps can be since the game crashes near X/Z: ±2,147,483,648.
Vertical effects
Template:Missing information Like the X and Z axis, the game breaks at excessive Y coordinates. Since blocks cannot be placed at Minecraft:altitudes higher than Y=128 in the Nether and the End, or Y=320 in the Overworld, block rendering glitches are inaccessible, but many forms of vertical entity movement become impossible and other effects are accessible.
Vertical effects are not encounterable in the Nether or the Minecraft:void below any dimension in Minecraft:Survival mode, because a Minecraft:bedrock barrier prevents all entities from entering the void without using glitches. Furthermore, a barrier from Minecraft:invisible bedrock stops all entities at Y=-40 in the Nether and the End or Y=-104 in the Overworld, while taking Template:Hp damage every half second (except players in Minecraft:Creative mode). Beyond this entities can move only vertically using the "fall through the world" glitch past ±8,388,608, or teleporting below the barrier.
| Coordinates | Effects |
|---|---|
| Y ±65,536 (±216) |
|
| Y ±131,072 (±217) |
|
| Y ±262,144 (±218) |
|
| Y ±524,288 (±219) |
|
| Y ±1,048,576 (±220) |
|
| Y ±2,097,152 (±221) |
|
| Y ±4,194,304 (±222) |
|
| Y ±8,388,608 (±223) |
|
| Y ±16,777,216 (±224) |
|
| Y ±33,554,432 (±225) |
|
| Y ±67,108,864 (±226) |
|
| Y ±134,217,728 (±227) |
|
| Y ±268,435,456 (±228) |
|
| Y ±536,870,912 (±229) |
|
| Y ±1,073,741,824 (±230) |
|
| Y ±2,147,483,647 (±231 − 1) |
|
| Y ±9,223,372,036,854,775,807 (±263 – 1) |
|
| Y ±~3.4028237e+38 or ±~3.4028237×1038 (±2128) |
|
| Y ±~1.7976931e+308 or ±~1.7976931×10308 (±21024) |
|
History
Gallery
Below 131,072
-
The screen flickers when at the edge of the powder snow past X/Z ±32,768.
-
Outline boxes are distorted using Minecraft:Vibrant Visuals past X/Z ±65,536.
-
Black particles happen at every power of 2 starting around Y ±65,536.
131,072 - 1,048,575
-
Tripwire hooks appear distorted past X/Z ±131,072, with noticeable curvy lines.
-
Lever handles appear distorted past X/Z ±131,072, with slight curvy lines.
-
Lecterns appear distorted past X/Z ±131,072, slightly stretched to full blocks.
-
The top part of the metal hook is thin and further distorted after X/Z ±262,144.
-
Inner part of item frames becomes 2D after X/Z ±524,288.
-
Top part of candles rendering incorrectly beyond X/Z ±524,288.
-
Paintings turn black beyond X/Z ±524,288.
-
Paintings are pushed half a pixel into the block beyond X/Z ±524,288.
-
Metal hook of tripwire hooks are thin beyond X/Z ±524,288.
-
Item frames become inaccurate beyond ±524,288 X/Z.
-
Paintings positioned on the Z axis no longer render correctly beyond ±524,288 X/Z.
-
Candle tips no longer render correctly beyond ±524,288 X/Z.
-
Jitter is easily noticeable beyond X/Z ±524,288.
1,048,576 - 16,777,215
Terrain breakdown
-
Terrain failing to generate correctly beyond X/Z ±2,812,333, exposing Minecraft:aquifers to the surface
-
Disappearing mountain biomes and exposed lava lake
-
Another landscape
-
An ancient city exposed by the generation failing
-
A woodland mansion and pillager outpost generating in the failed terrain
-
Terrain failing near the Stripe Lands
-
The edge of the terrain breakdown
-
The starting point of the End terrain malfunction
-
Terrain in a corner
-
Overhead view
-
End terrain malfunction near the Stripe Lands
-
Minecraft:Monolith-like structures generating beyond X/Z ±2,812,333
-
At exactly 2,812,333 blocks on mobile
Other effects
-
Tripwire hook becomes thick beyond ±1,048,576.
-
Firefly bushes are slightly wider beyond ±1,048,576.
-
Torches become 2D or invisible after ±1,048,576.
-
Blocks, entities, and items glitching after ±1,048,576
-
Render of a tripwire hook beyond ±1,048,576 in one direction
-
Render of a torch beyond ±1,048,576 in one direction
-
Tripwire hook base becomes flat and metal thin again shaped like highway streetlights beyond ±2,097,152.
-
Fence gate texture renders flat after ±2,097,152.
-
Fence post renders invisible in a pillager outpost beyond ±2,097,152.
-
Render of a tripwire hook beyond ±2,097,152 in one direction
-
Render of a tripwire hook beyond ±2,097,152 in both directions
-
Tripwire metal becomes 2D beyond ±4,194,304.
-
An Minecraft:End portal frame containing an Minecraft:eye of ender placed beyond ±4,194,304
-
Redstone posted beyond ±4,194,304 blocks. Redstone lines are completely invisible and the rest of redstone renders incorrectly (one of the crosses is connected to four lines).
-
Redstone placed beyond ±8,388,608 blocks. Unlike the similar historical redstone model issue on Java Edition, redstone lines are stretched to a full block in both directions.
-
A cave generated beyond ±8,388,608, with serrated-looking edge walls in front and the perfect holes in the back
-
A badlands biome beyond ±8,388,608, with noticeably distorted terracotta strata
-
Fences after ±8,388,608 (left) and before (right)
-
At exactly 8,388,608 blocks, where flowers become 2-dimensional.
-
Stonecutter blades duplicate on the edge after ±8,388,608.
-
Tripwire hooks become completely distorted, one stretched to a full block without the metal part, one becomes 2D and the metal part becomes invisible beyond ±8,388,608.
-
Minecraft:Canyons generate more blocky beyond ±8,388,608.
-
Render of a chain beyond ±8,388,608 in one direction
-
Render of a chain beyond ±8,388,608 in both directions
-
The piston head Z-fighting with the piston brain
-
Cacti incorrectly render as full blocks, with gaps at the edges.
-
Cauldron and composter have completely flat walls.
-
Beyond some point crops become 2D on each sideTemplate:Info needed
-
Some blocks, including the Minecraft:shelf, are stretched or rendered incorrectly.
-
Fence texture renders flat.
-
Leads zig zag beyond X/Z ±1,048,576.
-
Pointed dripstone beyond X/Z ±8,388,608
-
Shadows appears blocky past X/Z ±8,388,608.
16,777,216 - 2,147,483,647
Stripe Lands
-
The first screenshot posted of the Stripe Lands, by Minecraft:Tommaso Checchi, at 32,000,000<ref>Template:Tweet</ref>
-
The start of the Stripe Lands at ±16,777,216
-
A high shot of a village near the Stripe Lands
-
A frozen ocean biome in the Stripe Lands
-
Underwater ruins in the Stripe Lands
-
Eroded badlands in the Stripe Lands
-
A high shot of the Stripe Lands
-
A cave in the Stripe Lands
-
A pillager outpost in the Stripe Lands with failed terrain
-
The Stripe Lands in a flat world
-
The start of the Corner Stripe Lands
-
The Corner Stripe Lands
-
A badlands biome beyond ±16,777,216, featuring even more distorted terracotta strata
-
A Minecraft:windswept gravelly hills biome beyond ±16,777,216
-
Terrain failing in the Stripe Lands
-
Terrain failing in the Corner Stripe Lands
-
The monolith-like terrain bug in the Stripe Lands
-
The Corner Stripe Lands in the Nether
-
A player riding a horse past ±16,777,216, which does not fall through the world
-
Stripe Lands in Minecraft:Bedrock Editor, notice a map matching with stripes
-
Terrain breakdown and Stripe Lands in Bedrock Editor
-
The Stripe Lands captured Template:In
Slice Lands
-
Water in Stripe Lands and Slice Lands
-
The boundary area in the form of Slice Lands and Stripe Lands
-
Blocks become invisible after ±33,554,432 in Minecraft:flat worlds.
-
The Stripe and Slice Lands using Minecraft:Vibrant Visuals
-
The start of the Corner Slice Lands
-
Woodland mansion in the Corner Slice Lands
-
Block entities rendering in the Corner Slice Lands
-
Water rendering in the Corner Slice Lands
-
The beginning of the Slice Lands in modern versions of Bedrock Edition
-
The beginning of the Slice Lands in a Minecraft:forest
Beyond the Slice Lands
-
The world beyond ±67,108,864, with a distance of eight blocks between rendered sections
-
The world beyond ±134,217,728, with a distance of 1 chunk between rendered sections
-
The world beyond ±268,435,456, with a distance of two chunks between rendered sections
-
The world beyond ±536,870,912, with a distance of four chunks between rendered sections. A large area in front of the player is completely invisible, presumably due to the fructum culling losing precision.
-
The world beyond X/Z ±1,073,741,824, with a distance of eight chunks between rendered sections
References
Template:Navbox environment Minecraft:ja:距離効果/Bedrock Edition Minecraft:zh:距离现象/基岩版