• Dear Cerberus X User!

    As we prepare to transition the forum ownership from Mike to Phil (TripleHead GmbH), we need your explicit consent to transfer your user data in accordance with our amended Terms and Rules in order to be compliant with data protection laws.

    Important: If you accept the amended Terms and Rules, you agree to the transfer of your user data to the future forum owner!

    Please read the new Terms and Rules below, check the box to agree, and click "Accept" to continue enjoying your Cerberus X Forum experience. The deadline for consent is April 5, 2024.

    Do not accept the amended Terms and Rules if you do not wish your personal data to be transferred to the future forum owner!

    Accepting ensures:

    - Continued access to your account with a short break for the actual transfer.

    - Retention of your data under the same terms.

    Without consent:

    - You don't have further access to your forum user account.

    - Your account and personal data will be deleted after April 5, 2024.

    - Public posts remain, but usernames indicating real identity will be anonymized. If you disagree with a fictitious name you have the option to contact us so we can find a name that is acceptable to you.

    We hope to keep you in our community and see you on the forum soon!

    All the best

    Your Cerberus X Team

Showcase Pipanic

Holzchopf

Well-known member
3rd Party Module Dev
Tutorial Author
Joined
Jul 31, 2017
Messages
500
Hi everyone!

I just released my second Cerberus X written game into the wild:

Pipanic

It's my entry for the Code A Game Competition Jan 30th - Apr 10th on www.syntaxbomb.com

The game is related to the film Titanic but with a slightly different story. Or is it exactly copying the film? I'd say you have to play it to find out! ;)

Here's a screenshot to tease you:
pipanic01.png


And here's the download to please you:

Pipanic.zip for Windows

Next planned steps are:
- Make Android version
 
Good luck with your entry. Would be cool to see a CX powered game up in the ranks.
 
Thanks! I can't tell yet how my chances are - didn't even find the time to play the other games. But being "in the ranks" would definitely be cool!
 
I played it for a little while and I liked it! Good luck with your ranking!
 
Played the Android version. Love the art work. But so far the iceberg takes always more damage than the ships. And so dies before it sinks.
 
Make sure you ram ships only from the side and try to avoid ships with a higher level (once you master the controls, ships up to two levels above yours aren't a problem. But then, always have healings and big healings ready, because aggressive ships can occur really quick and want to play with you ;-)
 
Cool game, love the water effects. And I like the pixellated style. I might start doing that if only because I'm rubbish at pixel art (and all my old gfx are low res!) so less pixels is good!
 
Thanks! There's actually quite a lot of technical stuff going on behind the scenes for the water. For the ships too - but there it's pre-rendered by a tool, while the water effects are done on the fly.

The water first draws two quads with a grey-scale texture of low frequency waves blended on top of each other.
Then, the "trace" of the ships are drawn: this is done by drawing a lot of half circles. When the emitting object doesn't move, the circles are created with an opening angle of 180° so a full circle appears. If it moves, the angle is more and more closed depending on the movement speed. The waves itself are then scaled up to a certain size before they're deleted*. At creation, they're assigned a "depth" (which only defines if it is drawn brighter or darker). A bit of wave physics is behind that to keep everything synchronised and looking good even at low amounts of waves (waves are emitted either all 1/2 period of the wave or every half 1/2 wavelength when moving - whatever appears first).
Then, a third quad is overlaid with a high frequency wave texture.
All this in grey-scale onto an image. This image is then drawn with a fragment shader that turns the different grey values into shades of blue, that actually come from another texture holding the four blue shades and is not filtered, so no in-between colours appear.

* Actually, they're not created and deleted all the time. Every wave emitter can only emit a certain amount of waves due to the restrictions in movement speed and the physics of the waves. All these waves are then created at app initialisation and are then either active and visible after "respawning" them or not. This boosted the performance on my old Android device quite a bit.
 
Thank you for sharing your technical info. This is very interesting to read.
 
That's awesome. I just zoom, rotate and alpha stuff. This is a whole different level. :)
 
Isn't that where we all started? =)

Looking at the implementation of the graphics there's not much more that I do: using textured quads for the screen filling water textures is all that's (from that point of view) more that rotating and blending. The real magic lies within the maths behind it. I can't stop to repeat how powerful mathematics are. And I benefit from three things:
1. I like maths
2. I had a lot of maths classes in university
3. throughout my career I mostly used maths in physical problems (and courses and exercises and so on), where it has a real life application.

It helps a lot when things get less abstract. In physics, you can literally get in touch with the equations that make up a phenomenon. Best example is how I learned in school how force accelerates mass and how I went home that evening and did a little implementation of that in BB. Tiny steps over many years. And that's the emotional part of the story behind the nice waves in my game :)
 
Thing is, I started programming in 1984 and not improved that much! ;-)

But I enjoy it and every now and again I get something out. I'm still using Blitz on Amiga mind you.
 
Back
Top Bottom