🤑 Indie game store🙌 Free games😂 Fun games😨 Horror games
👷 Game development🎨 Assets📚 Comics
🎉 Sales🎁 Bundles

Osaris Games Devlog : Exterminate!

A topic by Osaris Games created Jan 02, 2016 Views: 260,606 Replies: 12
Viewing posts 1 to 9
(Edited 2 times)


Yesterday I started working on my libGDXJam project, whose name will be: Exterminate!


Find Life.
Kill Life.
Exterminate! EXTERMINATE!

So, in this game, you play as a robot, in a spaceship, and you simply want to destroy life everywhere.

The action is set around a 3D procedurally generated planet somewhere in space.

I guess this game should be fun to make and fun to play :p

Right now I'm tweaking some voice recording (yeah I'm an actor too) to make my voice sound like a Robot, with REAPER : the result so far

I'll try to post screenshots later this evening !
(Edited 2 times)

Ok here's the first screenshot! Took me a little longer than expected to get the infinite world to work. For this game I coded a quite simple generator based mostly on a noise texture because the generation needs to be extra-fast to let the player fly at a satisfying speed in his spaceship.

I re-used some shaders I made for my main project to have good looking water, godray, and sun. All of this in a deferred shading pipeline which is a bit of an overkill for a simple game like that, but anyway that'll make an opensource example of deferred shading in libGDX ;)

Now I need to add some life in this planet!

(Edited 1 time) (+1)

Adding some life:

Maybe that's a bit too many sharks :p

I found these free animated models on TurboSquid.com, I recommend going there when you are looking for a 3D model!

Nice graphics!

(Edited 1 time)

I just implemented physics and collision.

For this little game, I wanted to keep things very simple so I don't use Bullet, I wrote this basic collision handling system which approximates every objects into Spheres of radius 5, that's all I need for this project:

(Edited 3 times)

Adding some missiles!

(Edited 2 times) (+2)

So, how does my render pipeline work?

Let's see how to achieve this:

Warning, this will be a long post!

We start by populated the G-Buffer, which is a framebuffer with 4 buffers attached, used for deferred shading. So it all starts with just the texture colors being drawn to one buffer:

And the normals into another buffer:

The attributes (diffuse and specular infos) into a third:

And the depth into yet another buffer:

Ok. We have the basics. Now we can start the actual rendering, first we draw the skybox:

And then we combine the 4 buffers previously filled, adding a unlimited numbers of pointlights at no cost and calculating the shadows only once per pixel, dependless of the complexity of the scene!

Ok. now, let's add a sun and some post-processing effects:

Now let's draw the godrays. We use the depth-buffer from the the G-Buffer to know where the light comes from:

And the we make it expand directionally from the sun position:

Let's add the godray to the scene:

Nice! Now the water. First, we prepare the reflection on the water by redrawing the scene top-down and cutting down anything above the see level:

Ok, let's add the water to the scene! To do that we again make use of the G-Buffer to include some refraction based on the depth.

Just add the UI and we are done!

(Edited 1 time)

First gameplay video!

Very nice. Not clear when will you die though :)

Do you have a repo already? I'd like to take a look to learn about the renderer, it looks awesome!

Not yet, I'll do that next week on github.

I simply hope you won't faint from some quickly wrote code and a lot of public static :p

(Edited 1 time)

Looks nice! This its an interesting article. Maybe you should change the missile sound :)

(Edited 1 time)

Just released the game & source code!