An introduction to graph rewriting for procedural content generation

  Рет қаралды 26,757

The Shaggy Dev

The Shaggy Dev

Күн бұрын

Пікірлер: 39
@NateyC214
@NateyC214 2 жыл бұрын
Simple explanations and pleasing diagrams, who could ask for more?
@Microphunktv-jb3kj
@Microphunktv-jb3kj 9 ай бұрын
7:20 , what game is this ?
@Kazner0h
@Kazner0h 8 ай бұрын
How could I *not* subscribe with such wonderful visuals and editing? Great video
@joelgomes1994
@joelgomes1994 2 жыл бұрын
Your channel is pure gold, nice job!
@TheShaggyDev
@TheShaggyDev 2 жыл бұрын
Glad you enjoy it!
@haydenap
@haydenap 2 жыл бұрын
Always look forward to your videos. This has been really interesting, thanks for including extra links.
@pixtrick
@pixtrick 8 ай бұрын
That was exactly what i was looking for. On top of that, that was brilliantly explained. Thanks mate
@pavlovsdoguk
@pavlovsdoguk 2 жыл бұрын
your stuff on Graph rewriting is awesome. Subbing for this content.
@TheShaggyDev
@TheShaggyDev 2 жыл бұрын
Thanks! If there's any other proc-gen topics that you're interested in, let me know! I keep a big list of topics and pull from it when I'm deciding what content to cover.
@pavlovsdoguk
@pavlovsdoguk 2 жыл бұрын
@@TheShaggyDev Right now I'm working on a game that uses graph rewriting, but I've been very interested in Wave Function Collapse and genetic algorithms
@55fsm
@55fsm 2 ай бұрын
Awesome video. Thanks.
@nickvatanshenas9251
@nickvatanshenas9251 2 жыл бұрын
Great editing and explanations
@Sean-gx1sf
@Sean-gx1sf 2 жыл бұрын
Damn, first image is the FTL map; you know your stuff
@TheShaggyDev
@TheShaggyDev 2 жыл бұрын
FTL is one of my favorites! Gotta include it, at least visually, for anything related to proc gen.
@_gamma.
@_gamma. 2 жыл бұрын
Great overview! 👏
@pokelizardo2298
@pokelizardo2298 2 жыл бұрын
Great explination, a nice introdiction to graph rewriting. What would you say are biggest pros and cons of graph rewriting for pcg compared to other techniques?
@TheShaggyDev
@TheShaggyDev 2 жыл бұрын
Glad you liked it! Biggest pro for me is the flexibility it offers, since you can control the generation as tightly as you want and can generate anything from quests to maps to building structures (which I came across but didn't cover in this video). As opposed to generation techniques that are just for grid-based maps or just for X, you could really dive deep into this technique and reuse it in a lot of ways. Biggest con imo is just the complexity involved. A lot of people aren't too familiar with graphs or don't work with them very often, and making good procedural content is hard enough without also having to deal with an unfamiliar data structure. You'd also probably need some custom tooling to make it easy to generate a large number of interesting replacements and rules to use.
@pokelizardo2298
@pokelizardo2298 2 жыл бұрын
@@TheShaggyDev thanks a lot. I am currently working on my bachelor thesis on the usage of graph grammars and graph rewriting and both this video and your video about generative grammars were a godsend. After drowning in research papers it was nice to have a concise and understandable video with all the necessary information. Keep up the good work.
@TheShaggyDev
@TheShaggyDev 2 жыл бұрын
@@pokelizardo2298 That's awesome to hear, thank you! And yeah, I had to read a fair number of papers for this one as well, but I guess I have to choice to skip those that are too boring 😅
@hawkgamedev
@hawkgamedev 2 ай бұрын
this video is gold, also whats the name of the game you display at 2:24?
@TheShaggyDev
@TheShaggyDev 2 ай бұрын
Thanks! That's Curse of the Dead Gods
@McHumaty
@McHumaty Жыл бұрын
7:26 name of this game?
@TheShaggyDev
@TheShaggyDev Жыл бұрын
Rogue Fable III !
@realMenta
@realMenta 2 жыл бұрын
Thanks
@Aleamanic
@Aleamanic 8 ай бұрын
what is that game at 0:39 in the video?
@TheShaggyDev
@TheShaggyDev 8 ай бұрын
Tile Cities!
@SpudMackenzie
@SpudMackenzie Жыл бұрын
Heads up, the metazelda link in the description appears to have died.
@TheShaggyDev
@TheShaggyDev Жыл бұрын
Thanks for letting me know! Replaced it with a Wayback Machine link.
@deeri638
@deeri638 Жыл бұрын
How would you store a graph in Godot? Its the multi paths that Im not sure about, a simple tree is just children, but when a node can have multiple connections how would you store that
@TheShaggyDev
@TheShaggyDev Жыл бұрын
There's a proposal open to add graphs to Godot (github.com/godotengine/godot-proposals/issues/3848), but otherwise you'd need to make the structure yourself. Khan Academy (and other places) has some discussion on what that might look like: www.khanacademy.org/computing/computer-science/algorithms/graph-representation/a/representing-graphs
@deeri638
@deeri638 Жыл бұрын
@@TheShaggyDev thanks, Ill take a look at the khan academy link. Saw that proposal and was looking at if A* would work, still wrapping my head around how to position everything
@_mickmccarthy
@_mickmccarthy 2 жыл бұрын
Nice! I spent quite some time running through Joris Dormans' papers on graph grammars, could've used these videos around 5 years ago! ;) Keep up the awesome work! Not sure if you've come across it before, but there's a great Zelda dungeon generator project based off his work created by someone called Beck Lavender. Definitely worth checking out if you haven't already. P.S. Haven't yet watched the whole video (but did see Unexplored get a mention!), so apologies if it's already covered!
@TheShaggyDev
@TheShaggyDev 2 жыл бұрын
Oh cool! I had missed this one somehow, thinking Metazelda was the only major Zelda algorithm. Gonna read into it more!
@Nesetalis
@Nesetalis Жыл бұрын
This video feels like the underpants gnomes... "first I have some nodes, then replace nodes by color and connections." "???" level design!" What is the aim of these replacements? Now that you have a random smattering of colored nodes, what are you doing with those nodes to generate rooms? Are edges corridors? Doors? Are hallways a node? And not once do you mention how you might program something. What is the underlying data type, how is it structured, how is memory allocated? What is the processing and memory cost of generating one of these graphs? Implementation detail, even as an example would be nice.
@G69G71
@G69G71 2 жыл бұрын
hi, do you have discord?
@TheShaggyDev
@TheShaggyDev 2 жыл бұрын
Afraid not at this time, at least for Shaggy Dev related stuff. I may look into setting up a server at some point, though...
@G69G71
@G69G71 2 жыл бұрын
@@TheShaggyDevok, thx anyways
@신관용-y1p
@신관용-y1p Жыл бұрын
2:30 what is the name of this game??
@TheShaggyDev
@TheShaggyDev Жыл бұрын
Curse of the Dead Gods. Decent roguelite
That Other Kind Of Game - Story Generators
15:28
BuffaLou
Рет қаралды 307 М.
An introduction to procedural lock and key dungeon generation
11:41
The Shaggy Dev
Рет қаралды 17 М.
1% vs 100% #beatbox #tiktok
01:10
BeatboxJCOP
Рет қаралды 67 МЛН
Enceinte et en Bazard: Les Chroniques du Nettoyage ! 🚽✨
00:21
Two More French
Рет қаралды 42 МЛН
The evil clown plays a prank on the angel
00:39
超人夫妇
Рет қаралды 53 МЛН
Procedural Generation using Constraint Satisfaction
32:36
Programming Chaos
Рет қаралды 18 М.
Procedural Modeling Using Graph Grammars
20:35
Paul Merrell Research
Рет қаралды 10 М.
The Problem With Procedural Generation
17:57
Acerola
Рет қаралды 274 М.
They Turned the Calculator App into a Roguelike
34:09
Olexa
Рет қаралды 534 М.
Generative grammars as a form of procedural content generation
7:50
The Shaggy Dev
Рет қаралды 12 М.
A new way to generate worlds (stitched WFC)
10:51
Watt
Рет қаралды 549 М.
Practical Procedural Generation for Everyone
31:30
GDC 2025
Рет қаралды 419 М.