A new way to generate worlds (stitched WFC)

Поделиться
HTML-код

Комментарии • 989

  • @WattDesigns
    @WattDesigns  Год назад +167

    Hey everyone! Just wanted to clarify after getting some comments, MANY have used wave function collapse, I do not claim to be the first. I do think my application here (creating chunks with different patterns, then using a third pattern to stitch them together) to allow multiple different input types is new. Feel free to correct me if I’m wrong though! Sorry for the confusion :)

    • @lizelive
      @lizelive Год назад +23

      great video, sadly you aren't first person to do that either. you are prob best at explaining it though!

    • @emrys6895
      @emrys6895 Год назад +4

      Yeah it was weird to hear you say that as this function was made for a game, its not wave function collapse from quantum physics after all. Thus you cant learn about this without learning about the demos it was used in. Soooo yeah

    • @WattDesigns
      @WattDesigns  Год назад +10

      @@TinkerWorX that’s just WFC. They chose a few points and solved it from there, all one input pattern
      I’m creating one block with pattern A, another block with pattern B, and stitching with a special stitching pattern C. That sample there only uses one

    • @Stopinvadingmyhardware
      @Stopinvadingmyhardware Год назад +4

      @@WattDesigns This exists in the Blender game engine as well. If you ever want to step into 3d procedural generation.

    • @WattDesigns
      @WattDesigns  Год назад +4

      @@lizelive Im just now noticing this response - do you have some links to where it’s been used this way so I can add it to the description?

  • @rmdcompositions
    @rmdcompositions Год назад +898

    It was super fun to work on it! Im glad that the music works well and great work with all of the updates! Can wait for more! 😊

    • @joyfulfishman5445
      @joyfulfishman5445 Год назад +37

      The music sounds amazing my guy! Im an aspiring composer myself whos only written music for solo piano and some string instruments thus far. I have no experience writing videogame music but I would love to get into it and im totally inspired by the music you provided for this video, what advice would offer you to someone looking to learn and get started?

    • @bvoros361
      @bvoros361 Год назад +17

      The music is spot on! excellent work

    • @rmdcompositions
      @rmdcompositions Год назад +14

      ​Hey@joyfulfishman5445 of course!
      i can't really give advice on say, networking and getting a project without knowing how you personally prefer to work, online, in person, location etc... regardless one thing i always would advice is, people first. That no matter who you work with, be sure to enjoy working with them, chances are if you do, you will be much more motivated, invest more of your energy into it and end up with a better work for it!
      Hope this helps 😁

    • @LSETalks
      @LSETalks Год назад +12

      The music is brilliant really loved it, fits so well! great work!

    • @tomk07
      @tomk07 Год назад +7

      Amazing music (: it matches the game just perfect!

  • @empresslithia
    @empresslithia Год назад +24

    Another algorithm that's essentially the mother of WFC, (or, to put it another way, WFC is a specific case of it), is graph rewriting. If you represent your world as abstract nodes within a graph, suddenly you gain immense power in generating your world, and can do anything from generate levels with complex rules, to procedural loot generation, to managing your quests and dialogue. Graph rewriting works by representing everything as either a node or a path, then creating rules for how those nodes get joined together by paths. A great example of this is the game Unexplored, which used graph rewriting to generate all of its everything, but its levels in particular are very well done, as they're complete with traps and puzzles in a way that makes intuitive sense. Graph rewriting is the mother of all procedural generation, and it's only the difficulty in using it (you have to be very creative in designing your systems) that stops every game ever from using it for everything ever.
    EVEEEEEEER.
    TL;DR: Graph Rewriting is really cool, and supercedes all other procedural algorithms in both capability and difficulty of use, but is well worth the effort if you're smart enough.

    • @Korn1holio
      @Korn1holio 7 месяцев назад

      thank you very much for this insight.

  • @TomNCatz
    @TomNCatz Год назад +238

    part of the value of waveform collapse is that you do NOT need to generate the entire final island one go. So long as you have fed it inputs that are not prone to collisions you can just pick a starting point and run until you have a large enough plot for starting out. then you can continue to run the waveform collapse in the background as long as needed

    • @lsedge7280
      @lsedge7280 Год назад +19

      This. Was intrigued by the whole "stitched" version he was talking about and thought he was going to talk about some improvement to generating part-by-part stitching on new parts.

    • @LuaanTi
      @LuaanTi 11 месяцев назад +12

      As long as you do not care about the result being repeatable, that is.

    • @kartonrad
      @kartonrad 11 месяцев назад +5

      This does break repeatability, meaning the same seed will generate different results

  • @justinsymington
    @justinsymington Год назад +145

    the world generation stuff is cool but that demo from Ricardo is OUTSTANDING and he nailed every bit of input you gave him

  • @krazymeanie
    @krazymeanie Год назад +893

    Watching indie devs discover wave function collapse for world generation is always interesting to me for some reason lol. Its becoming so popular.

    • @TourFaint
      @TourFaint Год назад +140

      It's so strange i've seen so many people go "wow WFC Is so cool look you can use it to make maps" since it's not a new thing at all. Like, do indie game devs have sort of ethics code that forbids them from looking up other peoples' work?

    • @tezeta3725
      @tezeta3725 Год назад

      ​@@adamluhring2482I know youtube doesn't like links but do you have the name of the website or something so I can find the page?

    • @kilikikiliki4900
      @kilikikiliki4900 Год назад +120

      ​@@TourFaint no i dont think so its more like with more devs more devs without a cs degree exist so they have to learn everything themselves which is a lot

    • @VincentPride1986
      @VincentPride1986 Год назад +56

      ​@@TourFaint nah, majority of indie devs are just bedroom coders without strong pro background hence you can't expect too much from them.

    • @PoseidonodiesoP
      @PoseidonodiesoP Год назад

      ​@@VincentPride1986Why do you think they're indie devs? Use your brain

  • @chrism3562
    @chrism3562 Год назад +5

    Seeing a sponsor segment for my local university was a surprise.

  • @maxoeller9613
    @maxoeller9613 Год назад +66

    Im in love with the music, definitely gives off that terraria/stv vibe and in my opinion fits pretty nice with the game

  • @chadzulu4328
    @chadzulu4328 Год назад +81

    The game is looking awesome. I love the music too...the composer nailed it.

  • @J_Stronsky
    @J_Stronsky Год назад +55

    I know it'd be a lot more work, but if your concern is biome boundaries why don't you create 'transition biomes'.
    If you're making a rule that says only specific biomes can be next to one another, then you can create a special biome that looks like a smooth transition between the two and use that blender method you mentioned to stitch them together.
    So beach > water = shallows, beach > grass = dunes, grass > trees = scrub, etc, etc...
    Because you've limited the number of zones that will be in contact you don't need to worry about the huge number of variations that would arise otherwise and you can make the transition zones vary in width to make it more seamless.

  • @masha8770
    @masha8770 Год назад +123

    Great progress! I wouldn't throw the unintentional idea of wood dungeons quite out yet. On a smaller scale & with a different pattern I can see human forts as small outposts perhaps? Something that pops back up even after "clearing" an area for longevity? Also love the new music! I hope the full soundtrack will be a thing added to the steam store once you're doing the full release.

    • @o_sch
      @o_sch Год назад +2

      Yep. I use wfc in my game to make not only dungeons but also buildings. The input image for buildings should be less tunnels and more of a boxy contained shape.
      I want it to be very user moddable and its like Dwarf fortress where you can edit the raws (mine are JSON since thats easy). I have a json file for structure generation with paths to the files. It isnt fully fleshed out yet but it will work like this:
      JSON file contains data for different structures and how they generate
      A secondary JSON file contains the path for the WFC input image and what the different colors represent.
      when generating structures it loads this image into the WFC, takes the output, then uses the colors data to fully process it
      For example, i have a catacombs template where it is mostly straight tunnels. The base color is black, with tunnels being white. Along the sides of parts of the tunnels are purple squares, which signify tombs. Then I have a few small rooms with a central tomb - these are more wealthy tomb owners. Some have a orange tile coming off which is a door and it separates a blue tile room which is treasure. There are also some red rooms that separate the treasure which are trapped rooms.

  • @druidofpies
    @druidofpies 11 месяцев назад +3

    For that specific list of music requirements, I'd say the composer nailed it

  • @Ozzymand
    @Ozzymand Год назад +2

    There is a guy named Martin Donald on youtube that made a video about wave function collapse already for world generation, so while this is not the first video on this topic, it is good to see what other people can come up with and explain.

  • @thebe_stone
    @thebe_stone Год назад +297

    this game looks really good, and the new biome generation is something i've never seen before. the character design is super cute, but i think it would look better with hats that you can choose. one of the hats could be a potato hat.
    edit: i noticed armor was next on your list, that sounds like the perfect time to add hats and maybe a potato hat

    • @babinbowie2846
      @babinbowie2846 Год назад +10

      yes potat hat

    • @tomk07
      @tomk07 Год назад +10

      potato hat

    • @88denden
      @88denden Год назад +2

      throw in a terraria easter egg in there with them hats?

    • @beaworldchild
      @beaworldchild Год назад +2

      I must second my erudite friend here. yes potat hat

    • @gold571
      @gold571 Год назад +2

      potarto hat

  • @JerryA189
    @JerryA189 7 месяцев назад +2

    just making your pants vibrate, nothing to look at here.
    thx for the clear explanation in the theme, it was very easy to understand.

  • @thebadshave503
    @thebadshave503 8 месяцев назад +7

    "Stitched Wave Function Collapse" sounds like something a scientist would assure you is safe 20 minutes before you're fending off headcrabs with a crowbar

  • @churchmuch
    @churchmuch Год назад +4

    I was really digging the music, it sounded great

  • @argore9709
    @argore9709 Год назад +4

    honestly the best timing possible
    I'm super interested in procedural generation and the like, and was actually thinking of how WFC could be used to make terrain like this like a week ago
    amazing video, keep it up!

  • @Augustman22
    @Augustman22 Год назад +1

    9:24 I am really a fan of this music, I totally see myself vibing to the music while building a little home for myself lol

  • @matthewboyd8689
    @matthewboyd8689 Год назад +13

    I always have great respect for artists that nail the theme and feel of what the games intent is.
    The pixel art and that music, so magical it brings nostalgia to me that I can't pinpoint where or why exactly.
    10/10

  • @closetgeek
    @closetgeek Год назад

    Glad you reached out to Boris, his Tessera asset makes it really easy to implement WFC for those of us that either don't have the coding skills or just don't want to bother implementing everything themselves.

  • @trapfethen
    @trapfethen Год назад +5

    You can apply Waveform Collapse at multiple scales. So you could simply look at letting your stitcher work on a smaller scale than your regular biome placement algorithm: maybe 2X2 or even 1X1. That would break up a lot of the "blockiness". You can also look at the more complicated version of waveform collapse that looks at 3X3 or larger patches and actually overlaps it's collapses to constrain the macro pattern more. Finally, you can tweak the probabilities of certain tiles on the border of other biomes by hand to make hard transitions less likely.

  • @gljames24
    @gljames24 Год назад

    Glad more people are learning about wave function collapse. It's honestly the nicest way to solve a constraint system problem.

  • @Bargeral
    @Bargeral Год назад +36

    in your last video you talked about multiplayer and the difficulty sharing the map. If you can make your random level gen consistent based off of a seed number than you can just share the seed. Maybe do a checksum on the generated level as a validation.

    • @powertomato
      @powertomato Год назад +13

      Determinism is easy in a linear algorithm, but much harder in a parallel ones, as you have to ensure the scheduling of each task is also deterministic, which is usually handled by the OS optimized for performance so that is likely going to make it slower again

    • @dIancaster
      @dIancaster Год назад +2

      @@powertomato Goddamn, you're letting your COMPSCI degree show. Very true, though.

    • @KDSBestGameDev
      @KDSBestGameDev 9 месяцев назад +1

      ​@@powertomatomake a seed that is shared, have the seed generate a seed for 8 parallel threads. And each thread itself can easily be deterministic. So for wave function collapse it is that easy if you generate the full map or use a seed like seed + xTilePos + yTilePos this should make a deterministic seed per tile no matter what parallel task works on it.

  • @ash12181987
    @ash12181987 Год назад +2

    I have been thinking of using wave function collapse in my RTS project, and I was going to use ECS as my whole project is built in that already. So thank you, for at least indicating I'm not entirely barking up the wrong tree.
    The game looks great, I'm going to go check out your other dev logs, and I look forward to following your progress.

  • @SteveGongage
    @SteveGongage 9 месяцев назад

    You have a natural gift for explaining complex concepts! Thanks for sharing it with us.

  • @leaf4645
    @leaf4645 Год назад +7

    That music is 🤌

  • @shufflepuck64
    @shufflepuck64 Год назад

    YT Algorithm brought me here, love the enthusiasm and open-mindedness you show towards the project. Hope all the best.

  • @jaredarneecher8724
    @jaredarneecher8724 Год назад +3

    I love the tight corridors makes it feel like if you rush your gonna have a bad time
    But I also think you should make the loading screens just little gobby helping around town or building houses

  • @ChristinaCreatesGames
    @ChristinaCreatesGames Год назад +8

    That was a great explanation and visualisation on how the wfc works =D! I have a good friend who absolutely loves proc gen and I learned about the wfc initially from him. It's a really cool rabbit hole to Fall down to! Seeing you figure out the System, optimization and such was fun and I'm looking forward to more =) (The music sounds great as well! Feels like it fits your project =))

  • @revylokesh1783
    @revylokesh1783 Год назад +4

    I know absolutely NOTHING about coding, but I'm pretty sure an app that spews out a "random" hexmap (using the mentioned wave function collapse) for old-school roleplaying would be incredibly cool!

  • @harvestgoon5291
    @harvestgoon5291 Год назад

    I didn't know it until I just watched your video, but I used this wave function collapse algorithm at work to optimize a test framework for the operating system I used to work on. The system ran 10s of thousands of tests, scheduling the OS to be tested on different hardware for different features. We originally used a matrix to test almost every combination, but this began to take too long. Instead I proposed a system wherein we had constraints on how many of what kinds of tests needed to be run on different hardware, and then the system would schedule tests randomly based on the constraints that were still remaining, picking the tests with the fewest options first.
    Nice video!

  • @_Snout_
    @_Snout_ Год назад +73

    You should make the hot bar moveable from the bottom to the top

    • @Izzy-fr1zu
      @Izzy-fr1zu Год назад +10

      agreed! Just played a game that doesn't have this feature and this is sooo annoying when enemys are behind it, and just won't move >.>

    • @WattDesigns
      @WattDesigns  Год назад +17

      Interesting, I’ll add it to the list!

    • @_Snout_
      @_Snout_ Год назад +3

      I’ve never have had such I liked comment

    • @JeronimoStilton14
      @JeronimoStilton14 Год назад +4

      Grab a list of XY positions and tie the hotbar to the enemies so that it just jankily floats up and down the entire screen all the time lol, snapping to the next enemy as it dies.

  • @theulfhednar2655
    @theulfhednar2655 11 месяцев назад +2

    I absolutely adore the fact that the music sample's rythm matches the taps of the little goblin's feet haha. So good.

  • @pixelblaze8284
    @pixelblaze8284 Год назад +3

    I just started this video but my immediate reaction was to do it with machine learning because I'm a data scientist, but then you kinda described a manual and simple model type thing that really functioned more like a single chemical chain reaction. Then as you explained more my brain got excited cause I was recognizing the bones of basic machine learning, before you said it found the rules on its own and is basically machine learning. But then you mentioned it only takes an input size of one and my little coder heart broke because of the horror that is such a small database of probably only like a couple thousand pixels 😭. It was a great rollercoaster of emotions for only a few minutes in, but imma go watch the rest now 😅

    • @mechanomics2649
      @mechanomics2649 Год назад

      I immediately thought similar. Specifically, feeding it a map of our world so that it learns the rules on what goes where and extrapolates those out onto a generated map.

  • @o.rbi.t
    @o.rbi.t Год назад +1

    the music from ricardo is amazing and it perfectly fits the vibe of the game
    (or in my terms, the music is absolutely banging)

  • @VengefulSpectre
    @VengefulSpectre Год назад +3

    The music actually sounds pretty good. It was a little loud to me in the video but it honesty made me think of Zelda. Like with all games that look fun to me. If it ever comes to Switch I’ll get it. Don’t have a computer currently lol.

  • @VinciWare
    @VinciWare Год назад +2

    This was honestly one of the most interesting dev blogs that I’ve watched so far!

  • @Gabbe211
    @Gabbe211 Год назад +4

    The game is really cool but it could be cooler if it had seasons like winter and stuff, might be a little laggy but i dont know. Im excited to see if this idea gets added or not!

  • @OddlingCore
    @OddlingCore Год назад

    That music immediately brought me back a transcendant memory of playing RuneScape

  • @RIK0-1
    @RIK0-1 Год назад +26

    This is really cool, great job! One thing to point out is that WFC is not deterministic in the same way that a noise generation algorithm is, so be careful if you are planning pseudo-infinite worlds (something akin to minecraft). For example, if you wanted to teleport to a location 10,000 units away a noise generation algorithm can start calculating the terrain instantly at that location, and it would be the same each time you recalculated it based on the seed. For the WFC algorithm you would need to start generating from the origin until you eventually filled in the section you are trying to teleport to, which may take an extremely long time or your computer would run out of memory. Because of this I would recommend keeping your worlds to a reasonable size, and perhaps if you want bigger maps make a break between each of these large sections so that they aren't continuous.
    Anyway this is my first time seeing your project and it looks great! Good luck, I'll sub to watch your progress and root for you.

  • @ryanremer
    @ryanremer Год назад

    Thanks for the video, I am building a top-down game and your game's style inspires me!

  • @zylo202
    @zylo202 Год назад +13

    Interesting stuff! The dungeon gen is going to need some wider hallways though. I was getting claustrophobia just looking at them.

  • @SaulKohn
    @SaulKohn Год назад +1

    Gorgeous music composition!

  • @niuage
    @niuage Год назад +3

    WFC algo concept is very easy to understand, what becomes less easy to implement is backtracking when the algo gets stuck, and additional rules like guaranteeing paths between points etc. Tessera is a pretty good asset for that.

    • @niuage
      @niuage Год назад

      Nvm, I see you mentioned Boris the brave, so you def know about Tessera ^^.

  • @jessejburton
    @jessejburton Год назад +2

    Everything's looking so great! Thanks for the detailed info on the procedural algorithm's. I Found it super helpful :)

  • @HRforges
    @HRforges Год назад +4

    My girlfriend was bobby around in a very cute way to the music, so 10/10

  • @2ndPortal
    @2ndPortal Год назад

    A good level/map feels meaningful at every corner

  • @ethos8863
    @ethos8863 Год назад +6

    As a rule of thumb, procedural generation is never easy, and there's always a tradeoff between performance, and intensive tweaking.

    • @TAP7a
      @TAP7a Год назад

      A key benefit of procedural over manual, especially for solo devs or small teams, is the time to having *something* to iterate on is much faster, and is the time per iteration, even if the starting standard is lower. Obviously you can only achieve that by giving up artistic control, but that's why you iterate to reintroduce it

  • @Gorbukoki
    @Gorbukoki Год назад

    Thanks for sharing your methods of developing your landscape! The shared snippet of music was excellent and felt spot on.

  • @sechmascm
    @sechmascm Год назад +9

    The goblins should live on a dungeon-like goblin fortress imo. It wouldn't be their only place but having it like this would help you separate them from the human invaders that would settle in the current style

  • @AndyGun11
    @AndyGun11 Год назад +1

    That song at 9:07 sounds like a song that would be in Terraria! Very cool.

  • @Yay295
    @Yay295 Год назад +3

    For the odd patches of the wrong biome, maybe you could add a cleanup pass that removes any clumps of tiles smaller than a certain size and replaces them with an adjacent biome's tiles.

  • @YoungChip69
    @YoungChip69 Год назад +1

    this is developping my interest towards game design and i love it

  • @Mistereee
    @Mistereee Год назад +2

    This game is gonna be so cool once it releases! I will definitely be getting it once its out!

  • @sephreed1938
    @sephreed1938 Год назад

    There is another game dev who I saw using this strategy a bit ago. Super clever on anyone's behalf who does it!

  • @PhilipLozano_0
    @PhilipLozano_0 Год назад +16

    First of all, I love what you're doing with the game. I will also say, at the beginning of your video, you said this was a new way to use WFC, but i think a lot of game creators have used WFC like this. It kind of make you look like you arent aware of what other creators are doing in your space. Perhaps your vewers arent watching other videos on this topic so it probably doesnt matter that much.
    Also i think it would be cool if you shared some of the resources that you used for things like WFC, some source citing.

    • @emlyfox
      @emlyfox Год назад +5

      This was 100% my thought also. I only know about the WFC algorithm because of people using it for world generation.

    • @WattDesigns
      @WattDesigns  Год назад

      I did some digging and didn’t find anyone creating patches like this (using different patterns) and stitching them together with stitcher patterns. I’m willing to be wrong here though! A lot of people seem to think I meant WFC itself is new, I should have been more clear. I’m well aware it’s been around for a while
      I mostly used Boris’s stuff, maybe I should have stated that, I figured mention of going to him for help would be good enough. Next time!

    • @27klickslegend
      @27klickslegend Год назад +1

      @@WattDesigns I suspect there are quite a few people doing this in isolation like me. I admittedly skimmed the video but I'm curious as to if you only included the tile rules required for the biomes you were generating, as will drastically speed things up.
      another optimization is to resolve categories of tiles first, then resolve the varieties afterwards, the lower number of possible tiles you have in each WFC iteration the better obviously.

  • @StiffAftermath
    @StiffAftermath Год назад +1

    That forest music track is truely incredibly-well done! I'd be very proud to have that is my game! 😅

  • @Jam_957
    @Jam_957 Год назад +7

    I think it would be better if you had multiple samples for each biome because that would add more variety and make it feel more random.

  • @MousieMagic
    @MousieMagic Год назад +1

    Been interested in wave function collapse and been toying with it myself. When you started talking about your school commute and parking, I agreed because I had the same situation. It wasn't until you showed the picture of the walk up the hill that I knew exactly what school you went to because I went there as well. I walked up that hill too but the one to the engineering building was worse.

  • @mariettathelynx
    @mariettathelynx Год назад +3

    just found your channel, dev logs are so much fun ^^ its interesting to understand how much work a game actually needs.
    also maybe the music could be a bit slower...

  • @gameloperr
    @gameloperr Год назад

    Its very nice to see more devs use WFC and it generally coming into light. The possibilities are huge & there are quite some interesting angles/approaches that can be taken with this which eventually would lead to original types of world generation & games!

  • @stevik12
    @stevik12 Год назад +3

    This is really good keep up the work, Cant wait to play the game, Its like 3d terrarria but youre the goblin and the terrarrian is invading, Like the style!

  • @Morsaliger
    @Morsaliger Год назад +1

    Seems like a lot of dev's are getting interested in WFC as a way to generate worlds. I saw a video 11 months ago called ' Why I'm Using Wave Function Collapse for Procedural Terrain ' and I got such deja vu. 🤣 Always awesome to see more people pick up this method.

  • @samuelcollier1764
    @samuelcollier1764 Год назад +5

    Really great progress! I remember watching a similar video on a guy using wave function collapse to generate maps for his game as well (ruclips.net/video/TO0Tx3w5abQ/видео.html) I always hear about people using perlin noise, so it's nice to see people using other techniques like these :)

  • @idahojake2296
    @idahojake2296 Год назад +2

    Very cool generation tool. Also, great choice of music composer! It sounded great. :)

  • @helio6839
    @helio6839 Год назад +10

    I love seeing WFC in more games. So much better than noise in most scenarios.

  • @aarondcmedia9585
    @aarondcmedia9585 Год назад

    Now imagine giving a bunch of sound bites to a WFC method to generate music. You could associate ground tiles to sounds / ambience and have the music match the terrain dynamically as a player moves through different biomes!
    The sample of music you played was great.

  • @Acudit
    @Acudit Год назад +3

    I am willing to guess that you will want to add some sort of tradesman eventually. I think it would be really cool if he were a kobold. Also, making a port/dock on the beach be something that he needs as a prerequisite to come visit, and the more prosperous your isle is, the more and better resources he will bring to trade. Just an idea. (Also, making the port/dock could make a fishing-inclined villager eventually start work on their own little dinghy so they can go a bit off shore to fish and get better products to sell and a higher quality of life.)

  • @hjewkes
    @hjewkes Год назад

    I swear I've seen multiple videos about this and the sudoku example really clicked for me, thanks!

  • @anthonycannet1305
    @anthonycannet1305 9 месяцев назад

    I have an idea to possibly improve the quality of the wave function collapse generation but idk if anyone else has thought of it yet…
    I’m gonna call it Layered Wave Function Collapse for now, since I don’t know if it already has a name…
    Basically you run WFC in multiple layers. For starters you have your base layer WFC, where it picks the actual tiles to place and directly effects the world. But before you run that you go up a layer, have a grid of biomes and perform WFC on that, then the base layer WFC will fill in the tiles using those biomes to determine the tile set. So as an example say you have 3 main biomes: mountain, forest, and ocean. You would also need 3 additional biomes for the borders, beach, mountainside, and cliffs. It’s fairly straightforward to do standard WFC to place biomes to fill a map area. But each biome has an associate tile set and rule set. And for each cell in the grid you perform wave function collapse, possibly even in parallel with each thread only running WFC on a single biome. You get smoother borders because you define entire areas as a border that performs WFC to get from one biome to the next.
    I just had this idea at like 5am and I’m currently working on a different project so I won’t be able to try implementing this for a while, and don’t know if it would even work or give better outputs. That’s all a hypothesis that I can’t test right now…

  • @shrimp381
    @shrimp381 Год назад

    Just been catching up on the Dev logs and was really surprised to find an upload minutes after I finished the other one!
    This is whole game and your Dev process is fantastic. Keep it up.

  • @kissgergo5202
    @kissgergo5202 6 месяцев назад

    9:43 I really like the little wooden sounding taps in this song

  • @benjipixel1438
    @benjipixel1438 Год назад

    Wow, I just watched your newer aseprite video, your sound design has improved in just 2 weeks!
    Very interesting subject to talk about to!

  • @jamesfrazier7900
    @jamesfrazier7900 Год назад

    that music is AWESOME!! Feels almost nostalgic.

  • @GavinKing_AKA_plumpNation
    @GavinKing_AKA_plumpNation Год назад

    That music hit the brief exactly. Wow. Proper

  • @jffrysith4365
    @jffrysith4365 11 месяцев назад

    I love optimisation videos so much. Like it's so funny to hear someone say, "it took 5 minutes to generate this large map, so I optimised it and now it takes 4 seconds!"
    It's like the Matt Parker video where someone made his algorithm something like 70000% faster or something insane.

  • @lobban2
    @lobban2 9 месяцев назад

    Cool way of using WFC and I really like the results. But dang I really loved the forest music. Cemented the soul into the game.

  • @hebils
    @hebils Месяц назад

    I really want the greatest luck for this game, is really interesting how you are making all of this.

  • @iamatwork4856
    @iamatwork4856 2 месяца назад

    My man. Calling you are going to talk about the sponsor and then marking that as a topic in the video so we could skip it? You just got a new subscriber. Thumbs up! Gonna watch the ad twice now after watching the whole video!

  • @tmbarral664
    @tmbarral664 Год назад

    oh oh, I do love the music. it creates the perfect ambiance. congrats, as it is a pretty important part of a game, sometimes neglected.

  • @polychoron
    @polychoron Год назад

    That music was pretty rad. It might be interesting to use wave function collapse on sound, too.

  • @novAviator01
    @novAviator01 Год назад

    That forest theme is fantastic it’s tickles my brain right

  • @thanatos454
    @thanatos454 Год назад +1

    Love the music sample! Ricardo did a great job with the prompts

  • @archmageofcreation6179
    @archmageofcreation6179 Год назад

    OMG THAT SOUNDTRACK IS PERFECT AND JUST SUPER EPIC-NICE!

  • @chri-k
    @chri-k 10 месяцев назад

    This gave me some inspiration on how to make dungeon generation, although i have quite different circumstances. But not doing the generation in the normal coarsest -> finest order is exactly what i now know i need to do.

  • @BralexAir
    @BralexAir Год назад

    I did not expect to see a quantum physics concept pop up in game design. Boundary conditions are amazing!

  • @diconicabastion5790
    @diconicabastion5790 Год назад +1

    You aren't the first. But good use of a tool.
    There are a number of games and map generators that have biome rules that work similarly. They aren't as obvious because many of them are more complex there for appear more randomly. Minecraft biomes have rules for example as to what biomes can generate next to one another. Last year I created a map generator that used a combination of methods to build the terrain. It started by using a veroni diagram to generate the plates. Then a smaller one to create climatic regions which tied to the terrain generation. The climate regions were filled in by a combination of wave function collapse and terrain location. This then determined what grew in the region and soil ... I did it that way because it was much faster than building and running a full climate and weather model for all the stuff.

  • @NibKilgharrah
    @NibKilgharrah Год назад

    BRO THE MUSIC BOPS PERFECT FOR THE GAME'S THEME!!!!

  • @GES1985
    @GES1985 Год назад

    This is what I needed. Thank you so much! I will use this to design how procedurally generated homes and populations for cities will be by describing the rules for what a NPC needs to "live" an in game life. What kind of home they would have, and how having a family effects the rooms a home needs or can have, and what items rooms should contain, and how item quality is effected by different social classes. This, mixed with NPCs who can talk to you with AI and have dynamic knowledge about in-game topics they "hear" as news should make for an interesting background, and be a relatively easy way to populate a larger space procedurally, so I can spend my human efforts working on polishing rather than hand crafting everything. Unreal 5.2 looks like it will be super helpful here too!

  • @DerpyDingoDoggo
    @DerpyDingoDoggo Год назад

    nice work. live seeing how this is coming along.

  • @thelegend2776
    @thelegend2776 Год назад +1

    3:01 omg I love that reference

  • @kelpsie
    @kelpsie Год назад +1

    8:50 - I think this might actually be the most interesting gamedev insight you've shared, surprisingly. Even if it's just a tidbit, knowing the sort of phrasing that goes into commissioning BGM is pretty demystifying. That's not really something I've ever come across.

  • @infinitefretboard
    @infinitefretboard Год назад

    Very cool! This could certainly expedite my process when designing worlds.

  • @czarekdupa
    @czarekdupa 9 месяцев назад

    i love the percussion part in the goblin forest theme

  • @michieleding1242
    @michieleding1242 5 месяцев назад

    This is so useful. I am busy with a game myself that is just basically this (just a bit different).
    Btw music is FANTASTIC❤❤

  • @frogmasto
    @frogmasto Год назад +2

    I know scrap mechanic works in "tiles", where the devs make tiles, and then there is a small gap inbetween them that get procedurally filled in

  • @Skeffles
    @Skeffles Год назад

    Wow the world generation is looking great and I can imagine just how varied a world your game could have now! Good luck with those future tasks.

  • @sobinec
    @sobinec Год назад +2

    Good job! I think the world generation is much better now. Also the soundtrack is amazing.

  • @richeeze
    @richeeze Год назад

    I can´t express how good the music sounds. It´s epic.