Homework submission-week 1-grass
@theluthier
Tried all sorts of methods to create the grass, but after all this testing, I looked more closely at the artwork and I interpret it as just colors, with a few grassblades at some edges and where there is something in the grass (like rocks, fence, cart,...), which makes sense, because you wouldn't be able to easily reach those parts to mow the grass there...
So my submission is not very impressive yet and the colors are just placeholders, this is block out phase after all:
@jlampel rrstich @theluthier this is not a homework submission; I have a lot of trouble finding a solution.
I have re-visited the grass card approach, but could not get it to work on a large scale (50m radius) and even on a small scale, the edges (where the grass meets the road for instance) look horrible and when looked at from above that is also no a success. I tried bending the grass cards to improve the top view, but was still not satisfied.
After all my experimentation with different methods (sorry, but in my frustration I forgot to take screenshots of the failed attempts), I watched a lot of tutorials on game grass to see if they could give me ideas on how to do this, but I found that the only way I can make this work (maybe there is another way, but I haven't found it yet), is something like this:
Different angle:
I have been looking at real grass a lot lately and discovered that it has a really high translucency (maybe 90% or more) (thank you Jonathan, before you told me, I didn't know what the Translucent Shader did, everybody just said; grass needs a bit of Translucency, so we mix in a Translucent Shader...I thought it was something like a noisy Transparent...), but here I can't set it that high, because it would make the contrast between blades of grass and painted grass too obvious:
Thereby ruining the effect.
The greatest problem is, that we get an enormous style difference with all the other (especially nature-) assets:
Also, we shall need a pretty large Texture Map for the 'Foreground' grass...4K would yield a Texel 'size' of more than one cm.
And for Weight Painting to be anywhere near accurate, we'd need a lot of Vertices, unless we use Blender 2.93 Beta, where we can use an Image Texture for the distribution of the grass....
There you have it ;)
I love a challenge, but this appears harder than I had anticipated!
spikeyxxx I'm FINALLY digging into the grass right now. Your latest WIP is exactly what I was looking for in terms of camera culling. However I think my idea of affecting the scale was wrong. Can you instead tell the camera's field of view to affect the visibility of the grass cones?
Currently the behavior is laggy and I wonder if it's because all grass cones are still being calculated where scaled to 0 or normal size.
@theluthier I am using weight painting to control the Density of the Grass (not the Scale) here:
In the Node before (left of) that, I 'multiply' that with where grass should be (e.g.: not inside the house) to further reduce the amount of Instances, so that, if I remove the Scaling, we get:
As far as I can tell, the lagging is a combination of the Dynamic Painting, the amount of Instances and the Attribute Mix Node, but I am not sure which factor is most important....
Anyway, it would still need a lot more grass to fill up the Camera FOV, so I'm not sure if this will be useful...
This may not directly help you in any way, but it is a cool idea and just maybe it will inspire you. Good luck with the grass!! Edit: not sure I got the time stamp right... start at 48:30
pprocyonlotor thanks! Very interesting...I had actually tried something like the 'shell-method' (stacking planes) myself already, but it doesn't work unless you have some kind of parallax...
The other technique shown, I am not sure yet what they are doing exactly...I'll see if can find that paper he mentions..
Not really applicable anymore, Kent has already managed to make a start of great grass coverage!
But still fun to watch this :)
spikeyxxx It would be great if the Blender developers made the "From Instancer" checkbox (in conjunction with "UV Coordinates") also working in EEVEE as we know it from Cycles 🙂!
@jlampel Yeah. He’s great! Unfortunately your binge will be short as he is slow about making content. But it’s hard to complain about the quality. Also check out his website noclip.
pprocyonlotor What a golden nugget you dug up! If you can believe it, I actually considered this technique for a minute. The first time I saw it was Shadow of the Colossus for PS2:
I think it's a brilliant technique but decided it was a bit to lo-fi for this project.
spikeyxxx Of course the grass proved to be a difficult and frustrating asset to create. I thought for sure we would need to come up with a clever solution with cards and camera culling and whatever else. But ultimately I think an old-fashioned particle hair system is going to work best.
I'm afraid I'm going to give up on the hope to grow grass over the entirety of the terrain. Instead I'm just growing it closest to the house; the "FG area" as we've dubbed it. From there I will fade out the density into no grass. If I work the shader right it will barely be perceptible unless a viewer is looking for lady bugs in the extreme corners of the terrain.
As expected, you put some amazing work into exploration of grass techniques. Your efforts are appreciated and will not go un-credited. Thanks for contributing and leading your team! It's always a pleasure working with you 🤝
Thank you Kent, I have been trying so many tricks and nothing seemed to work...was starting to feel desperate.
But glady you managed to get it to work...and with sooo little Hair Particles even.... an amazing result! Just the sort of look I was trying to get :)
There is also a problem with the edges of the grass (where the sides of the path meet the grass).