Packing Collection Objects - Geometry Nodes Tutorial

  Рет қаралды 17,054

Erindale

Erindale

Күн бұрын

Пікірлер: 56
@Erindale
@Erindale 2 жыл бұрын
Happy Nodevember folks
@johnsmith56920
@johnsmith56920 6 ай бұрын
Since no one reads those comments of mine, I can let me go freely. @13:01 Here is what I think. If we have 3 objects in the collection the result of the max-min node will give us the 3 “length” of the boxes that I name a,b,c respectively. The “Evaluate at index” node has to outputs: Leading and Trailing. If, for instance, the index is 2 Leading outputs a+b+c and Trailing will give a+b. Mixing them with 0.5 factor will result in (a+b+c+a+b)/2 = (2a+2b+c)/2 = a+b+c/2. i.e. length of the first+length of the second+ half the length of the third, which is exactly what is needed. You can make a diagram with 3 boxes to see how it works. A very elegant solution. Bravo.
@johnsmith56920
@johnsmith56920 6 ай бұрын
The subtract at 16:01 gives us the “length” between the object geometric center and the actual object’s origin. This works because the object’s origin is always at world’s origin (0,0,0). Probably because we are in the Original mode in the “Collection Info” node.
@johnsmith56920
@johnsmith56920 9 ай бұрын
Thanks for that. Very useful in itself and packed with ... useful tips on how to use nodes that I didn't even know existed. For those who like to understand everything, the "MIX VECTOR" node outputs the barycentre of A and B. Namely the output is (1-fac)*A+fac*B.
@UTubeSuhail
@UTubeSuhail 2 жыл бұрын
Thanks for this Erin! Yess definitely would love to learn how to rotate instances as well. If it's not too much trouble.
@Hoothis
@Hoothis 2 жыл бұрын
You're a lifesaver, I am going crazy with my asset library looking like a desktop without grid snap.
@brianhanna347
@brianhanna347 Жыл бұрын
Just what I was looking for. I'm building a sidewalk with wide and narrow collections of blocks that are random Y depth. I was trying to find exactly this info... how to pack them. The trick of using vector multiply by e.g. 0,1,0 instead of separate, combine is great, I like that. I'm starting to get the feel of instances, transfer, capture attributes, but still a little fuzzy. Great demo, keep it up!
@Erindale
@Erindale Жыл бұрын
Thanks! Good luck with your project!
@marcelmarxer962
@marcelmarxer962 2 жыл бұрын
i have a "rotate around custom pivot" for each axis, chainable. super handy if you can't / don't want to turn meshes into instances. took some time to set up the nodes, but it comes in handy in certain cases
@miiw
@miiw Жыл бұрын
That's amazing, thank you for that! I wonder if anyone had any success using the packer on surfaces with a scaterer? Bounding box info could be useful to prevent objects from overlapping.
@CybranM
@CybranM 2 жыл бұрын
These tutorials are soo good, great job!
@Erindale
@Erindale 2 жыл бұрын
Thanks so much!
@vstreet7583
@vstreet7583 Жыл бұрын
Great tutorial. Absolutely fascinating. Thank you! Dg
@Erindale
@Erindale Жыл бұрын
Thank you! Definitely getting into some pretty esoteric stuff here
@chrisjames6424
@chrisjames6424 Жыл бұрын
This is great, was able to make it through with my little brain. Currently trying to figure out how to scale instances along the curve and I'm not able to figure it out. I was told I might need to use sample index in 3.4 to achieve it (I'm still in 3.3).
@Erindale
@Erindale Жыл бұрын
If you're scaling along the spline and you still want to pack them then you're going to need to plug something like a vector math scale into the scale socket of the Instance Packer and use the Index node into the float socket of the scale and then you can set the vector as what the scale is multiplied by for each instance. It can't respond to the curve unfortunately with this setup because the position along the spline needs to move per instance size so if it moves, it's a different spline factor, and then different size, and then it'll move again. That's something that would need to solve rather than calculate directly.
@chrisjames6424
@chrisjames6424 Жыл бұрын
@@Erindale this makes sense thank you. It’s a problem that’s far more difficult than I’m capable of handling at the moment. I could perform a rough descending scale along a single curve, but not multiple curves without a bit more effort(and learning😅)
@TheFeto66
@TheFeto66 9 ай бұрын
Great tutorial and as always really well explained! Such an inspiration. Can you give some tips on how to pack not only in one direction, but in a multiple? For example to pack randomly rotated objects within XY grid.
@Erindale
@Erindale 9 ай бұрын
I’ll have a look into doing it but it’s very not straight forward. UV packing is one of those computational problems that doesn’t have a perfect solution so you have to try and solve for it. Although I wonder if the UV unwrap node would actually solve the problem for you 🤔
@ruslandad365
@ruslandad365 Жыл бұрын
Great Tutorial Thanks!!!
@yannterrer
@yannterrer 9 ай бұрын
Thank you so much Sir, very clear and complete tutorial. Looking forward to show you the result of my research after your lesson;)))
@yannterrer
@yannterrer 9 ай бұрын
trying to do a Beads lace, worked perfectly well in 2D curve but when you move to 3D curve, instances stay horizontal, how to make them following the curve tangent? (Next Tuto maybe)?
@karimsulimanbakheit7294
@karimsulimanbakheit7294 3 ай бұрын
Super good tutorial! I'm learning a lot about geo nodes from you already. I'm having trouble with having the next object in the collection starting at the end of the previous instance. Currently its just starting at the origin of the previous instance instead and I can't figure out why its doing that. I'm sure I am missing something significant but I have no idea what I am doing differently. Any help is appreciated!
@CNG48900
@CNG48900 Жыл бұрын
Great video Erindale! I'm trying to use a slightly modified version of the instance packer node group to scale instances to fit face size, but I can't seem to figure out how to obtain more than just two values to use to get the scaling factor.
@ykchloet
@ykchloet Жыл бұрын
Hey, this is a great tutorial. I've run into a problem though. Even though I have followed the tutorial and done exactly the same things, my instances don't seem to be sitting exactly next to each other like yours. They seem to still be evenly spread out (I have made sure to plug in the collection into the bounding box). I'm not sure what is causing this issue. Also, I am using Blender 3.5 (Not sure if there's a lot of difference?)
@Erindale
@Erindale Жыл бұрын
Hm can you email me your file and I'll take a look 👍
@ykchloet
@ykchloet Жыл бұрын
@@Erindale Will do!
@JohnWesleyDavison
@JohnWesleyDavison 2 жыл бұрын
Love this, but I'm having some trouble following the cursor. Could you make it larger?
@Erindale
@Erindale 2 жыл бұрын
I can literally make it double the size 😂
@jeffreyspinner5437
@jeffreyspinner5437 2 жыл бұрын
I take his videos into Davinci, add a power window and track his cursor and reduce it 2x and it works for me... the render time isn't so bad. Makes the nodes look weird at times as the pointer rolls over things though... but I suffer for my Art, like everyone should. 😶‍🌫
@monkmichel9477
@monkmichel9477 Жыл бұрын
I was trying to make a geo node image viewer/arranger and ran into the problem of getting the width/height of every image using a bounding box without manually indexing every image separately, creating a mess inside geo nodes. And what do you know, Erindale has the solution once again, thx man!
@zeloshh
@zeloshh 11 ай бұрын
Many thanks for this tutorial, is there a way to get the number of the points before setting the position and deleting the geometry based on the compare selection? Just thinking performance wise... How I can get the number of the instances/points at given length before setting the number of the points? I am still fresh in geo nodes and cannot find the way so far...
@Erindale
@Erindale 11 ай бұрын
You could set the position after the delete. Ultimately it’s the accumulate length result being compared against the curve length that is setting the number, so just delete and then domain size for the count. You can then do all of the rest of your position etc afterwards.
@zeloshh
@zeloshh 11 ай бұрын
Thanks, setting the position after deleting helped, now there is no timing/performance impact. When I have 99 or 999999 points at the start, the timing is the same.
@marchjohnmoody
@marchjohnmoody Ай бұрын
I can't figure out how to add the temporary viewer to the Group Output as shown at 2:58. I press Shipt + Alt + LMB and get a "Viewer"that is a separate node.
@Erindale
@Erindale Ай бұрын
It’s the same functionality it’s just that the viewer is more adaptable
@AxonMediaSeattle
@AxonMediaSeattle Ай бұрын
I followed this tutorial very closely, but with primitive objects. Oddly, I'm still getting object overlap when toruses (torsi?) are involved, but I have no idea why.
@Erindale
@Erindale Ай бұрын
That’s definitely an odd one. Is it specifically toruses… tori that are causing the issue? Does it only affect while a primitive? Do cylinders have the same issue?
@AxonMediaSeattle
@AxonMediaSeattle Ай бұрын
@@Erindale It's mostly toruses or any object next to a torus. I'm going to move on to the custom bounding boxes tutorial and hope that fixes it. BTW, love your Geometry Nodes courses on Canopy! The pacing and thorough explanations are just what my programming averse brain needs. I finished the basic one and am moving to the advanced course.
@AdnanRobyn
@AdnanRobyn 5 ай бұрын
"Field at Index" has been changed to "Evaluate at Index".
@johnsmith56920
@johnsmith56920 6 ай бұрын
@14:42 Why is it that we use the “Accumulate Field” on the point domain and not on the instance domain? Is it because the input is a vector (therefore very much a point) or is it because the end of the line is plugged into a “Set position” referring to points? On the whole, I don’t think you need to explain the maths (we can find them easily on the internet) but explain a bit more of the Blender innards (after all that’s why we are watching a Blender tutorial) OK, anyway, thanks again.
@Erindale
@Erindale 6 ай бұрын
Because the accumulation needs to count up per point, not per instance
@johnsmith56920
@johnsmith56920 6 ай бұрын
@@Erindale Ok, but why does it works? If I use the instance domain I get 0,0,0. Do we ALWAYS need to plug the accumulate field with a point domain?
@user-ow1bn6qv8q
@user-ow1bn6qv8q Жыл бұрын
Can this be generalized to 3D volumes?
@Erindale
@Erindale Жыл бұрын
Not really. There are other algorithms you'd want to implement to do that
@shmuelisrl
@shmuelisrl 2 жыл бұрын
10:59 I think that the attributes only don't come through when you use the pick instances method
@Erindale
@Erindale 2 жыл бұрын
This is true yeah but it does mean you need this long winded workaround when you need instances which is just off the time for my work 😩
@PCgmesforever
@PCgmesforever Жыл бұрын
what?! 20:40 indeces can be negative?
@Erindale
@Erindale Жыл бұрын
Default indices shouldn't be but you might have remapped them for some other operation. In theory I could have set that default value to -1 and most of the time that would be fine but you could break something sometimes. Negative indices work just like in python so they'll cycle through the options in reverse
@ajuelee
@ajuelee Жыл бұрын
您好,您课程中的隐藏式字幕可以翻译成其他语言吗,因为我的母语不是英语
@Erindale
@Erindale Жыл бұрын
There are captions in simplified Chinese. They are automatic translations so I can't guarantee the language is perfect but you should be able to follow along with the video.
@nurmi90
@nurmi90 2 жыл бұрын
Took me 4 hours to go through
@Erindale
@Erindale 2 жыл бұрын
Well done making it through 😁
@costavojik
@costavojik 2 жыл бұрын
6:12, the node in 3.4 doesn't exist 💀
@Erindale
@Erindale 2 жыл бұрын
Yup you will have the one at 6:36
Shortest Path Nodes - Geometry Nodes Tutorial
7:49
Erindale
Рет қаралды 33 М.
Select What You Want in Geometry Nodes - Blender Tutorial
1:14:20
Players vs Pitch 🤯
00:26
LE FOOT EN VIDÉO
Рет қаралды 125 МЛН
Perfect Pitch Challenge? Easy! 🎤😎| Free Fire Official
00:13
Garena Free Fire Global
Рет қаралды 84 МЛН
Motorbike Smashes Into Porsche! 😱
00:15
Caters Clips
Рет қаралды 23 МЛН
Миллионер | 3 - серия
36:09
Million Show
Рет қаралды 724 М.
Loft Curves Properly - Geometry Nodes in Blender 3.6
54:21
Erindale
Рет қаралды 26 М.
Blender 3.3 - Procedural Dungeons with Geometry Nodes Tutorial
30:25
How I learned Unity without following tutorials (Developing 1)
18:11
Game Maker's Toolkit
Рет қаралды 2 МЛН
Curves - Geometry Nodes for Beginners
47:40
Joey Carlino
Рет қаралды 123 М.
This node is just INCREDIBLE - Blender
29:04
Stray Creations
Рет қаралды 67 М.
Filling Objects is Easy Now (Blender Tutorial)
12:42
Ducky 3D
Рет қаралды 76 М.
Hexagon World with Geometry Nodes Fields - Blender 3.0 Tutorial
49:24
An introduction to Raymarching
34:03
kishimisu
Рет қаралды 152 М.
3 Hours vs. 3 Years of Blender
17:44
Isto Inc.
Рет қаралды 5 МЛН
Players vs Pitch 🤯
00:26
LE FOOT EN VIDÉO
Рет қаралды 125 МЛН