Procedural Generation in Unity

Ойындар

Join us on this PCG adventure and learn how to create unique and interesting experiences with procedural generation!
We'll discuss the key differences between procedural and random generation, and how to use randomness to your advantage. We'll also demonstrate how to use a parametric approach to generate a procedural room for a fantasy dungeon, and show you how to render it using the "DrawMeshInstanced" API.
Above all, this video aims to intrigue you and to show how you can think and design procedural content.
Also, please note that for demonstration purposes, some error checking and optimization steps have been omitted from the code shown in the video.
Useful resources:
Practical Procedural Generation for Everyone - • Practical Procedural G...
Kate Compton - Let It Grow: Practical Procedural Generation From The Ground Up [PROCJAM 2015] - • Kate Compton - Let It ...
Procedural Building Generation with Grammars - • Procedural Building Ge...
DECORATE 3D DUNGEON - www.archmagerises.com/news/202...
Procedural Buildings, Board To Bits Games -
• Procedural Buildings, ...
Real-Time Monster Evolution -
• Real-Time Monster Evol...
Used asset for the room:
kaylousberg.itch.io/kaykit-du...
Discord:
/ discord
secret: MILESTONEREACHED

Пікірлер: 40

  • @iHeartGameDev
    @iHeartGameDev Жыл бұрын

    What a wonderful introduction to the subject! Loved the video 😍 Thank you both for putting it together!

  • @TNTCProject

    @TNTCProject

    Жыл бұрын

    Thank you so much, Nicky, appreciate it!

  • @n00bslayherttv92
    @n00bslayherttv9211 ай бұрын

    Thank you. the style in which you explain and then pause so we can look and understand is really appreciated thank you subscribed!

  • @LifeCodeGame
    @LifeCodeGame Жыл бұрын

    Wow, this looks like a great way to create some really cool and unique experiences! Can't wait to see what I can come up with!

  • @TNTCProject

    @TNTCProject

    Жыл бұрын

    Yay, share your results!

  • @dreamisover9813
    @dreamisover9813 Жыл бұрын

    Intersting topic and video! I've done some procedural mesh generation in Unity before, but only really light stuff. There are many amazing projects and assets though out there which always impress me

  • @TNTCProject

    @TNTCProject

    Жыл бұрын

    Thank you :) What kind of stuff did you do?

  • @dreamisover9813

    @dreamisover9813

    Жыл бұрын

    @@TNTCProject For example generating a slightly curved track for an endless runner type of game, so it curves a bit in random directions to make it feel a bit more varied. There weren't many rules, each track segment was just a rectangle made out of 2 triangles to have a certain width and length, it followed a path that would often change its angle slightly in a random direction.

  • @ChokeHammer
    @ChokeHammer11 ай бұрын

    This is a brilliant tutorial; really helped motivate me! Thank you! ^.^ One question though, how does one get this to work in URP? It appears drawmeshinstanced does not work with custom shaders in URP, and instead just doesnt render any of the meshes. Any advice? 😅

  • @bigjermini
    @bigjermini9 ай бұрын

    Do you have the full code to share? I'd like to learn more on this and be able to use it. Some things I don't understand is: How are you calling "create walls and render mesh"? Not in update as it would constantly keep trying to build it. as well as some of the variables

  • @user-il9qe5kc7n
    @user-il9qe5kc7n Жыл бұрын

    Amazing! can you explain more about the monster part? and how i can create it

  • @elenagalloni9146
    @elenagalloni9146 Жыл бұрын

    Wow I really loved those dungeons! I'll try on my own, adding some procedural dragons 😏 Also, the horned monster is super cute ❤

  • @TNTCProject

    @TNTCProject

    Жыл бұрын

  • @ha7anali313
    @ha7anali313 Жыл бұрын

    Way Way Better Than KZreadrs Bro Thanks

  • @TNTCProject

    @TNTCProject

    Жыл бұрын

    Thank you!

  • @brendancopot1025
    @brendancopot102511 ай бұрын

    This video really helped me improve the project I'm currently working on, it was very educational and inspired me to research more into instanced meshes. I was wondering how you would handle adding colliders to your walls and other meshes instanced in the scene as I am struggling to find any resources online about this.

  • @jingkai6730

    @jingkai6730

    8 ай бұрын

    it could be already part of the prefab in the possible Objects list

  • @jprice3486

    @jprice3486

    2 ай бұрын

    I'm wondering the same thing also, I am looking into adding compound colliders on top of the meshes using the same m4x4 data, but this method seems like it would be taxing on performance.

  • @amolnk
    @amolnk Жыл бұрын

    Can we use houdini to create such systems? I had created procedural systems using geometry but, for now at least, unity does not let me import the node system from blender. Does houdini work?

  • @1JMGames
    @1JMGames Жыл бұрын

    Amazing video bro! Keep it up! You should make a step by step tutorial on how to do this!

  • @TNTCProject

    @TNTCProject

    Жыл бұрын

    Thank you! Maybe, but I don't want to be tedious

  • @1JMGames

    @1JMGames

    Жыл бұрын

    @@TNTCProject i for one would love it! Good luck on your next video!

  • @ObsessiveGames

    @ObsessiveGames

    Жыл бұрын

    @TNTC I personally really want to create the procedural generation like you did with the walls streching the way you did it. I am going to go through your videos in hopes of achieving this. I will jump in your discord and if there is any more pinpoint videos you can point me to, then I would love that! Thank you for this video, was so great watching it through. Also maybe even if you just have the git repo for how this was achieved as a sample would really be helpfull 😁 Edit: I just tried joining your discord link on your banner, it says the link has expired. Could you update it please :)

  • @WelshGuitarDude
    @WelshGuitarDude8 ай бұрын

    I'm struggling with uvs when it's a curve.. How the heck do you make correct uvs for curved meshes especially if the curve is longer or shorter than default uv length such as a fractional part to the length of the mesh

  • @SketchpunkLabs
    @SketchpunkLabs Жыл бұрын

    What math did you use to warp a mesh on a curve for the roller things? it had a ui with a "curvature' value. Curios how you curved the red rails with the silver rollers

  • @TNTCProject

    @TNTCProject

    Жыл бұрын

    Well, the rollers (cone sections) are instantiated meshes, just like the wall of the room. Each red rail, however, is a single generated mesh. For each roller, we created a point and generated a basic mesh around it. We used the same technique in our procedural ivy video.

  • @user-zs9cl2to3x
    @user-zs9cl2to3x2 ай бұрын

    Great video, however what I entirely don't understand at all is why not to publish a code somewhere in github?

  • @kmsskyquake7330
    @kmsskyquake7330 Жыл бұрын

    HOLY FUCKING SHIT , THIS IS SO GOD DAMN BEAUTIFUL

  • @TNTCProject

    @TNTCProject

    Жыл бұрын

    Thanks :)

  • @aaaalord
    @aaaalord10 ай бұрын

    How can we bake it at runtime ?

  • @therealpeter2267
    @therealpeter2267 Жыл бұрын

    Awesome vid bro, but... who uses camelCase in c# for functions? 😭

  • @TNTCProject

    @TNTCProject

    Жыл бұрын

    Thank you! Hahaha, everyone should, don't let me even start to talk about code convention :P ~ Erik

  • @Raccoon0710
    @Raccoon0710 Жыл бұрын

    Can you please share the code?

  • @Raccoon0710

    @Raccoon0710

    Жыл бұрын

    Actually I have developed wall generation and circular wall generation in those 3 hours :) but I don't understand so far: how did you bend meshes for circular house. Did you subdivide that mesh in blender and bend it in code?

  • @KoopaTheQuick3

    @KoopaTheQuick3

    Жыл бұрын

    @@Raccoon0710 what data structure is used for things like room and wall size?

  • @KoopaTheQuick3

    @KoopaTheQuick3

    Жыл бұрын

    Nevermind. I figured that part out. Now I just need to figure out how to reflect the results properly to get 4 walls instead of 2

  • @KoopaTheQuick3

    @KoopaTheQuick3

    Жыл бұрын

    @@Raccoon0710 I'm completely stuck on the createFloor function. Any help would be greatly appreciated

  • @tvrtkokaurinovic7370

    @tvrtkokaurinovic7370

    9 ай бұрын

    Can you share your code if you succeeded

  • @zes7215
    @zes72157 ай бұрын

    wrg

  • @mathiskunzel8616
    @mathiskunzel8616 Жыл бұрын

    Please give us the source code :)

Келесі