Conway's Game of Life in VVVV Gamma (Skia)?

I’m trying to recreate Conway’s Game of Life in VVVV Gamma, specifically in Skia, I can code it in other languages but I’m trying to wrap my head around how I can approach this using nodes. Any suggestions on how I can approach this?

Hey there,

I would say the question is rather vague : could you show us if you’ve already tried something and got stuck on something specific?

Not exactly what you’re asking, but VL.Fuse has a help patch called Game Of Life that implements that using Compute Shader, maybe could have a look there?

Cheers

Sorry, I meant generally how would the problem be approached in VVVV gamma, how to have each square detect the surrounding squares etc. tried using a for loop and grid spread but couldn’t wrap my head around what goes where.

Fuse shader stuff looks like hieroglyphics to me so I didn’t gain anything from that but I found a VVVV Beta patch and I’m currently looking to see if I can port that over to Gamma.

@Jaafer I would suggest looking at Fuse.

But if it’s a research project to understand approaches in Gamma, then I can advise something like:

  1. Create a spread that represents your computational matrix. There’s no point in using a texture or anything like that unless you want to use GPU (see VL.Fuse). Just make a spread, maybe a Spread<Spread>.

  2. Start computation. You can compute for any element of the spread or Spread<Spread>. Create a function that looks for neighbours in such a Spread. You might want to make a Spread<CustomCell> where the CustomCell contains neighbours when it is created. This would simplify the calculation to just update. Custom class spreads can help you achieve some flexibility and give you some understanding of what is going on.

  3. Render the result.

  4. be creative. There’s no right way to do this, only your internal engineer and designer can tell you what’s right. Maybe you could use an off-the-shelf cellular automata solution from Nuget.org. Maybe you want to use OpenCV or a GPU. Or maybe you want to do everything in byte arrays.

Somewhere in the forums there is already a patch for game of life. but I forgot who made it… someone remembers?

Thank you, this is the approach I was looking for and yes I should have clarified, this is purely an educational task to improve my understanding of how to interpret existing code into VL.

Here is the forum post for the beta patch that was mentioned:
Game of life - vvvv beta / question - Forum

@Jaafer The amazing thing about VL is that you can write everything in C# and have nodes in your patch without having to deal with nodes by connecting a .cs file.

1 Like