Minecraft:Bedrock Edition distance effects: Difference between revisions
More actions
Sync: updated from Minecraft |
Sync: updated from Minecraft |
||
| 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 ±15,491,998 and X/Z 15,491,999 | 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 (not to scale). The Corner Slice Lands still have a [[bedrock]] ocean, despite the rendering effectively stopping due to one-dimensional terrain generation.]] | [[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 186: | Line 187: | ||
* [[Minecraft:Fence]]s (excluding the posts) and closed [[Minecraft:fence gate]]s render completely flat. | * [[Minecraft:Fence]]s (excluding the posts) and closed [[Minecraft:fence gate]]s render completely flat. | ||
* [[Minecraft:Door]]s and open [[Minecraft:trapdoor]]s render thinner than normal. | * [[Minecraft:Door]]s and open [[Minecraft:trapdoor]]s render thinner than normal. | ||
* [[Minecraft:Iron | * [[Minecraft:Iron bar]]s and [[Minecraft:glass pane]]s render twice as wide than normal. | ||
* Climbing up ladders and vines while sneaking is extremely slow. | * Climbing up ladders and vines while sneaking is extremely slow. | ||
* It becomes impossible to sneak diagonally (i.e. outside the X/Z axis). | * It becomes impossible to sneak diagonally (i.e. outside the X/Z axis). | ||
| Line 207: | Line 208: | ||
* The shafts of [[Minecraft:lightning rod]]s render as flat. | * The shafts of [[Minecraft:lightning rod]]s render as flat. | ||
* [[Minecraft:Redstone]] renders slightly differently. | * [[Minecraft:Redstone]] renders slightly differently. | ||
* If 1 coordinate exceeds this value, [[Minecraft:torch | * If 1 coordinate exceeds this value, [[Minecraft:torch]]es become 2D. | ||
** If both coordinates exceed this value, torches become invisible. | ** If both coordinates exceed this value, torches become invisible. | ||
* [[Minecraft:Button]]s placed anywhere other than the sides of blocks are distorted, and pushed buttons are pushed all the way into the block. | * [[Minecraft:Button]]s placed anywhere other than the sides of blocks are distorted, and pushed buttons are pushed all the way into the block. | ||
* [[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 bean]]s 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 240: | Line 241: | ||
| X/Z ±2,097,152 (±2<sup>21</sup>) | | X/Z ±2,097,152 (±2<sup>21</sup>) | ||
| | | | ||
* It is now possible to fall into the void, but not guaranteed until | * It is now possible to fall into the void, but not guaranteed until X/Z ±4,194,304 (±2<sup>22</sup>). | ||
* Entities less than 0.25 blocks wide (such as baby turtles and dropped items) fall through the edges of the blocks, but can stand on the centers. | * Entities less than 0.25 blocks wide (such as baby turtles and dropped items) fall through the edges of the blocks, but can stand on the centers. | ||
* Moving while [[Minecraft:sneaking]] becomes nearly impossible without [[Minecraft:Swift Sneak]] II. | * Moving while [[Minecraft:sneaking]] becomes nearly impossible without [[Minecraft:Swift Sneak]] II. | ||
| Line 293: | Line 294: | ||
* [[Minecraft:Crop]]s, [[Minecraft:hanging roots]], and [[Minecraft:seagrass]] render on the edges of blocks. | * [[Minecraft:Crop]]s, [[Minecraft:hanging roots]], and [[Minecraft:seagrass]] render on the edges of blocks. | ||
* Certain Non-full blocks like [[Minecraft:fence]]s, [[Minecraft:torch]]es, [[Minecraft:bamboo]], and [[Minecraft:lantern]]s become flat and other blocks like [[Minecraft:lectern]]s become completely distorted. | * Certain Non-full blocks like [[Minecraft:fence]]s, [[Minecraft:torch]]es, [[Minecraft:bamboo]], and [[Minecraft:lantern]]s become flat and other blocks like [[Minecraft:lectern]]s become completely distorted. | ||
* The second stage of [[Minecraft:cocoa | * The second stage of [[Minecraft:cocoa bean]]s is flat just like the first stage. | ||
* The third stage of [[Minecraft:cocoa | * The third stage of [[Minecraft:cocoa bean]]s appears stretched as a full block. | ||
* When the player is in [[Minecraft:powder snow]] the screen sometimes flickers fighting trying to see if the player is inside or outside of powder snow even with [[Minecraft:leather armor]] on. | * When the player is in [[Minecraft:powder snow]] the screen sometimes flickers fighting trying to see if the player is inside or outside of powder snow even with [[Minecraft:leather armor]] on. | ||
* [[Minecraft:Swimming]] works only if the player is near a [[Minecraft:dolphin]], or with the [[Minecraft:Speed]] effect. | * [[Minecraft:Swimming]] works only if the player is near a [[Minecraft:dolphin]], or with the [[Minecraft:Speed]] effect. | ||
| Line 360: | Line 361: | ||
** This does not impact the way maps are rendered. | ** This does not impact the way maps are rendered. | ||
** If the player manages to set their coordinate to an odd number or move into any area not rendered, they get stuck in a glitched position, unable to move the camera view properly, or move in any direction. | ** If the player manages to set their coordinate to an odd number or move into any area not rendered, they get stuck in a glitched position, unable to move the camera view properly, or move in any direction. | ||
* Only [[Minecraft:ghast]]s, large [[Minecraft:slime]]s | * Only [[Minecraft:ghast]]s, large [[Minecraft:slime]]s, medium slimes, large [[Minecraft:magma cube]]s and medium magma cubes have collision detection and do not fall through the world. | ||
* The game doesn't recognize that the player is in [[Minecraft:water]] if the player's coordinates are a multiple of 4, causing the player to fall through water and into the [[Minecraft:void]], it is unable to enter [[Minecraft:swimming]], and the fog is black or dark blue. However, water still causes the player to exit [[Minecraft:gliding]], and [[Minecraft:boat]]s still float. | * The game doesn't recognize that the player is in [[Minecraft:water]] if the player's coordinates are a multiple of 4, causing the player to fall through water and into the [[Minecraft:void]], it is unable to enter [[Minecraft:swimming]], and the fog is black or dark blue. However, water still causes the player to exit [[Minecraft:gliding]], and [[Minecraft:boat]]s still float. | ||
** In the Corner Stripe Lands, water is recognized only if both X and Z coordinates are not a multiple of 4. | ** In the Corner Stripe Lands, water is recognized only if both X and Z coordinates are not a multiple of 4. | ||
* The minimum speed is increased to 20 blocks per second, meaning that it is no longer possible to move using regular Creative mode flight or with [[Minecraft:horse]]s without using [[Minecraft:speed]] effect, leaving only flight by elytra (either with [[Minecraft:firework rocket]]s or a Riptide trident), a [[Minecraft:horse]] with [[Minecraft:speed]] effect and teleportation by any means. | * The minimum speed is increased to 20 blocks per second, meaning that it is no longer possible to move using regular Creative mode flight or with [[Minecraft:horse]]s without using [[Minecraft:speed]] effect, leaving only flight by an elytra (either with [[Minecraft:firework rocket]]s or a Riptide trident), a [[Minecraft:horse]] with [[Minecraft:speed]] effect and teleportation by any means. | ||
** Moving using fast Creative mode flight is still possible, but only if the player looks directly into an axis. | ** Moving using fast Creative mode flight is still possible, but only if the player looks directly into an axis. | ||
* In any biome where multiple blocks can generate as part of the top surface layer, such as [[Minecraft:windswept hills]] and [[Minecraft:old growth taiga]]s, their surfaces become distorted and start to form blocky shapes. The terracotta strata in [[Minecraft:badlands]] biomes have also become further distorted. Because the majority of blocks do not render in the Stripe Lands, this is noticeable only when viewed on a map. | * In any biome where multiple blocks can generate as part of the top surface layer, such as [[Minecraft:windswept hills]] and [[Minecraft:old growth taiga]]s, their surfaces become distorted and start to form blocky shapes. The terracotta strata in [[Minecraft:badlands]] biomes have also become further distorted. Because the majority of blocks do not render in the Stripe Lands, this is noticeable only when viewed on a map. | ||
| Line 369: | Line 370: | ||
* If the map is turned on in ''Bedrock Editor'' beyond that point, it matches with stripes. | * If the map is turned on in ''Bedrock Editor'' beyond that point, it matches with stripes. | ||
|- | |- | ||
| | | X/Z ±33,554,432 (±2<sup>25</sup>) | ||
| | | | ||
* Horizontal block rendering stops completely, leaving only vertical block rendering in its place, marking the start of the "Slice Lands".{{conjecture|tag=1}} Blocks whose sides are "concealed", such as naturally generated water, are completely invisible. | * Horizontal block rendering stops completely, leaving only vertical block rendering in its place, marking the start of the "Slice Lands".{{conjecture|tag=1}} Blocks whose sides are "concealed", such as naturally generated water, are completely invisible. | ||
** At this point, the slices are 4 blocks apart, but the gap widths double for every power of 2. | ** At this point, the slices are 4 blocks apart, but the gap widths double for every power of 2. | ||
** It has become difficult to place blocks from this point onward. The player must look at an existing block and extend it along an axis. The only way to place blocks without external tools is with [[Minecraft:structure block | ** It has become difficult to place blocks from this point onward. The player must look at an existing block and extend it along an axis. The only way to place blocks without external tools is with [[Minecraft:structure block]]s. | ||
** Past this point, blocks are now completely invisible on a [[Minecraft:flat world]] in some low-end and mid-end devices. | ** Past this point, blocks are now completely invisible on a [[Minecraft:flat world]] in some low-end and mid-end devices. | ||
* Block rendering essentially stops completely, causing the map to be blank from their outward in the Corner Slice Lands;<ref>{{ytl|wurHDkvIKhQ}}</ref> almost all blocks are rendered as one-dimensional, and are therefore impossible to see, although some particles emitted from specific blocks, like torches, could still indicate their presence. Only certain [[Minecraft:block entities]] and any normally visible [[Minecraft:water]] or [[Minecraft:lava]] side textures render in this area, which means that, due to the End having no water nor lava, it is almost completely invisible. | * Block rendering essentially stops completely, causing the map to be blank from their outward in the Corner Slice Lands;<ref>{{ytl|wurHDkvIKhQ}}</ref> almost all blocks are rendered as one-dimensional, and are therefore impossible to see, although some particles emitted from specific blocks, like torches, could still indicate their presence. Only certain [[Minecraft:block entities]] and any normally visible [[Minecraft:water]] or [[Minecraft:lava]] side textures render in this area, which means that, due to the End having no water nor lava, it is almost completely invisible. | ||
| Line 379: | Line 380: | ||
* The minimum movement speed is increased to 40 blocks per second, meaning that thrown [[Minecraft:ender pearl]]s no longer work. Teleportation is now possible only by chorus fruit because teleportation by commands stops at 30,000,000 blocks. Elytra either require a steep angle or a Riptide trident in [[Minecraft:rain]] to propel the player. Thrown [[Minecraft:trident]]s, [[Minecraft:arrow]]s shot from [[Minecraft:bow]]s or [[Minecraft:crossbow]]s and [[Minecraft:ender dragon]]s are the only other entities that can move horizontally beyond this point, other than the player. Ghasts can no longer move horizontally either, but they do remain airborne without ever falling into the void, while moving vertically. | * The minimum movement speed is increased to 40 blocks per second, meaning that thrown [[Minecraft:ender pearl]]s no longer work. Teleportation is now possible only by chorus fruit because teleportation by commands stops at 30,000,000 blocks. Elytra either require a steep angle or a Riptide trident in [[Minecraft:rain]] to propel the player. Thrown [[Minecraft:trident]]s, [[Minecraft:arrow]]s shot from [[Minecraft:bow]]s or [[Minecraft:crossbow]]s and [[Minecraft:ender dragon]]s are the only other entities that can move horizontally beyond this point, other than the player. Ghasts can no longer move horizontally either, but they do remain airborne without ever falling into the void, while moving vertically. | ||
* To move, the player must glide with elytra at a downward angle of approximately 45 degrees, or use [[Minecraft:Riptide]]. Note that because the player is not considered to be "in water", Riptide can be activated only by rain. | * To move, the player must glide with elytra at a downward angle of approximately 45 degrees, or use [[Minecraft:Riptide]]. Note that because the player is not considered to be "in water", Riptide can be activated only by rain. | ||
* Another way of moving is by sprint-flying over [[Minecraft: | * Another way of moving is by sprint-flying over [[Minecraft:soul sand]] while wearing [[Minecraft:Soul Speed]] boots in Creative or Spectator mode, which causes the speed boost to be added to the speed of sprint-flying. | ||
* When one uses external tools to teleport past X/Z ±33,554,432, the chunks might not load, meaning that the player becomes immobile and the terrain becomes invisible.{{verify}} | * When one uses external tools to teleport past X/Z ±33,554,432, the chunks might not load, meaning that the player becomes immobile and the terrain becomes invisible.{{verify}} | ||
*On some low-end and mid-end devices, the world does not render anymore, and if the player teleports back to X/Z 0, the player can't interact with the world anymore and has to relog. This can be fixed by reloading the world and teleporting back to near X/Z 30,000,000 and teleport back to X/Z 0. | *On some low-end and mid-end devices, the world does not render anymore, and if the player teleports back to X/Z 0, the player can't interact with the world anymore and has to relog. This can be fixed by reloading the world and teleporting back to near X/Z 30,000,000 and teleport back to X/Z 0. | ||
| Line 387: | Line 388: | ||
* In modern versions, if a Riptide trident is used beyond that point, it becomes easy for the player to get stuck, and if the player moves back, they automatically get teleported to this coordinate without using the teleport command. | * In modern versions, if a Riptide trident is used beyond that point, it becomes easy for the player to get stuck, and if the player moves back, they automatically get teleported to this coordinate without using the teleport command. | ||
* The map becomes invisible when the map turns on in the ''Bedrock Editor'' beyond that point. | * The map becomes invisible when the map turns on in the ''Bedrock Editor'' beyond that point. | ||
* In [[Minecraft:Vibrant Visuals]], shadows start to become invisible, because it only left vertical rendering, resulting a shadow loss. | * In [[Minecraft:Vibrant Visuals]], shadows start to become invisible, because it only left vertical rendering, resulting in a shadow loss. | ||
|- | |- | ||
| X/Z ±67,108,864 (±2<sup>26</sup>) | | X/Z ±67,108,864 (±2<sup>26</sup>) | ||
| Line 427: | Line 428: | ||
| X/Z ±[[Minecraft:w:2,147,483,647#In computing|2,147,483,647]] (±2<sup>31</sup> − 1) | | X/Z ±[[Minecraft:w:2,147,483,647#In computing|2,147,483,647]] (±2<sup>31</sup> − 1) | ||
| | | | ||
* 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 | * 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 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 (although moving the camera is still possible). This happens especially with a high render distance. | * 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. | ||
|} | |} | ||
== Beyond the 32-bit limit == | == Beyond the 32-bit integer limit (X/Z ≥±2,147,483,648) == | ||
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. | 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. | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 456: | Line 457: | ||
* The visual gaps are 33,554,432 blocks wide. | * The visual gaps are 33,554,432 blocks wide. | ||
* The minimum movement speed is increased to 335,544,320 blocks per second. | * The minimum movement speed is increased to 335,544,320 blocks per second. | ||
** At this point it would | ** At this point, it would require achieving speeds greater than the speed of light to move, which is approximately 299,792,458 blocks per second. | ||
|- | |- | ||
| style="color: #222222; background: #dddddd" | X/Z ±53,905,378,846,979,748 (±{{frac|(2<sup>63</sup>) – 1|171.103}}) | | style="color: #222222; background: #dddddd" | X/Z ±53,905,378,846,979,748 (±{{frac|(2<sup>63</sup>) – 1|171.103}}) | ||
| Line 483: | Line 484: | ||
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. | ||
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 | 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 rocket]]s 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. | 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. | ||
| Line 562: | Line 563: | ||
* Floating with Levitation 22 and lower becomes impossible. | * Floating with Levitation 22 and lower becomes impossible. | ||
* It is possible to fly over [[Minecraft:border]] blocks, due to the player's vertical hitbox shrinking to 0. | * It is possible to fly over [[Minecraft:border]] blocks, due to the player's vertical hitbox shrinking to 0. | ||
* The player moves slightly in | * In the negative Y axis/coordinates, The player moves slightly in X and Z coordinates. | ||
|- | |- | ||
|Y ±33,554,432 (±2<sup>25</sup>) | |Y ±33,554,432 (±2<sup>25</sup>) | ||
Revision as of 11:03, 7 July 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, replaced 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 integer limit (X/Z ≥±2,147,483,648)
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:距离现象/基岩版