Wasp for Grasshopper

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 ธ.ค. 2024
  • You can support Wasp on Patreon: / wasp_toolkit
    Join the Wasp Discord community: / discord
    Download Wasp at: www.food4rhino...
    Wasp Newsletter: mailchi.mp/e0c...
    Source Code: github.com/ar0...
    ---
    In this tutorial, we will explore one more method to generate aggregation rules, by using rule types and custom rules grammars. These will allow us to have a finer control over the generation of rules, ensuring coherence between the assembly logic of different parts. All this will be based on an aggregation composed of architectural elements, loosely inspired by Le Corbusier's Maison Domino construction system.
    Download the tutorial files here: bit.ly/wasp101...

ความคิดเห็น • 56

  • @soubhij
    @soubhij 4 ปีที่แล้ว +4

    Are you going to cover field driven aggregations? And is it possible that small parts aggregate to form specific architectural elements like slabs, walls or columns? Thanks a lot for these tutorials!

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว +4

      Hi! Yes, I will cover field aggregation soon. If I keep to my plan, I think I will publish something about it in couple of weeks.
      About forming architectural elements with smaller parts, in the experimental tab of Wasp you find some components for creating "Hierarchical Parts" (that is, parts made of parts). It is not yet 100% bug-free, but it should allow you to do some experiments with it. You can see how it works in the example files here: github.com/ar0551/Wasp/tree/master/ExampleFiles/5.Experimental

    • @soubhij
      @soubhij 4 ปีที่แล้ว

      @@TempAutonArch Thank you for your reply! Are you planning to do a tutorial on this specific example (namely, Hierarchical Parts)?

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว +1

      I will do a tutorial on hierarchical parts, but it will take a while, because it is a quite advanced feature, and it is also not 100% functional. But I will do it at some point ;)

  • @theresa6895
    @theresa6895 ปีที่แล้ว

    Thank you for the turtorial. What rule makes one face of object attach to the face constrain?

  • @Cerevian123
    @Cerevian123 4 ปีที่แล้ว +3

    Hi, thanks for this tutorial, very clear.
    Is there any way to prioritize certain parts, to control the ratio between them?
    For example, 10 parts A per 1 part B.

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว +2

      Hi, unfortunately it is not possible in this version of Wasp, but it will be in the next version.
      For now, what you can do to hack it somehow is to repeat the rules creating the part you want more multiple time in the rules list, so that they will have a higher probability of being selected. Not the most elegant solution, but it works.

    • @mrkjsmt
      @mrkjsmt ปีที่แล้ว

      @@TempAutonArch Dear Andrea, first: big compliments for the versatility and creative possibilities of Wasp and the crystal clear tutorials you provide with it!
      Is there any update regarding Alexander's question above? Thanks!

    • @TempAutonArch
      @TempAutonArch  ปีที่แล้ว +1

      Hi, it is possible now. You can find a tutorial on the channel on how to use the Part Catalog, a new component that allows control over different Parts counts.

  • @silvanah03
    @silvanah03 4 ปีที่แล้ว

    Very helpful and super clear :) Thank you!

  • @lincinaedwin
    @lincinaedwin 4 ปีที่แล้ว

    Thankyou for this wonderful plugin, loving ur tutorials.
    I had a doubt as to how i can assign different colors to each geometry like u have done.
    Thanks again

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว +1

      You can see how it is done in the attached file in the description. Just filter the parts by name, and then assign unique colors to each.

    • @lincinaedwin
      @lincinaedwin 4 ปีที่แล้ว +1

      @@TempAutonArch thankyou, it worked

  • @justalex961
    @justalex961 4 ปีที่แล้ว +1

    dude awesome work1 thanks for this plugin

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว +1

      You are welcome ;)

    • @justalex961
      @justalex961 4 ปีที่แล้ว

      @@TempAutonArch i’ll send u the result

    • @justalex961
      @justalex961 4 ปีที่แล้ว

      @@TempAutonArch oooo now there’s pressure to deliver ;P

  • @brewettl8040
    @brewettl8040 4 ปีที่แล้ว

    Hello, thank you for this plugin and the tutorials!
    But I was wondering: is there is a way to exclude specific connections for the custom grammar connections (in the same way that we allow specific connections)?

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว

      Uhm, not sure if I understand. I guess it is just a matter of how you organize your connection types and grammars. If a connection is not included in a grammar (its type is not called in any statement), it will not be used. Maybe if you have a more concrete example I can be more helpful.

    • @brewettl8040
      @brewettl8040 4 ปีที่แล้ว

      @@TempAutonArch Thank you for the reply! For example: say I have a set of parts all with the same dimensions. even if I use the grammar rules to allow certain connections, some connections that I have not included will still occur because of how they all share the same dimensions (they do not completely collide, but share edges). As a further example, say I have different three square tiles as parts - red, blue and green. I allow connections between red-blue, blue-green, and green-green. If four tiles were generated in a simple 2x2 square, I may get the configuration (reading clockwise or anti-clockwise) of red, blue, green, green. And so here I have green next to red even though I did not include it in the rules. Does that explain it more clearly? Thank you again!

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว +1

      @@brewettl8040 Yes, now I get it. In general, there is no direct way to check for this, mainly because during aggregation I do not check if any of these overlaps happen (as it would reduce performance quite a bit checking overlaps for all already placed connections). If you want to make sure that certain faces stay always free, you could try to achieve that by adding an extra collider on those faces, but then nothing would be allowed to connect there.
      I am considering to add such check as optional in a further Wasp version, but I did not totally wrap my head around it. I keep you posted if I come up with a way of doing it.

  • @michaelmarch9836
    @michaelmarch9836 3 ปีที่แล้ว

    great work! I was wondering if there is way of controlling the number of (platforms or the number of stairs) ? cheers

    • @TempAutonArch
      @TempAutonArch  3 ปีที่แล้ว

      Hi! Yes, there is the possibility of controlling the amounts of different part types using the Part Catalog component. You need to make sure you updated to the latest Wasp version (currently 0.5.004), and then you can check this video for instructions: th-cam.com/video/rn2Obdd8T6E/w-d-xo.html
      There is also an example file in the latest Wasp release showing how to use it.
      Let me know if anything is not clear.

    • @michaelmarch9836
      @michaelmarch9836 3 ปีที่แล้ว

      @@TempAutonArch thanks for replying.
      i have managed to add the wasps parts catalog to the script but i have an uncontrollable outcome so not sure how to gain control. cheers.

    • @TempAutonArch
      @TempAutonArch  3 ปีที่แล้ว

      Hi Michael, what do you mean by uncontrollable?
      If you mean that you cannot control the final shape of the aggregation, this can be done in two ways:
      - Field-driven aggregations: th-cam.com/video/e5K4c_BOt8c/w-d-xo.html (and following videos)
      - Mesh constraints: th-cam.com/video/Wk9gKPfX4hk/w-d-xo.html

    • @michaelmarch9836
      @michaelmarch9836 3 ปีที่แล้ว +1

      @@TempAutonArch
      Hi,
      the problem that i am having is that the wasp parts catalogue doesn't work. the only thing that affects the number of total geometries is the number of parts aggregate in the stochastic aggregation.

    • @TempAutonArch
      @TempAutonArch  3 ปีที่แล้ว

      Uhm, that sounds strange. Could you send me the file, either through the Discord channel, or by email at ghwasp@gmail.com?
      I will take a look as soon as I have a moment.

  • @kubrataskiran1948
    @kubrataskiran1948 3 ปีที่แล้ว

    Hi, great tutorial! is there a way to set a boundary so the growth happens within a tall cuboid? I would like to achieve a a tall form without extending too much horizontally

    • @TempAutonArch
      @TempAutonArch  3 ปีที่แล้ว

      Yes, you can see how to do that in this video: th-cam.com/video/Wk9gKPfX4hk/w-d-xo.html

  • @tarakeshchandran6474
    @tarakeshchandran6474 9 หลายเดือนก่อน

    How can I control the mesh setting conversion before creating an aggregation?
    My problem is that the output meshes have too many faces and i want to simplify them. If i do the mesh conversion manually before connecting to the basic part, still my output aggregation gives many complex faced meshes (multiple triangled faces even for a simple cube). Is there any solution for this?? Thanks.

    • @TempAutonArch
      @TempAutonArch  4 หลายเดือนก่อน

      Yes, you need to do the mesh conversion before inputting your geometries in Wasp. You can change the meshing settings in the MeshBrep component to have meshes with lower complexity.
      If that is still not fixing your issue, the best solution is to model a simplified geometry which represent your parts, use that as the Part Geometry, as attached the detailed geometry to the part as an Attribute.

  • @HARIKRISHNANKHHARI
    @HARIKRISHNANKHHARI 9 หลายเดือนก่อน

    When i add the rules the aggravation says "no rules provided" 😢

    • @TempAutonArch
      @TempAutonArch  4 หลายเดือนก่อน

      This can be caused by a lot of things. Please join the Wasp Discord channel and share your files there.

  • @Chillgaming_1
    @Chillgaming_1 4 ปีที่แล้ว

    that was beautiful explanation ..............is this called discrete architecture??

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว +1

      You could call it like that, I guess.. I believe Wasp has several applications which are not necessarily bound to current debate about "discrete architecture", but you could definitely apply it to such topics.

  • @gracefulpurple
    @gracefulpurple 4 ปีที่แล้ว

    Hi I tried the script however when I add the staircase geometry it says that it cannot compute a valid collider geometry. Could you please help me with this error

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว

      This means that your geometry had some issues, or was not a fully closed one. What you can do is to create the collider manually, by offsetting the base geometry inwards in Rhino, and then provide that as collider geometry in the COLL input. If this is not working, you can send me the file either in the discord chat, or at ghwasp@gmail.com

  • @458yash
    @458yash 4 ปีที่แล้ว

    Hey, thanks for uploading these. while making a connection for steps I get '1. No valid plane provided for connection 1" error in Wasp_Connection From Direction operator. why?

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว

      Hi, normally this error comes because the component is not able to calculate a valid plane. This is usually due to one of these issues:
      - the center point of the connection is not on the surface of the part, but slightly off.
      - the center point is ok an edge. This often causes problems as the component is unable to compute the plane normal correctly.
      - You might have assigned connection centers and Up directions in the wrong order.
      Try checking if this helps, if you still cannot solve it, you can send me the file via email at ghwasp (at) gmail.com

    • @458yash
      @458yash 4 ปีที่แล้ว

      @@TempAutonArch hey thanks for a quick reply. I will check and get back to you. thanks

    • @jeromeberesford7486
      @jeromeberesford7486 4 ปีที่แล้ว

      @@TempAutonArch Amazing work! So any connection point MUST be on the surface of the part? Is there a way to create a connection inside a part, such as offset inwards so parts deliberately overlap? Thanks in advance.

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว

      The connections must be on the surface of the part only if you use the Connection From Direction component. You can create connections anywhere else not on the surface by using the Connection from Plane component. In that case, the connection can be anywhere.
      However, if you want to allow parts to overlap, you will also need to provide a custom collider in the COLL input, otherwise Wasp's internal collision detection algorithm will not allow the placement of the parts.
      Another solution would be to create a "normal" part with connections on the surface, and then attach an Attribute to it with the overlapping geometry. This would avoid you needing to create connections and colliders correctly, as this might be a bit tricky. You can see how to use Attributes here: th-cam.com/video/AVI4uhPKrMI/w-d-xo.html

    • @jeromeberesford7486
      @jeromeberesford7486 4 ปีที่แล้ว

      @@TempAutonArch Amazing! Thanks for the reply!

  • @nicholasyohangeorge414
    @nicholasyohangeorge414 3 ปีที่แล้ว

    how do we restrict the form inside a 3 dimensional boundary ?

    • @TempAutonArch
      @TempAutonArch  3 ปีที่แล้ว

      th-cam.com/video/Wk9gKPfX4hk/w-d-xo.html

  • @fredlmr4730
    @fredlmr4730 3 ปีที่แล้ว

    perfect!

  • @pandelik3450
    @pandelik3450 4 ปีที่แล้ว

    Could this kind of design be considered "procedural"?

    • @TempAutonArch
      @TempAutonArch  4 ปีที่แล้ว

      If by procedural you mean a geometry generated by the execution of a pre-defined set of rules, I guess you could call it that way.