2
$\begingroup$

I made this simple render with some grass growing on some text. I would however like to make the growth start at one side and then spread, preferably with some sort of gradient. As it is now it grows everywhere at the same time.

https://drive.google.com/file/d/13VuFb1lYPRAhrykHtWadldaN3yHeX1OU/view?usp=sharing

So far it is just a scatter of objects that has a size value increase. Can anyone point me in the right direction on how to achieve this effect?

Is it possible to make the size value of the grass increase by the proximity of another hidden object? Or is it possible with Geometry Nodes, with which I have no experience...

$\endgroup$
1
  • 1
    $\begingroup$ PS: You did everything right ;-) Next time it would be handy if you attach your blend file right away, so we can show the solution using your example: blend-exchange.com $\endgroup$
    – quellenform
    Commented Sep 5, 2022 at 12:47

1 Answer 1

6
$\begingroup$

enter image description here

You can solve this as follows:

enter image description here

Here the node Gradient Texture is used as a base for creating the gradual gradient.

  1. First create your letters (however you want to do it) and distribute the points for the instantiation of the objects on them with Distribute Points on Faces.
  2. Then grab the X-positions of the points and scale these values. The node Gradient Texture creates a gradient between $0$ and $1$, and thus you fit the values into this range. Depending on how smooth you want the transition to be, you can make different calculations here.
  3. Then use the current frame and a value for the velocity to create a vector for the node Gradient Texture.
  4. After that you have to use Map Range to bring the obtained values into a range that serves as scaling. Here you can also try different values for To Min and To Max, because this also produces a nice result.
  5. Finally you use Instance on Points, take the Rotation from your previously created points and finally apply the scaling.

Another possibility would be to use an Empty or other object with which you control the scaling of the points:

enter image description here

Here I use the node Geometry Proximity to evaluate the distance to the points.


(Blender 3.1+)

$\endgroup$
2
  • $\begingroup$ I tried and made it work on the file you provided, but I cant seam to recreate when I started a new file. This is regarding the use of Geometry Proximity. What am I doing wrong here, @quellenform ? <img src="https://blend-exchange.com/embedImage.png?bid=79vl8B09" /> $\endgroup$
    – Rosa
    Commented Sep 5, 2022 at 19:52
  • 2
    $\begingroup$ @Rosa You've built this up perfectly right anyway, congratulations! But take a closer look at the node Map Range and the values for To Min and To Max, they should be different of course. $\endgroup$
    – quellenform
    Commented Sep 5, 2022 at 20:09

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .