Sinusoidal Tetris
Written by Mike James   
Friday, 09 February 2024

This is just for fun and education, but it suggests that there might be other games waiting to be thought up along the same lines.

We all know how annoyingly time-consuming Tetris is - I mean how absorbingly playable it is. There is something about falling bricks ... But this is a new twist on the idea of making things disappear.

Andrei Ciobanu has implemented a simple realization of an idea he had. Start off with a periodic wave and then "drop" a sine wave from the top of the screen and allow the "player" to adjust the frequency, amplitude and phase as it falls. When it reaches the zero x axis, add the two waves together and display the result. The waves interfers both constructively and destructively and, in principle, if you repeat with the correct falling waves you can end up with a straight line - a zero frequency wave. At best you can reduce the amplitude of the wave and keep it under control instead of allowing it to grow bigger each time:



Try it out - it is surprisingly fun. If you know, or are learning about, Fourier transforms then it is also educational. Also if you know something about how Fourier transforms work you can also start to figure out some cheats. For example, reducing the frequency and amplitude has a "calming" effect on the bottom line. Are there any better strategies?

As a game this isn't quite there, but it does make you think that there might be similar ideas that could be made into a full game.


More Information

Related Articles

Understanding the Fourier Transform

A Faster Fourier Transform

How To Draw Einstein's Face Parametrically

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.



Stanchion Turns SQLite Into A Column Store

Stanchion is an open-source extension that adds columnar storage capabilities to SQLite, rendering it efficient for analytical reporting.

CheerpJ 3.0 - Run Java Apps Inside The Browser

CheerpJ is a Java-to-Javascript runtime and compiler that can convert any Java application to HTML5 for in-browser rendering. Version 3.0 has been fully rewritten from scratch.

More News

raspberry pi books



or email your comment to:




Last Updated ( Friday, 09 February 2024 )