Woah, This is awesome!
I Would love a plugin!
Great Idea! This would be a great and needed plugin!
Did you create the plugin? Because i would use it A TON in my games. Because my games have a ton of grass which i would love to be interactive.
He did, just not released yet.
Yes, i have talked with him. He said that the plugin is probably releasing in Febuary.
Looks amazing! The grass does seem a bit bent over to much. I suggest adding grass of all sizes and making it less bent to add more of a realistic look.
I think that we should be able to add custom textures or add PBR textures to the grass, either way, change the mesh if thatās possible. Also, settings for the grass, how it will bend, etc.
Would this be or is it already open source?
I think they were going to make a plug-in, but it would be totally up to them.
looks beautiful, as @AirWward said, it remembers me of some games, that grass remembered me of The Last Of Us: Part 2. Nice job
Any update on whether you will release this? Rlly need smth like this for a game
Well done! I would jump on this plugin in a heartbeat
Dang, touching grass to a whole new level. Has this been released yet?
Now I want make something like this myselfā¦ (I will try make it!)
Question as a fellow dev! How did you manage the touch connection? I know .touched is a poor solution to detection, so Iām curious as to how you went about determining when the player is touching the individual blades of grass?
I think it will depend on how you want to handle this and how many blades of grass you had.
For fewer blades
I would use math and calculate the magnitude distance from each grass blade. This would also allow you to create more or less bend the closer you get.
I had a stab at doing this with just blocks, and achieved the following:
I did this by:
- This loops through the grass in a grassfolder (which took 0.007927700004074723 seconds for 2048 parts) to store the original CFrame as an attribute.
- Connecting a runservice which then checks for a desired interval (so it only runs the code in it once every 0.1 seconds - this is better than using a while loop with task.wait()).
- Looping through all the parts in the grass folder.
- In each loop, it then checks the magnitude between the player and the part, calculates a new CFrame depending whether you are within the set distance or not.
It was a total 41 lines of code.
For unlimited blades
For very high numbers, you might want to use the touched event instead. This wouldnāt allow you to control the bend beyond just moving when you touch it (rather than bending as you get close).
However, an alternative would be to group grass togther in models, and do the same as the first option, but first check the distance between player and model, and only run the checks on individual blades if the whole group is within a certain distance, which would optimise it for performance.
Given Iāve spent some time work this all out I may implement this in my own game
And hereās a version which uses a plane meshpart with a surface appearance on (grouped in models so that only close groups of grass is calculated).
Iāve mixed it in with roblox terrain and grass so you can see how it might look if you used in conjunction.
TSYM bro gonna have to put the work in for this.
Just wanted to say that I am still amazed by this
I tried to do it myself for weeks but I failed (I build but 0 scripting knowledge, had to try )
Absolutely revolutionary. I need this.