@zenorogue@mathstodon.xyz avatar

zenorogue

@zenorogue@mathstodon.xyz

Mathematics, game development, art, roguelikes, hyperbolic geometry. Sometimes all at once.

This profile is from a federated server and may be incomplete. Browse more on the original instance.

zenorogue, to random
@zenorogue@mathstodon.xyz avatar

Four new alternate land structures added recently to HyperRogue! As usual, the great walls are straight lines.

(a great walls following a periodic pattern

(b) lots of great walls crossing at 90° angles

(c) lots of great walls crossing at 60° angles, with some surprises waiting in the corners.

(d) no great walls, but using the "landscape method" to determine the boundaries between lands.

image/png
image/png
image/png

zenorogue, to random
@zenorogue@mathstodon.xyz avatar

We have uploaded a 360° VR version of our video "Portals to Non-Euclidean Geometries". If you wanted to look upwards or downwards or some other direction while watching the video, now you can!

YouTube link: https://www.youtube.com/watch?v=bQSfzDugH7s

zenorogue, to random
@zenorogue@mathstodon.xyz avatar

Many roguelikes have a choice of "class" for replay value. Could we have that in HyperRogue, with its focus on non-Euclidean geometry, and combat based on just positioning (no hitpoints etc.)?

Apparently yes! Here the Rogue switches his blade for a crossbow, and takes advantage of how the straight lines work in hyperbolic geometry in a different way!

As a consequence of hyperbolic geometry, the enemies naturally arrange themselves in a straight line, which this crossbow attack takes advantage of. This is work in progress that should be available soon (the classic HyperRogue combat is attack adjacent creature, which also takes advantage of this property, but in a different way). Of course there is more variety in HyperRogue from the choice of geometry, land structure, and change of genre from roguelike to action/FPS/racing/etc.

video/mp4

zenorogue,
@zenorogue@mathstodon.xyz avatar

Still needs some improvements, but already available for some early access testing in HyperRogue 12.1x. HyperRogue 12.2 should be released soon!

Here the arrows reflect in mirrors, and also we have some mimics, who shoot mimic arrows. Last seconds show that the arrows indeed fly in straight lines, even after reflecting off mirrors.

video/mp4

zenorogue, to Youtube
@zenorogue@mathstodon.xyz avatar

Two-point equidistant projection of the hyperbolic plane, but one point is in the center, and the other point is in the infinity, and changes its direction during this animation. The frame where horocycles are mapped to straight lines is insighftul. (Basically, a circle of radius 𝑟 around the center of ℍ² is mapped to a cirlce of radius 𝑟 around the center of 𝔼², and concentric horocycles are similarly mapped to straight lines; these two conditions determine where every point is mapped.) Based on an idea by bengineer8u.

By the way, our video "Portals to Non-Euclidean Geometries" https://youtu.be/yqUv2JO2BCs has just passed 1M views!

video/mp4

zenorogue, to random
@zenorogue@mathstodon.xyz avatar

Our games and videos are made with great free tools (which are not popular because nobody markets them). Safer that way, and true to the roguelike roots!

We know that parallel straight lines generate a nice tree-like structure (first video), but we get some new options! We can also use subdivide the hyperbolic plane into these "circles" which are actually infinite (second video), or we can subdivide like in the third video -- depending on which of the infinitely faraway points is the closest. (Suggested by Dylan, based on https://arxiv.org/abs/2303.16831).

video/mp4
video/mp4
video/mp4

zenorogue, to Baduk
@zenorogue@mathstodon.xyz avatar

A game of Go on a hyperbolic manifold, played in the HyperRogue discord server, ended like this.

zenorogue,
@zenorogue@mathstodon.xyz avatar

@henryseg Agreed about sizes, thanks!

I have played Go on torus and it was quite satisfying, I feel that the boundary makes Go less pure, so to say (by having special strategies for edges and corners). (Similarly stairways in roguelikes are less pure, I am happy that they are avoided in HyperRogue :)

zenorogue,
@zenorogue@mathstodon.xyz avatar

@henryseg Also forgot to mention: bounded subsets of H^2 have this property that most area is close to the boundary, so the boundary effects would be more prominent than in the Euclidean case... any idea of a suitable right angled polygon and a tessellation of it?

zenorogue,
@zenorogue@mathstodon.xyz avatar

An animation of this game. (In the end, dead groups are removed for scoring purposes.)

Thanks to tres14159 on Twitter for the idea of the animation, and to @henryseg for the suggestion to make the stones larger. This is not a regular tiling, so some stones touch, but in some cases the distances between intersections are larger.

video/mp4

gregeganSF, (edited ) to random
@gregeganSF@mathstodon.xyz avatar

You’ve probably seen a pattern like this on Christmas decorations or chocolates, but it’s actually a demonstration of a technique I just learned from @zenorogue for creating a coordinate system (u,v) on a surface such that moving along a grid line of constant v from (u,v) to (u+s,v), or along a line of constant u from (u,v) to (u,v+s), means travelling precisely a distance s.

Suppose you start out with coords (x,y) on the surface with the property that the metric g depends only on y, not x. For example, with the standard geographical coordinates on a unit sphere, the metric only depends on latitude, not longitude, so we would set x=longitude and y=latitude, and g would be the matrix

cos(y)^2 0
0 1

Consider the curve C(t) = (t,f(t)) in (x,y) coordinates, and solve the differential equation for f(t) that ensures that the rate of motion along the curve wrt t is a constant, c:

C'(t) g C'(t) = c^2

For (x,y) = (longitude, latitude) on a unit sphere, this becomes:

cos(f(t))^2 + f'(t)^2 = c^2

which is solved by:

f(t) = am(t √(c^2-1) | 1/(1-c^2))

where am() is the Jacobi amplitude function.

We now define new coordinates (u,v) so that:

(x,y) = ((u+v)/c, f((u-v)/c))

Because of the way we have chosen f(t), and because g depends only on the second coordinate, y, the rate of motion along a curve of constant u wrt v, or vice versa, is guaranteed to be 1.

The animation uses c ≈ 1.4866, which was chosen to make the curves meet up neatly along the international date line.

zenorogue,
@zenorogue@mathstodon.xyz avatar

@gregeganSF Thanks for the shoutout! I have obtained that by analyzing your earlier toot https://mathstodon.xyz/@gregeganSF/110774975354528301, which could be obtained by using this technique for the horocyclic coordinates on the hyperbolic plane, covering a horodisk (I attach an animation where more of the horodisk is covered).

As I have already mentioned on 𝕏, we can also use Lobachevsky coordinates in the hyperbolic plane, covering an equidistant band.

This leaves one more natural case: azimuthal (e.g. polar) coordinates in hyperbolic or Euclidean geometry, to cover a disk.

(In spherical, we would get the same result as with longitude/latitude, although possibly not covering the whole sphere if c<1; and the Euclidean analog of longitude/latitude is boring.)

horocyclic coordinates in the hyperbolic plane -> horodisk is covered
Lobachevsky (cylindrical/band) coordinates in the hyperbolic plane -> equidistant band is covered
polar (azimuthal) coordinates in the hyperbolic plane -> disk is covered
polar (azimuthal) coordinates in the Euclidean plane -> disk is covered

johncarlosbaez, (edited ) to random
@johncarlosbaez@mathstodon.xyz avatar

There are 12 notes in an octave, separated by half-tones. Say you choose 7 of these notes to be in your scale. Then there are 792 possible scales. But a lot of them are pretty goofy.

So suppose the space between consecutive notes in your scale is never bigger than a whole tone. Then there are only 21 allowed scales!

These scales must have 2 consecutive notes a half-tone apart, and 5 a whole-tone apart. For example the major scale has spaces like this:

w w h w w w h

This is why there's a group of 2 black keys on the piano and then a group of 3. By cycling this pattern around we get a total of 7 scales, called the modes of the major scale.

But the melodic minor scale is not among these, because it has spaces like this:

w h w w w w h

If we designed the piano with this scale in mind, it would have a group of 1 black key and then a group of 4. By cycling this pattern around we get 7 more scales, called the modes of the melodic minor scale.

There are also 7 scales where the two half-tone steps are right next to each other, like this:

w h h w w w w

But these are more awkward, and less commonly used.

The 7 modes of the major scale have standard names, listed here. Ionian is just another name for the major scale itself.

The 7 modes of the melodic minor scale have lots of different names, and in some cases I'm not even using the most common names! For example, nobody ever talks about "Ionian ♭3" - everyone calls it melodic minor, or 'melodic minor ascending' to be precise. But I'm using names that emphasize how you can get these modes by slightly tweaking the modes of the major scale. You get melodic minor by flatting the third note in Ionian.

zenorogue,
@zenorogue@mathstodon.xyz avatar

@johncarlosbaez What does "awkward" mean here? Is it an important criterion? IMO "w w w w w w" would be the least awkward, and the reason why it is not used is presumably not that it has 6 instead of 7 but that it is lacking harmony.

zenorogue, to random
@zenorogue@mathstodon.xyz avatar

Our new video! We take you on a journey through a small game world and showcase the non-Euclidean transformations of its third dimension.

Full video on YouTube: https://youtu.be/Rhjv_PazzZE

video/mp4

zenorogue, to random
@zenorogue@mathstodon.xyz avatar

You cannot tile a hollow sphere with hexagons. But you can pretend.

Some games and animations pretend they can tile a sphere from the outside [ https://twitter.com/ZenoRogue/status/1439246553877729286 ] but I have not seen this done with the inside. This is the WIP HyperRogue feature of embedding 2D geometries into 3D geometries; in this case, the Euclidean world map is embedded as a (hollow) horosphere in 3D hyperbolic space. Expect more weird visualizations based on this (:

We start from a hole in the Palace, go upwards, cross the Great Wall to reach the Land of Eternal Motion, and go upwards from there, apparently revealing a hollow sphere tiled by hexagons.

zenorogue,
@zenorogue@mathstodon.xyz avatar

Somehow we have not yet visualized this, so it was a bit surprising! That "stalactite" is infinitely long, and also infinitely wide -- we cannot go around it.

The floor is a hyperbolic plane embedded in Solv geometry (as the set of points with x=0), while the roof is equidistant to it.

video/mp4

zenorogue,
@zenorogue@mathstodon.xyz avatar

And here is the (z=0) plane, which has Euclidean intrinsic geometry. We have had visualizations of this earlier (e.g., it appeared in https://youtube.com/watch?v=yqUv2JO2BCs). It looks more like a horotorus than like a horosphere because hyperbolic planes (x=0), (y=0) expand in opposite z directions.

video/mp4

zenorogue,
@zenorogue@mathstodon.xyz avatar

If they expand in the same 'z' direction, but with different rates instead, it looks more like a horosphere (compare the first visualization in this thread); this is why hexes in the visualization below are squished when we look at them orthogonally from far away.

video/mp4

  • All
  • Subscribed
  • Moderated
  • Favorites
  • Leos
  • thenastyranch
  • magazineikmin
  • hgfsjryuu7
  • Youngstown
  • khanakhh
  • slotface
  • vwfavf
  • mdbf
  • rosin
  • kavyap
  • ngwrru68w68
  • PowerRangers
  • DreamBathrooms
  • anitta
  • everett
  • InstantRegret
  • GTA5RPClips
  • osvaldo12
  • ethstaker
  • cisconetworking
  • cubers
  • tacticalgear
  • Durango
  • normalnudes
  • tester
  • modclub
  • provamag3
  • All magazines