Hello,
I am trying to evaluate a good way to do grass with the rhino/octane combination.
I succeeded in creating 1m X 1m grass panels which I created with the help of the harmonize script
to add jitter and randomness (scale + / - 20%, random rotate 360 deg, xy move +- 0.01m) to a 6400 (800x800) array of grass elements each consisting of 3 single leaves in a polar array of 120 degrees .
The geometry is than saved as an object file and reassigned to a simple block, which is then arrayed as necessary.
However there are different disadvantages to this approach:
1. The 1X1 grass panels cannot be placed precisely, structures under 1m are not possible.
2. When placed on large areas some kind of tiling can occur
3. for 3 dimensional structures this does not work.
So right now I think the best approach would be as follows.
1. create a surface the grass will be applied to
2. distribute Points to the surface by defining a density / sm (e.g. 6400pt / square meter)
3. replace the points by an user defined object or a block
4. apply random transformations to the objects (scale,rotate,displacement)
5. transform the objects to a csv file (separators have to be “real” commas not just “space” )
6. select a grass element (3polar arranged grass leaves) block it and apply the csv file to it.
Right now there are several tools to (partly) archive these functions (harmonize script, csv export scripts, apply points to surface scripts...) however the hole process is quite cumbersome and during some parts very slow. Since my knowledge of grasshopper and other scripting methods is very limited I would like to ask the community if someone can do a script which combines all or at least some parts of the process. Maybe I would be a better approach to create the csv file with the transformations directly from the information of the surface topology?
Any feedback would be really appreciated
best regards
Andreas
grass distribution
Moderator: face_off
... here are a few links:
the great harmonize plugin by Thomas Anagnostou
http://www.rayflectar.com/Rhino/RhinoSc ... allery.htm
very interesting plugin from Cam Newham
http://www.camnewnham.com/rhinogrow-0-25/ (csv export to the rhino octane plugin does not seem to work, point distribution seems to give unexpected results with my tests...)
there are a few csv export scripts floating around here but I cannot find them right now...
maybe someone can find them...
some grasshopper stuff which i cannot get to work with my grasshopper version:
http://www.grasshopper3d.com/forum/topi ... rass-proxy
and here:
http://render.otoy.com/forum/viewtopic. ... er#p103111
best
Andy
the great harmonize plugin by Thomas Anagnostou
http://www.rayflectar.com/Rhino/RhinoSc ... allery.htm
very interesting plugin from Cam Newham
http://www.camnewnham.com/rhinogrow-0-25/ (csv export to the rhino octane plugin does not seem to work, point distribution seems to give unexpected results with my tests...)
there are a few csv export scripts floating around here but I cannot find them right now...
maybe someone can find them...
some grasshopper stuff which i cannot get to work with my grasshopper version:
http://www.grasshopper3d.com/forum/topi ... rass-proxy
and here:
http://render.otoy.com/forum/viewtopic. ... er#p103111
best
Andy
Architectural Rendering Services
1 x 4090 GTX, 1 x 3090 GTX
http://www.v-cube.de
1 x 4090 GTX, 1 x 3090 GTX
http://www.v-cube.de
Hi Andy,
I will update RhinoGrow shortly - which is intended to follow the workflow you mentioned
I'll post here again soon once it's updated, should be sometime this week.
Newske
I will update RhinoGrow shortly - which is intended to follow the workflow you mentioned
I would note, though, that for grass the recommended way to do it is to create three or four clusters, which might have 50-100 blades each, and scatter those. With proper rotation and scaling you won't be able to tell them apart, and you'll save a great deal of trouble.1. create a surface the grass will be applied to
2. distribute Points to the surface by defining a density / sm (e.g. 6400pt / square meter)
3. replace the points by an user defined object or a block
4. apply random transformations to the objects (scale,rotate,displacement)
5. transform the objects to a csv file (separators have to be “real” commas not just “space” )
6. select a grass element (3polar arranged grass leaves) block it and apply the csv file to it.
I'll post here again soon once it's updated, should be sometime this week.
Newske
Octane for Rhino | Windows 8.1 x64 | i7-3820 OC | GTX970 4GB OC & GTX 560 Ti 1GB OC | 32GB DDR3
Hi Andy,
I have updated the content here: http://www.camnewnham.com/rhinogrow/
Let me know how that works for you.
Newske
I have updated the content here: http://www.camnewnham.com/rhinogrow/
Let me know how that works for you.
Newske
Octane for Rhino | Windows 8.1 x64 | i7-3820 OC | GTX970 4GB OC & GTX 560 Ti 1GB OC | 32GB DDR3
Thank you Newske, I will test it immediately when I am done with my daily dutiesnewske wrote:Hi Andy,
I have updated the content here: http://www.camnewnham.com/rhinogrow/
Let me know how that works for you.
Newske

best
Andy
Architectural Rendering Services
1 x 4090 GTX, 1 x 3090 GTX
http://www.v-cube.de
1 x 4090 GTX, 1 x 3090 GTX
http://www.v-cube.de
I am not able to create my 1x1 floor with grass, with rhinogrow.
Can anyone create a mini tutorial to understand how it works?
thank you very much
Can anyone create a mini tutorial to understand how it works?
thank you very much
SORRY, MY ENGLISH IS BAD!
2 Xeon quad core E5440_8gb Ram_Nvidia GeForce 2GTX 780ti 3Gb/Nvidia Quadro K2000_Win10 64bit_Octane 3.02_Rhinoceros3D
2 Xeon quad core E5440_8gb Ram_Nvidia GeForce 2GTX 780ti 3Gb/Nvidia Quadro K2000_Win10 64bit_Octane 3.02_Rhinoceros3D
Daniel - What's going wrong?
If you're quite literally trying to just make a 1x1 floor of grass (and you're modelling in metres) you'll want to set PPU as something like 5,000 or more.
So, you'd make a 1 unit x 1 unit surface (or mesh)
Click on it, run the script and set ppu to 5,000 or so (as in, there'd be 5000 blades of grass in that region).
Regards,
Newske
If you're quite literally trying to just make a 1x1 floor of grass (and you're modelling in metres) you'll want to set PPU as something like 5,000 or more.
So, you'd make a 1 unit x 1 unit surface (or mesh)
Click on it, run the script and set ppu to 5,000 or so (as in, there'd be 5000 blades of grass in that region).
Regards,
Newske
Octane for Rhino | Windows 8.1 x64 | i7-3820 OC | GTX970 4GB OC & GTX 560 Ti 1GB OC | 32GB DDR3
I tried, but I just get the points, as instances of the block
Now try again and I'll show you the result
Now try again and I'll show you the result
SORRY, MY ENGLISH IS BAD!
2 Xeon quad core E5440_8gb Ram_Nvidia GeForce 2GTX 780ti 3Gb/Nvidia Quadro K2000_Win10 64bit_Octane 3.02_Rhinoceros3D
2 Xeon quad core E5440_8gb Ram_Nvidia GeForce 2GTX 780ti 3Gb/Nvidia Quadro K2000_Win10 64bit_Octane 3.02_Rhinoceros3D