Maxime Catel

LD 41

Rhythm Overdrive - Shoot'em up with pure rhythm !

Hey there !

Do you like particles and sick VFXs ? Do you like colors ?

But most importantly, do you like electro based shoot'em up ?

Then you should try

Rhythm Overdrive !

Gif_RO.gif

Sorry for this tiny gif :(

Our philosophy was to really dive into the neon/electro world, to combine our art design with the beat/BPM of the musics. The result was a nice feeling of awesomeness when playing !

Img_RO.jpg

Art was really fun to make. Smooth shapes, clean particles, bright colors, all of these makes this catchy style. We tried to add a lot of VFX while giving the necessary feedback to the player.

ImgemRO/em2.jpg

We hope you'll enjoy our game ! Feel free to leave any kind of feedback ! :p

(Warning : Lot of flash colors)

> Rhythm Overdrive page <

Rhythm Overdrive - Thanks you all for your awesome feedback !

Hey there !

I would like to thanks everybody who played our game. It was a really fun project to make, and we're really happy that so many of you enjoyed the game.

If you haven't played the game yet, and you like pure VFX and BPM, feel free to try our game !

Play here !

GifemRO/em02.gif

The gif is a bit better than last time ;p

As you can see, we like colors and clean shapes.

Img_RO.jpg

Feel free to ask us any technical/artistic questions, or even to give us advices and feedback ! And you can also share your high score with us ! c:

Thanks again to everyone !

> Rhythm Overdrive page <

Rhythm Overdrive - VFX & shader work

Hey there !

I wanted to make a post about the colourful design of Rhythm Overdrive.

If you don't know about our game, it's a shootem'up with ennemies dancing on the BPM, with a lot of VFX & particles.

GifemRO/em02.gif

The VFX work was really funny and quite simple. We used Unity to make our game, so I did basically all with the Shuriken particle system, creating simples particle, then animating their color, fade, motion etc.. by tweaking curves and changing values like lifetime or gravity.

GifemRO/emPowerUp.gif

Particle effect when a power up is collected

I used the same methods for creating other effects like ennemies explosions, combo flames, or even red weapon.

Trails were a bit different. I used the trail renderer component with custom textures, to make ennemies projectiles, yellow weapon, & player reactors.

For those who are new with VFX, trails are basically some 2D ribbons who are following the path of a moving object.

GifemRO/emTrails.gif

Trail renderer component

Shader time ! I'm not a CG language / HLSL pro, so I used a node-based editor called Amplify to make our shaders. Because a large amount of our graphic assets are moving to the beat, I had to make easy properties & values that can be animated via a script, to follow the music's BPM.

For example, the texture of the walls have a panning UV value going from 0 to 1, and at every beat it resets.

GifemRO/emWall.gif

Wall panner

The method to animate the hexagons was a bit different. To make them "bump", I had to use a texture with gradient all over the hexs, then create a sort of threshold layout in the shader, to use the min & the max values of the gradient as two textures channels. At least, I multiplied these values with a gradient mask & a color (which is animated with our master BPM script).

RO_Threshold.jpg

Example of texture threshold

GifemRO/emBackgroundHex.gif

Animated background hexagons

Same method is used for the bumping hexs of the playing area, and others details in the game.

I think that's it for a quick overview of our visual effects, don't hesitate to ask me anything about this, and if you haven't played our game yet, feel free to test it !

> Rhythm Overdrive page <

Thanks for reading, and sorry for those english mistakes~

Yay ! Thanks everyone !

Making Rhythm Overdrive was a really fantastic adventure, and bring it even further is what we want to do now, with all your awesome feedback !

Thanks you all, and see you in a few months with a revamped, better, more complete version of the game ;p !

ResultsLD41.PNG

GifDef_03.gif

tya.jpg

> Rhythm Overdrive page

LD 43

Some blood VFX

BloodyWaterfall.gif

BLood_01.gif

BloodFLoor.gif

This game is gonna be harsh c:

VFX breakdown ! How to make a waterfall ? ~ Particles & Nodal Shaders

Hello there !

Do you like VFX, particles and animated materials ? Well, you are in the right place !

Here is a little breakdown of this tremendous bloody (water)fall that I did for our game Abortion Boy ! It's a really gore game, so I had to make blood and flesh VFX, enjoy~

Look at this cutie

BloodWaterfall.gif

So, shader first !

First of all, I started from a 3D plane and made this really simple mesh with the soft selection tool in 3DS Max. Mesh.PNG

The most important part when you're making your waterfall mesh is to tweak your UVs like on this screenshot, because we'll have our waterfall texture that will be panning on our mesh, and because the UVs are less stretched at the bottom of the mesh, this will give us the feeling that the texture accelerates over time (we can see it on the next gif).

MeshUV.PNG

BloodWaterfall02.gif

Well, we have our mesh ! Now, as you can see on the gif, we have a panning texture. I took some water texture, painted it in red, and made it tileable with photoshop offset and the stamp tool :

Texture.PNG

But from now, how to use this texture in Unity ?

That's the Shader magic !

I'm not a HLSL/CG language user, so I use a node based shader editor called Amplify to make my shaders.

First of all, I'll need to distort my texture to make it more realistic. For this I use 2 normal maps that I will blend together :

Screen01.PNG

Next, I make the normal maps pan, by using a float2 to control the panning on both X and Y axis :

Screen02.gif

After that, I need to blend them together, by using a linear interpolation node :

Screen03.gif

Finally, I lerp this new texture with the UVs of my main texture !

Screen05.gif

With this shader, I'm now able to tweak and modify values & properties and texture through the Unity inspector :

Screen07.PNG

Noice !

I have the base of my (water)fall ! Let's add some particles !!

BloodWaterfall03.gif BloodWaterfall04.gif

So, my main particles are affected by a really simple dissolve shader.

First, I need to substract my texture with the opacity of the particle system (in the shader, we can access the particles properties with the node Vertex Color)Here, the opacity of the particles are saved in the alpha channel of the Vertex Colors. Then, I'm also creating a greyscale mask, to define the borders of my texture.

ScreenNext_01.PNG

After that, I multiply my texture with a color, so I can tint it if necessary; and also by the Vertex Colors RGB properties, to tint them directly in the particle editor.

ScreenNext_02.PNG

Back to my mask, I create a float to adjust the global opacity of my particles. The softness parameter is really useful : it will let me create a binary black & white mask (0, black; 1, white), that I will use to dissolve my texture : If I tweak the opacity parameter in my particles, this will adjust the limit between black and white values, instead of acting like a standard fade out.

ScreenNext_03.PNG

Here it is ! My shader is complete !

And now, I need to configure my particles to act like they do on the gif !

The most important properties are the starting properties (like lifetime, starting size, rotation, gravity..), and also the color over life (to make them fade), rotation and size over life. Try to always make some kind of randomness in your properties (for example, give a range of start size/lifetime, and not a fixed constant)

ScreenNext_04.PNG

With my shader that is linked to my vertex colors, and the mask that I made in Amplify, the opacity of my particles will dissolve my texture.

That's all folks !

I really hope you liked this little breakdown, and I'm really sorry because it's a bit long ! Don't hesitate to ask me any questions if you want, or if you didn't understood something !

And if you want, you can test our game here (but care, it's really gore and tortured) :

Abortion Boy !

We made a Steam version of our Ludum Dare game !

Hello !

We participated to the LD41 and made a game called Rhythm Overdrive !

It's a shooter game where the ennemies are moving to the beat, and you have to make the best score possible ! (The LD41 theme was "Combine 2 incompatible genres" so we chose musical game and shooter.)

GifemRO/em02.gif

(Here is the link of the LD page)

The game was really appreciated and we had great scores overall ! At the end of the event, our final ranking was 57th (and 15th for the graphics, woo !)

We also had a lot of positive feedback, and we realized it would be great to make a full, brand new version of this game, so here it is ! Watch the trailer :

https://www.youtube.com/watch?v=4oxc8jmVvHo

We had the chance to make a collab with awesome artists, which include Waterflame, Elektronomia, DJ Striden, and DJ Harmonics !

Here is our Steam page link :

Rhythm Overdrive on Steam

It was such a great adventure for us ! And even if it took some time to make (a few of us cannot work full time on the project), we learned a lot from this; and I'm so happy to share it with you !

Oh, and I'll soon release a video reel about the making of all the VFX/shaders/graphics of the game !

Thank you all for reading, and I hope that if you play our game, you'll enjoy it !

LD 44

VFX & Art wip

Work in progress :D

GifemExplosion/em01.gif

Gif_Fires.gif

Gif_VFX.gif

The gif quality is not perfect, sorry.

Seaway : VFX Breakdown

Hello !

Gif_ExplosionOpti.gif

I did the VFX and 3D props on Seaway, and today I'm gonna do a breakdown of the ship explosion.

GifemExplosion/em03.gif

First, the effects (and the game) were done in Unity, with the standard Shuriken particle system. I also did my shaders in Amplify, a node-based shader editor. However, no custom shader was used for this explosion. Actually, that's only some simple particle work.

*Let's break up the effect in different parts : *

Gif_ExplosionBreakdownOpti.gif

1. Smoke Particles

This is the first part of our effect, that represents the area affected by it. In a more gameplay-oriented approach, this could be replaced by a simple circle that symbolizes this area.

These are quite simple particles made of an atlas texture, expanding from the center and going up afterwards. Those particle movements could be achieved with a huge speed on your particle system, and some dampen to slow down their speed over time.

Smoke.PNG

Also, their color over lifetime needs to be something like this :

gradientSmoke.PNG

The randomness of all these particles was created by giving them a random spawn rotation & rotation over lifetime. This is a very important step to do if you want your particles to be more natural.

2. Explosion Area

The second part of our effect is the 3D one : an hemisphere made in 3ds max was used here. The material on it is pretty much like the smoke particles, except it has no textures. Basically, the colors are the same. The more important thing here is the transparency at the bottom of the hemisphere : it's necessary to think about how your meshes are gonna blend with the floor (if it's a ground explosion), so I had to make some kind of transparency gradient on my mesh. I did that by painting vertex colors in 3ds max, that are automatically detected as transparency by the standard shaders of Unity particles.

meshvertex.PNG

This is a nice method to add transparency to your meshes for VFX other than doing it with an alpha texture. Pretty useful for sword slashes, etc...

3. Burst

The burst is nothing more than a few particles having a very short lifetime. Their role is to amplify the "boom" feeling of your explosion. Without this component, my explosion would feel very flat. The textures used here are really simple shapes made on Illustrator :

shapes.PNG

The color over lifetime is something like that :

gradientshapes.PNG

4.Smoke Trails

This one is particularly useful in the "dissipation" part of the global effect, that comes after the climax (the burst). These smoke trails symbolizes the impact and the power of the explosion, and could be some debris that are ejected out. The method to make them is pretty simple : I have an emitter who emits nothing, but is only moving, and attached to it, a sub-emitter who emits world-space particles : with this, I can make a trail of random smoke particles. Also, they are using the same material and colors as the first particles.

5.Sparks

Sparks are quite subtle, and are only here to amplify the global effect. Being faster but smaller than the smoke, they add another layer of detail to the explosion. The only difference between them and the first particles despite their texture comes from the way ther are rendered. They are not particles, but trails. This way, they are able to "curve" themselves when moving and being affected by gravity, making them more smooth and giving them a cool motion.

6.Some tips

-Don't hesitate to use HDR colors (colors that are brighter than pure white) with post-process like bloom, this will spice up your VFX and make them better !

-Also, don't hesitate to duplicate your effects and make variations with it. Change the colors, the timings, adds more emitters, etc... With one well-crafted effect, you can make tons of cool variations ! Here is an example of mine where I only changed the colors :

Gif_BlueOpti.gif

Gif_RedOpti.gif

I hope this breakdown helped you to understand how our VFX were made ! Thanks for reading :]

Don't hesitate to test Seaway !