Pinned post

I figure I could do an too.

I'm Froyok / Fabrice Piquet, and I have been working on Substance Painter for almost 8 years, initially at Allegorithmic and now at Adobe.

In my spare time I play with the Unreal Engine, experiment with shaders and sometimes draw stuff. So it's mostly tech art oriented. :)

From time to time, I write articles on my website, often about Unreal:

(1/x) My GDC talk "How (not) to create Textures for VFX" is online and available for FREE!
You can get Slides, Project Files (UE4 & 5.0) & more:

Got the base collisions in.
I ended-up building them in Tiled too by hand.
I suppose this could become be tedious in the long run, but I like the idea of freedom from the tileset itself that it gives.
Plus is as easy to parse as the tilesets themselves when exporting to the game.

Show thread

While googling about how to do lighting and shadows in a 2D game, I stumbled upon this great blog post from the devs of "Graveyard Keeper", I highly recommend the reading:

Took a few tries, but I got the Jump Flood working an now have a Distance Field texture working ! :D
Just need to cleanup the pipeline now and integrate it in-game ! \0/

Show thread

Before moving on to collisions (which I have prepped the data for it already, now I need to translate it into the game) I want to play a bit with water surfaces.

Right now I built a new set of tiles with transparency. The goal is to render the map as a black and white mask and then generated a distance field from the hole.
From there I should be able to generated dynamic shorelines. :)

Show thread

I wrote about optimizing the new C++ based Blender OBJ importer, and it accidentally ventured into calling conventions topic.

The advantage of using Substance Designer for building textures: using the height-map as a blending mask to make terrain/tiles transition for free.

Each time I want to build a new transition I just need to plug two materials together in a filter. :D

Show thread

For example I store in Red and Green the center of each tile so that I can scale it up/down to hide the tiles seam because of the texture sampling.
Texture are simple enough that I don't need padding in them at all.

Show thread

My python toolset parse the Tiled json file, build the mesh in a lua file, which I simply load at startup. And voilà !
UVs are directly set properly and I can use vertex color to get additional data.

Show thread

Technically I ditched the idea of using a screenspace shader pass and went back to using dedicated polygons.
The nuance is that I precompute the mesh for each map, instead of using a generic mesh.

Show thread

Finally made it work !
I'm walking on my map, yeay !

I made only the base layer work for now, next are the other layers. Then it will be collisions.

Show thread

I have completed the hex map of merveilles!

Or at least my corner of merveilles.

Show older
Gamedev Mastodon

Mastodon server focused on game development and related topics.