mscroggs.co.uk
mscroggs.co.uk

subscribe

Blog

 2016-12-23 
In many early arcade games, the size of the playable area was limited by the size of the screen. To make this area seem larger, or to make gameplay more interesting, many games used wraparound; allowing the player to leave one side of the screen and return on another. In Pac-Man, for example, the player could leave the left of the screen along the arrow shown and return on the right, or vice versa.
Pac-Man's apparent teleportation from one side of the screen to the other may seem like magic, but it is more easily explained by the shape of Pac-Man's world being a cylinder.
Rather than jumping or teleporting from one side to the other, Pac-Man simply travels round the cylinder.
Bubble Bobble was first released in 1986 and features two dragons, Bub and Bob, who are tasked with rescuing their girlfriends by trapping 100 levels worth of monsters inside bubbles. In these levels, the dragons and monsters may leave the bottom of the screen to return at the top. Just like in Pac-Man, Bub and Bob live on the surface of a cylinder, but this time it's horizontal not vertical.
A very large number of arcade games use left-right or top-bottom wrapping and have the same cylindrical shape as Pac-Man or Bubble Bobble. In Asteroids, both left-right and top-bottom wrapping are used.
The ships and asteroids in Asteroids live on the surface of a torus, or doughnut: a cylinder around to make its two ends meet up.
There is, however, a problem with the torus show here. In Asteroids, the ship will take amount of time to get from the left of the screen to the right however high or low on the screen it is. But the ship can get around the inside of the torus shown faster than it can around the outside, as the inside is shorter. This is because the screen of play is completely flat, while the inside and outside halves of the torus are curved.
It is impossible to make a flat torus in three-dimensional space, but it is possible to make one in four-dimensional space. Therefore, while Asteroids seems to be a simple two-dimensional game, it is actually taking place on a four-dimensional surface.
Wrapping doesn't only appear in arcade games. Many games in the excellent Final Fantasy series use wrapping on the world maps, as shown here on the Final Fantasy VIII map.
Just like in Asteroids, this wrapping means that Squall & co. carry out their adventure on the surface of a four-dimensional flat torus. The game designers, however, seem to not have realised this, as shown in this screenshot including a spherical (!) map.
Due to the curvature of a sphere, lines that start off parallel eventually meet. This makes it impossible to map nicely between a flat surface to a sphere (this is why so many different map projections exist), and heavily complicates the task of making a game with a truly spherical map. So I'll let the Final Fantasy VIII game designers off. Especially since the rest of the game is such incredible fun.
It is sad, however, that there are no games (at leat that I know of) that make use of the great variety of different wrapping rules available. By only slightly adjusting the wrapping rules used in the games in this post, it is possible to make games on a variety of other surfaces, such a Klein bottles or Möbius strips as shown below.


If you know of any games make use of these surfaces, let me know in the comments below!
×1      ×1      ×1      ×1      ×1
(Click on one of these icons to react to this blog post)

You might also enjoy...

Comments

Comments in green were written by me. Comments in blue were not written by me.
Thanks for post
Oliver
×2   ×1   ×1   ×1   ×1     Reply
HyperRogue also has special modes which experiment with other geometries (spherical, and elliptic which is non-orientable). Hydra Slayer has Mobius strip and Klein bottle levels.
Zeno Rogue
×1   ×1   ×1           Reply
HyperRogue is an example of a game that takes place on the hyperbolic plane. Rather than looping, the map is infinite.

See: http://zenorogue.blogspot.com.au/2012/...
maetl
                 Reply
Hyperrogue may be the only game in existence with a hyperbolic surface topology: http://www.roguetemple.com/z/hyper/
zaratustra
                 Reply
F-Zero GX had a track called Mobius Ring, that was... well, a Möbius ring.

F-Zero X had a more trivial track that was just the outward side of a regular ring, but it was rather weird too, because it meant that this was a looping track that had no turns.
Olaf
                 Reply
 Add a Comment 


I will only use your email address to reply to your comment (if a reply is needed).

Allowed HTML tags: <br> <a> <small> <b> <i> <s> <sup> <sub> <u> <spoiler> <ul> <ol> <li> <logo>
To prove you are not a spam bot, please type "bisect" in the box below (case sensitive):
 2016-03-31 
Pythagoras's Theorem is perhaps the most famous theorem in maths. It is also very old, and for over 2500 years mathematicians have been explaining why it is true.
This has led to hundreds of different proofs of the theorem. Many of them were collected in the 1920s in The pythagorean proposition by Elisha Scott Loomis [1]. Let's have a look at some of them.

Using similar triangles

For our first proof, start with a right angled triangle, \(ABC\), with sides of lengths \(a\), \(b\) and \(c\).
Add a point \(D\) on the hypotenuse such that the line \(AD\) is perpendicular to \(BC\). Name the lengths as shown in the second diagram.
\(ABC\) and \(DBA\) are similar triangles, so:
$$\frac{b}{x}=\frac{c}{b}$$ $$b^2=xc$$
\(ABC\) and \(DAC\) are similar triangles, so:
$$\frac{a}{c-x}=\frac{c}{a}$$ $$a^2=c^2-cx$$
Adding the two equations gives:
$$a^2+b^2=c^2$$

Constructing a quadrilateral

This proof shows the theorem is true by using extra lines and points added to the triangle. Start with \(ABC\) as before then add a point \(D\) such that \(AD\) and \(BC\) are perpendicular and of equal length. Add points \(E\) on \(AC\) and \(F\) on \(AB\) (extended) such that \(DE\) and \(AC\) are perpendicular and \(DF\) and \(AB\) are perpendicular.
By similar triangles, it can be seen that \(DF=b\) and \(DE=a\).
As the two diagonals of \(BACD\) are perpendicular, its area is \(\tfrac12c^2\).
The quadrilateral \(BACD\).
The area of \(BACD\) is also equal to the sum of the areas of \(ABD\) and \(ACD\). The area of \(ABD\) is \(\tfrac12b^2\). The area of \(ACD\) is \(\tfrac12a^2\).
The triangles \(ABD\) and \(ACD\).
Therefore, \(\tfrac12a^2+\tfrac12b^2=\tfrac12c^2\), which implies that \(a^2+b^2=c^2\).

Using a circle

This proof again uses extra stuff: this time using a circle. Draw a circle of radius \(c\) centred at \(C\). Extend \(AC\) to \(G\) and \(H\) and extend \(AB\) to \(I\).
By the intersecting chord theorem, \(AH\times AG = AB\times AI\). Using the facts that \(AI=AB\) and \(CH\) and \(CG\) are radii, the following can be obtained from this:
$$(c-a)\times(c+a)=b\times b$$ $$c^2-a^2=b^2$$ $$a^2+b^2=c^2$$

Rearrangement proofs

A popular method of proof is dissecting the smaller squares and rearranging the pieces to make the larger square. In both the following, the pieces are coloured to show which are the same:
Alternatively, the theorem could be proved by making copies of the triangle and moving them around. This proof was presented in The pythagorean proposition simply with the caption "LOOK":

Moving proof

This next proof uses the fact that two parallelograms with the same base and height have the same area: sliding the top side horizontally does not change the area. This allows us to move the smaller squares to fill the large square:

Using vectors

For this proof, start by labelling the sides of the triangle as vectors \(\alpha\), \(\beta\) and \(\gamma\).
Clearly, \(\gamma = \alpha+\beta\). Taking the dot product of each side with itself gives:
$$\gamma\cdot\gamma = \alpha\cdot\alpha+2\alpha\cdot\beta+\beta\cdot\beta$$
\(\alpha\) and \(\beta\) are perpendicular, so \(\alpha\cdot\beta=0\); and dotting a vector with itself gives the size of the vector squared, so:
$$|\gamma|^2=|\alpha|^2+|\beta|^2$$
If you don't like any of these proofs, there are of course many, many more. Why don't you tweet me your favourite.

The pythagorean proposition by Elisha Scott Loomis. 1928. [link]
×1      ×1      ×1      ×1      ×1
(Click on one of these icons to react to this blog post)

You might also enjoy...

Comments

Comments in green were written by me. Comments in blue were not written by me.
 Add a Comment 


I will only use your email address to reply to your comment (if a reply is needed).

Allowed HTML tags: <br> <a> <small> <b> <i> <s> <sup> <sub> <u> <spoiler> <ul> <ol> <li> <logo>
To prove you are not a spam bot, please type "g" then "r" then "a" then "p" then "h" in the box below (case sensitive):

Archive

Show me a random blog post
 2025 

Jan 2025

Christmas (2024) is over
Friendly squares
 2024 
▼ show ▼
 2023 
▼ show ▼
 2022 
▼ show ▼
 2021 
▼ show ▼
 2020 
▼ show ▼
 2019 
▼ show ▼
 2018 
▼ show ▼
 2017 
▼ show ▼
 2016 
▼ show ▼
 2015 
▼ show ▼
 2014 
▼ show ▼
 2013 
▼ show ▼
 2012 
▼ show ▼

Tags

pizza cutting sport frobel game of life dragon curves fractals cambridge radio 4 arithmetic mathsteroids the aperiodical zines statistics turtles asteroids electromagnetic field graph theory sobolev spaces big internet math-off hexapawn guest posts coins a gamut of games curvature chalkdust magazine preconditioning martin gardner graphs games folding paper estimation crochet bodmas mathsjam pascal's triangle gaussian elimination pi approximation day youtube binary inverse matrices data visualisation european cup rhombicuboctahedron national lottery speed folding tube maps machine learning convergence stickers raspberry pi data nine men's morris sorting databet books probability 24 hour maths dinosaurs anscombe's quartet video games final fantasy propositional calculus numbers news bots geometry advent calendar geogebra realhats wool javascript game show probability signorini conditions mean quadrilaterals runge's phenomenon noughts and crosses countdown standard deviation braiding simultaneous equations matrix of cofactors london underground pi london royal baby bubble bobble people maths matrix of minors chebyshev inline code matt parker reuleaux polygons plastic ratio finite group christmas card friendly squares hyperbolic surfaces numerical analysis map projections reddit go squares trigonometry harriss spiral phd bempp palindromes manchester wave scattering tennis crossnumber approximation cross stitch gather town error bars flexagons latex misleading statistics recursion weather station hats royal institution golden spiral ternary ucl triangles hannah fry fonts programming edinburgh football dataset pythagoras oeis golden ratio matrix multiplication python polynomials logs computational complexity stirling numbers christmas live stream tmip light craft manchester science festival finite element method gerry anderson sound accuracy platonic solids captain scarlet draughts errors matrices interpolation world cup logo talking maths in public regular expressions dates pac-man correlation rugby boundary element methods mathslogicbot determinants fence posts chess newcastle php puzzles logic menace kings weak imposition datasaurus dozen exponential growth

Archive

Show me a random blog post
▼ show ▼
© Matthew Scroggs 2012–2025