Creating Little Castles with Wave Function Collapse

  Рет қаралды 45,113

Tom

Tom

Күн бұрын

Пікірлер: 67
@NakedGeep
@NakedGeep 11 ай бұрын
I’m a simple man. I see a video about wave function collapse, I click it.
@CLove511
@CLove511 10 ай бұрын
I'm a simpler man: I see a video, I click. Today I learned about wave collapse and that it isn't a surfing term
@csx5882
@csx5882 9 ай бұрын
Let me guess, the adjecent videos that could have been clicked would not have been colapsable because the wave function collapse wouldn't have allowed any other video to be clicked, because it wasn't possible in the first place, leaving this video with the only option left to be clicked?
@Rafloka
@Rafloka 9 ай бұрын
2:06 oh yes, the good old "lemme quickly write a script for that..."
@woudy7
@woudy7 Жыл бұрын
Now I finally understand what wave function collapse is. I'm surprised that this doesn't have more views for a video of such high quality. Can't wait to see this channel grow!
@TomDevYT
@TomDevYT Жыл бұрын
Appreciate it! I'll try my best to keep making interesting videos 😊
@AdobadoFantastico
@AdobadoFantastico Жыл бұрын
It usually takes a few but I hope he keeps it up.
@mgiraldeau
@mgiraldeau Жыл бұрын
Incredible quality for such a small channel! Thank you for the great explanations
@TomDevYT
@TomDevYT Жыл бұрын
Glad you enjoyed it! Thanks for the kind words ❤
@nivmiz0
@nivmiz0 Жыл бұрын
Great video! Super high production quality, and really interesting topic! I love it when mathematical algorithms directly apply to game development and WFC is a great example of that.
@TomDevYT
@TomDevYT Жыл бұрын
Thanks man, appreciate it!
@Soundy777
@Soundy777 9 ай бұрын
Adore the chill vibes and excellent explanation! Great bit of concentrated knowledge!
@ericfear
@ericfear Жыл бұрын
Major Tom strikes again! Super clear and the quality of the visualisations is great, looking forward to the next one!
@TomDevYT
@TomDevYT Жыл бұрын
Thanks Eric!
@ShadedGG
@ShadedGG Жыл бұрын
Great video, I enjoy it and understand what he said. He gave complex information in a simple, understandable way. I love this video and hope to see more
@Jejkobbb
@Jejkobbb Жыл бұрын
Great video! Subscribed.
@nayzal
@nayzal Жыл бұрын
Woah! Great video, cant believe you're not more popular!
@TomDevYT
@TomDevYT Жыл бұрын
Thanks! Things like this always take time to grow, and I'm just at the beginning so I can't expect too much 😅
@nayzal
@nayzal Жыл бұрын
@@TomDevYT Fair enough, can't wait to see where you go next :)
@goodboiadvsp3297
@goodboiadvsp3297 11 ай бұрын
I wonder if you could wace function collapse an entire house by just using building code and some standard design practices
@evali5201
@evali5201 Жыл бұрын
Woooooiiiioooiiioi what a cool video. I love the little sound effects ❤
@TomDevYT
@TomDevYT Жыл бұрын
Me too 😊
@MirceaKitsune
@MirceaKitsune Жыл бұрын
I've done similar experiments with procedural world generation in Godot, and have been thinking about precisely an algorithm like this for generating rooms in a fashion similar to the mazes in SCP Containment Breach. It's weird to realize I've already thought of this exact thing before learning of its official definition just now. At the same time this provides a few details I haven't thought of, like how to go about correctly picking the proper neighbors using a reduction system: I believe my idea was to give each opening on the module piece (window, door, corridor ending, etc) a tag represented as a position / rotation / name then randomly pick another module that has an identical tag connecting to it and position / rotate it accordingly... this would have supported tiles of multiple sizes (powers of 2) unlike a fixed tile size, but that's a much bigger pain to deal with so I'm glad I didn't go there.
@touie7220
@touie7220 11 ай бұрын
giving heavy sabastian vibes and im loving it keep it up
@JakubSK
@JakubSK 8 ай бұрын
Wave Function Collapse is just the name given to something I feel like I came up with on my own when I was a teen lol
@unrealopenworld
@unrealopenworld Жыл бұрын
Well explained! A video of exactly how you did it in the UE would be great. The popping, the noises... the best way to create the meshes. If you were the only one who would explain it like that, your channel would definitely push it.
@unrealopenworld
@unrealopenworld Ай бұрын
@@dotcom4389 I've taken a number of courses, both free and paid. I know the basics. Unfortunately, there wasn't anything like pop-up. Do you have any tips on where to find a tutorial like that?!
@Kayotesden
@Kayotesden 11 ай бұрын
Wonderful video. Subscribed, please more of these!
@albertkim2096
@albertkim2096 2 ай бұрын
Hi Tom, thanks for sharing. I wanted to learn WFC and finally got the whole concept. I'm trying to build something similar to what you did in the video. Can you share the castle models in the video?
@simplygreen5832
@simplygreen5832 Жыл бұрын
Been watching a bunch of WFC vids and this has been really useful but what I'm looking for is how to set more complex constraints on map gen. For instance a thought that comes to mind is to have path start/end (attaches to building/location and regular path) and intersection tile, keep a count on path length and allow a termination or intersection to appear after x path length.
@TomDevYT
@TomDevYT Жыл бұрын
Those are interesting use cases, I've seen Oskar stalberg expand on wave function collapse in his game "Bad North" to add additional checks to ensure the map is playable. I think what you are suggesting could work though there may be other solutions that are better suited to path generation rather than trying to bend the WFC algorithm to fit that particular problem. For instance you could use WFC to generate your map with buildings then do a separate pass to connect them up with paths. In my experience I've found adding too much to one system can add a lot of complexity when it may be better to separate it into more specific pieces.
@simplygreen5832
@simplygreen5832 Жыл бұрын
@@TomDevYT It was more a musing than a functional use case, my initial thought was to pre-pass the map with location foundations and connect them with paths, in effect pre-culling the available tiles per coordinate. As you point out other algorithms are better suited to the purpose. I just thought it might be an interesting experiment to try forward generation with constraints. The Path comes to mind. Edit: Looked into Bad North, saw an article that mentioned Caves of Qud using regions. I'm thinking of taking a similar approach, say using random distribution to tag a forest region and switching tilesets rather than using transition tiles directly. A similar approach can be taken for different locations/tilesets and usefully I can separate roads/paths into their own tileset.
@christian5256
@christian5256 3 ай бұрын
I vote we stop calling this thing wave function collapse and start calling it what it really is, the Sudoku Algorithm 😂
@calebmichael6433
@calebmichael6433 Жыл бұрын
Cute, informative, and inspiring!!!
@lolaswift111
@lolaswift111 Жыл бұрын
hi tom, you've made the best video for people to understand what wfc is
@TomDevYT
@TomDevYT Жыл бұрын
Thanks so much! Your kind words mean a lot :)
@taureanwooley
@taureanwooley 10 ай бұрын
Sadly they've done the same thing with large language models and image generation
@ThomasStewartDev
@ThomasStewartDev Жыл бұрын
Good stuff man
@perftaco
@perftaco Жыл бұрын
Really great quality on the video!
@Aournox
@Aournox 3 ай бұрын
Can you make the assets open source so I can test my project?
@Raccoon0710
@Raccoon0710 6 ай бұрын
could you please share code?
@fukkenPavlo
@fukkenPavlo 3 ай бұрын
Pretty pwease 🥺
@robosklegs
@robosklegs 10 ай бұрын
Great video! ...I'd kinda love to see a video about how you made the graphics for this video😅
@giantneuralnetwork
@giantneuralnetwork 10 ай бұрын
Awesome! Instead of automating what can connect with what perhaps an easier approach is to just build some example structures with the grid pieces manually and have a script keep note of what is allowed to neighbor what. Though downside is you then limit generations to variations of what you’ve manually constructed but I bet some cool results would still pop up.
@Zero-4793
@Zero-4793 11 ай бұрын
That sound effect is from townscaper ;)
@sleepyinterface8819
@sleepyinterface8819 5 ай бұрын
I almost thought this is Tiny Glade
@Raccoon0710
@Raccoon0710 6 ай бұрын
I made simple wfc algorithm, but who can tell, how to make meaningful buildings? I understands that there should be some constrains, but how and what to do?
@Spedley_2142
@Spedley_2142 Жыл бұрын
Is there a bug there which makes all the walls the same height? There seems to be a tile to go up and down on the wall but it is never used.
@TomDevYT
@TomDevYT Жыл бұрын
That tile is just a top cap so it's just placed on the highest level, it's not used to transition between a higher and lower level. Though an implementation like that could certainly be possible!
@fletchthebirb
@fletchthebirb 10 ай бұрын
Question: How do you go about creating pieces of 3D geometry that ensure the socket vertexes match up perfectly? In my mind it seems like it would be really tedious to do.
@Sultschiem
@Sultschiem 6 ай бұрын
How do you prevent them from getting too large/weird looking? Or is this based on the surroundings? e.g. clear constraints to the grid?
@VoxelGarage
@VoxelGarage 3 ай бұрын
The castle model looks nice. Did you build them yourself?
@alextravine9422
@alextravine9422 Ай бұрын
Hello. Are you still messing with wave function collapse in unity nowadays? I have this idea i want to implement that would help with the tedious process of setting rules for neighbors, but im not sure the best way to implement it. Would you like to help? Its fairly straightforward and can be useful to all of us.
@Yes-dp4ie
@Yes-dp4ie Ай бұрын
If u try to predict where a tornado will go depending on its speed and direction you can only predict with a similar level of certainty where it will be detected at a future time. In quantum physics they are tiny spherical vortexes not particles. Moving inside a lattice made of Planck sized elastic tubes/strings. That's how EMR moves, through quamtum wires. When trying to get particle physicists to understand the wave equation is describing a wave detected at single points not a particle, it's like talking to high tech voodoo madmen, they say energy is a particle but has a wave function which isn't actually a wave! it's like particle physicists seeing people in a boat and saying "Oh look those people are moving mysteriously across the water" then we say "no but they're in a boat" to which they say "no there's no boat that's just a boat function that gives the illusion of a boat, we build nuclear bombs, computers to give corporations more control over everything and everyone, we control all physics taught in Universities and peer review journals, we have ai controlling drones killing people in Afghanistan, Pakistan, Yemen and other places with no human 2nd opinion. So trust us we are smarter than you there is no boat, the Universe has no fixed laws at the quantum level, it's not that we can't explain them using the particle model, it's just bizarre and those people move mysteriously across the water in a boat function." The Theory of Everything has been around for 5 years with 2 math proofs to Goldbachs conjecture and proof a 2nd loop is impossible in the Collatz Conjecture but the Big bang particle industry have kept it suppressed time and time again, with hysterical particle physicists unable to bear to look or listen to any evidence that for a split second says they are wrong, who keep taking down this guys channel, and refusing to acknowledge his math proofs it's looking more like more doom every day for humanity, the TOE and experiments to prove it are on channel "Breaking physics (beyond the SMOPP)" most experiments and the 2 math proofs are in 1 minute shorts. There is no collapse there is only a change of focus on the wave, what changes the focus is the real mystery but this channel has experiments to test for what it is.
@acronym5231
@acronym5231 11 ай бұрын
Where can i get those 3d assets? or can you share the unity project?
@TomDevYT
@TomDevYT 11 ай бұрын
It's in unreal engine!
@acronym5231
@acronym5231 11 ай бұрын
@@TomDevYT ah, thanks i'll search for it.
@Sanchayan-d7r
@Sanchayan-d7r 2 ай бұрын
@@acronym5231 Can you sent a link, i also need those assets
@Novallovesgames
@Novallovesgames 11 ай бұрын
two questionss plz, did you do this in python? and did you use unreal engine for this?
@TomDevYT
@TomDevYT 11 ай бұрын
Hey sorry for the slow response - I used python for setting up the data in blender automatically - but the implementation of the algorithm was done inside unreal engine using blueprints.
@toastyPredicament
@toastyPredicament 11 ай бұрын
More ._.
@itryen7632
@itryen7632 10 ай бұрын
Wave function P R O L A P S E OwO
@AMTunLimited
@AMTunLimited 11 ай бұрын
Why spend an hour labelling things by hand when you can spend 8 or 9 hours making a program to do it for you! The pain is real...
@googleyoutubechannel8554
@googleyoutubechannel8554 3 ай бұрын
Yep, it's a bunch of squirrley nonsense that does indeed connect, another WFC implementation.
Superpositions, Sudoku, the Wave Function Collapse algorithm.
14:28
Martin Donald
Рет қаралды 706 М.
It’s all not real
00:15
V.A. show / Магика
Рет қаралды 20 МЛН
UFC 310 : Рахмонов VS Мачадо Гэрри
05:00
Setanta Sports UFC
Рет қаралды 1,2 МЛН
Moebius-style 3D Rendering | Useless Game Dev
8:12
Useless Game Dev
Рет қаралды 857 М.
How Do Game Devs NOT Overscope??
9:04
Green Light Dev
Рет қаралды 9 М.
I Made a Wave Function Collapse Castle Generator in Godot
25:30
RachelfTech
Рет қаралды 81 М.
When Your Game Is Bad But Your Optimisation Is Genius
8:52
Vercidium
Рет қаралды 1,5 МЛН
Dear Game Developers, Stop Messing This Up!
22:19
Jonas Tyroller
Рет қаралды 761 М.
Better Mountain Generators That Aren't Perlin Noise or Erosion
18:09
Josh's Channel
Рет қаралды 430 М.
Giving Personality to Procedural Animations using Math
15:30
t3ssel8r
Рет қаралды 2,6 МЛН