Sunday, April 16, 2017

Geninus!

Published on Magic Disk 64 01/90

Since we're still in the middle of Edutainment Month, here's a look at another utility that could be interpreted as educational: Geninus! is a tool to create sine curves for sprite animation. I guess the name is a portmanteau of generator and Sinus (German for sine), since it is, in fact, a sine generator. I would've called it Sinerator instead, to keep the words in the right order, but Geninus! is a fine name as well, especially with the added exclamation point.


This isn't a very complex program, but I still wanted to put it in an article, mainly because of its presentation and how, back in 1990, it introduced me to sine curves in a very practical way.


The program starts with this flashy intro, which makes sense considering Geninus!'s creator, Jesper Olsen, was a member of Amok, a German demo group. The intro also features the obligatory scroll text, but I removed it in the above animation to make the loop less apparent.

A gentle tap on the space bar advances the program to the editor:


Now, that's what I call direct feedback. You can change the listed settings with the cursor keys, and any change is immediately reflected in the sprites' movement. If you don't know what an option does, you can just play around with it and see how it affects the animation.

The curve consists of four sines in total, two each for horizontal (X) and vertical (Y) movement. The sines for each direction are added together, which creates a more fluctuating pattern, especially if they have different speeds. If you concentrate on one sprite in the above animation, you can see how it accelerates and slows down several times until the pattern loops.

The distance values basically determine how close together the sprites are. Setting all distances to zero puts the sprites on top of each other, which makes it look like only one sprite is moving on the screen.


In the above example, I made the distances very small, which resulted in a snake-like effect, something that's commonly seen in shoot 'em ups for bosses with segmented bodies, like R-Type's level 1 end monster.


Increasing the distances to very large values results in a more unpredictable formation that still has a system to its apparent chaos.


Pressing M shows a menu that offers options to change the sprites and save the created sine routine to disk. Even the menu got the proper demo scene treatment and sparkles in (almost) all available colors.

In case you need some further explanations, you can press F5 to see a page of... instroktions?

But what if I don't want to load want I want?

You can kind of tell this wasn't written by a native English speaker. Keep in mind, though, that the author was probably still in his teens at the time, and stuff like auto correction was not widely available in 1990. Nevertheless, I like to laugh about the occasional language mishap, but don't take that as me making fun of someone else's language skills. English isn't my first language either, and I am fully aware that I make mistakes as well. I'm Swiss German, and my native language doesn't even have standardized rules how to spell words.


One last thing that deserves a mention before I hop to the conclusion is the music that accompanies the editor: It's a short but brilliant track called Quick Kill, and it was composed by the program's author, Jesper Olsen. During his C64 years, Jesper was mainly known as a musician, and Geninus! is one of the few instances where he also did the coding.



CONCLUSION

When I encountered Geninus! in early 1990, I had not yet gotten to trigonometry at school. Thanks to this program, I inadvertently got familiar with sine curves and how they could be visualized, and I think that was a far better introduction than the dry curve diagrams our math teacher ended up throwing at us (not literally).

I think this was also the point where I learned to count in hexadecimal, since Geninus! displays all its byte values in hex.

To me, the entire program exudes an enthusiasm that I find hard to pinpoint. It could be Jesper's scroll texts where he greets his friends with an abundance of exclamation marks, or maybe it's the upbeat music. In any case, the tool feels very inviting, as if the author is personally telling you to look at the cool thing he just made.

Purely based on my experiences, I'd say this little utility fits the edutainment label quite brilliantly, especially because it wasn't really intended to be a teaching program. For me, edutainment is at its best when it is a learning tool without feeling like one.

No comments:

Post a Comment