Not logged inGosu Forums
Forum back to libgosu.org Help Search Register Login
Up Topic Gosu / Gosu Showcase / Marco - An isometric exploration/city building game
- - By ericathegreat Date 2016-08-11 09:55 Edited 2016-08-11 10:23
After many months of lurking around this forum, and occasionally dropping in when something confused me or otherwise broke, I figured it was probably time I actually introduced the game I'm working on. Fair warning, this is a project I spend on average one hour per week on, so it's not going to be done in a hurry.

Marco is a jointed arm robot, who has the dubious honour of being awoken several thousand years after the fall of humanity on Earth. Hundreds of cryogenically frozen humans wait for his signal that this newly regenerated world is ready for them, and it is Marco's job to explore, collect resources, build and nurture the foundations of a new civilization, and generally prepare this new (old?) planet for their awakening.

This is Marco.


My skills of an artist are still well in their infancy, so he will, no doubt, change and develop as my abilities do.

I picked Gosu mostly because Ruby was pretty big part of my day job, and I wanted (a) to better understand it, and (b) not to confuse myself by operating in too many different languages at once. I wasn't really expecting much coming in, to be honest, but I've been very pleasantly surprised. Ruby turns out to be a lovely language for modeling game concepts and relationships, and Gosu has made it super easy to build a UI by providing solid building blocks without being too opinionated. Kudos to the developer(s?)!
Parent - - By ericathegreat Date 2016-08-11 10:02 Edited 2016-08-11 12:08
One nifty win which I had yesterday was in getting shaders working. I had been having an issue for some time, which was this: My map is made of isometric tiles. When those tiles were solid colour, they looked super boring, and if I was moving around a large expanse with few structures, it was hard to tell what direction I was actually moving in. When those tiles had details on them, repetitive patterns formed which looked ugly and distracting.

So, I checked out Ashton. It took a little bit of playing around, because the examples in the Ashton project no longer work with the latest versions of all the things, but I was able to sort something out pretty quickly.

Compare the difference, with shader on the right, without on the left:


The shader itself is embarrassingly simple. On water, it uses a low resolution simplex noise function to multiply the pixel value on itself - basically making it more or less luminous based on noise. On grass, it does exactly the same thing, but it adds a second layer of high resolution noise, stretched in the y direction. That creates the mild, vertical streaks which look a little bit grassy.

The bonus is that this creates non-repeating patterns, so my eyes never pick out uncomfortable tiling glitches, it's completely seamless, and because of the variation, walking through huge fields of green now actually feels like you're moving.

You can check out the grass shader here on github, if anyone is suitably curious:
https://github.com/ericathegreat/marco7/blob/master/lib/marco/ui/fx/grass_noise.rb
Parent - By jlnr (dev) Date 2016-08-14 10:31
The shader is a great idea and a really nice touch, I wonder if it could be animated too. Thanks for sharing this little detail! Good luck with your game :)
Up Topic Gosu / Gosu Showcase / Marco - An isometric exploration/city building game

Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill