Some people may not know how to apply this effect to the player object, so I made a short video to show you how to do it. kzbin.info/www/bejne/i2jTeWiifrWNhbc
@Tukyo Жыл бұрын
Thank you for sharing the channel that inspired this! You are seriously one of the best channels on here, your shit looks amazing and I really appreciate how open you are to share all this, in such a clear way.
@BuyMyBeard11 ай бұрын
I gotta say, using an invisible particle system for this is GENIUS, I was trying to find a way to make a ripple system mathematically, and had trouble when I noticed compute shader delay was insane. I submitted a PR to your repo to improve the ripple effect because I noticed it was pretty pixelated. Make sure to check it out!
@paro45611 ай бұрын
I've been experimenting with using compute shaders to create ripples recently, and I think the results are quite good. Also, thanks for helping me fix the pixelated normal map issue.
@BuyMyBeard11 ай бұрын
@@paro456 how have you done it? Mine involved sending a buffer containing ripple origins and timestamp, and iterating over the buffer to calculate ripples on a texture and blending them onto a heightmap. I think what made it not work was the delay to dispatch the compute shader, making it not update every frame. I've also thought of a really cool idea for large planes of water (tiled or not tiled). Instead of having a static camera over the water, having a dynamic camera following the player and then projecting that on the plane at the position of the player. There are some cons like not sampling the entire water for other ripple sources, but I was planning on trying this implementation for my own water shader
@paro45611 ай бұрын
@@BuyMyBeard I'm exploring ways to achieve ripple effects without using a camera but by object positions XZ. A friend mentioned that adding another camera might increase the computational load on the game scene. By the way, the compute shader for the ripple effect that I created is mainly based on this tutorial. kzbin.info/www/bejne/anSxkpdri56qepo
@BuyMyBeard11 ай бұрын
@@paro456 I've seen it both in video form (from that video) and in your source code. The implementation is lackluster and mediocre though. The algorithm is very naive and samples heights around it without trying to create any pattern. The implementation I was trying seems decent, but I think the issue is agressive loop unrolling (I have to iterate over a buffer of variable size depending on the amount of ripples sent to the GPU)
@PyubX2 ай бұрын
can you explain how you fixed the pixelization
@atirutwattanamongkol88069 ай бұрын
This is some really clever tricks. Nice one.
@IslamAudioStation Жыл бұрын
Your tutorials are soo good man. Thank you so much.
@__thytranАй бұрын
Good work! thanks for the video
@MadMarcWinnipeg Жыл бұрын
Awesome! Thanx bro. I really appreciate this.
@donna2016..2 ай бұрын
How to combine this ripple effect with the realistic water shader?
@paro4562 ай бұрын
You can use the Lerp node to blend normal maps.
@권승준-g7m Жыл бұрын
I want to make the water transparent like in the video, how can I do it?
@paro456 Жыл бұрын
First, change your shader from opaque to transparent. You can use the Scene Color node to obtain the color of opaque objects beneath transparent ones. If the water surface appears gray, it means you haven't checked the Depth Texture and Opaque Texture options.
@권승준-g7m Жыл бұрын
Wow, it worked. Thank you so much! Another thing I'm curious about is that even though the particles are above the surface of the water, they're still dripping. How do I fix this?@@paro456
@권승준-g7m Жыл бұрын
It's 1.4 points away from the Y-axis, and if I go below it, it doesn't touch the surface of the water, but it shows the surface of the water shaking @@paro456
@paro456 Жыл бұрын
@@권승준-g7m You can make the character or objects emit particles only when touching the water surface.
@권승준-g7m Жыл бұрын
@@paro456 Does that mean I have to create and put in a script where particles only run when they touch the water surface?
@chimpchase8 ай бұрын
is there a way you can make the ripples fade out instead of going everywhere
@paro4568 ай бұрын
You can decrease the value of *d *= 0.98f;* in the ripple shader.
@PyubX2 ай бұрын
I saved it on a very nice subtle 0.035 normal strenght on thr material where it was a pretty wake and mostly noise free. Upon restart its all jumbled up.. could it be because of the auto random seed in the particle system??
@PyubX2 ай бұрын
How would you make it leave a good thick wake and not too many ripples?
@paro4562 ай бұрын
@@PyubX Could you share your game footage with me on discord? This will make it easier for me to help you.
@PyubX2 ай бұрын
@@paro456 i fixed this by adding a property to the shader with which i slowed down the propagation of the circles so now when i move fewer shoot out in front of me and they leave more of a wake. I would very much like your help with the pixelization if the offer stands however
The ripples are way too fast with higher fps? How do i make them seperate from fps like fixedupdate does?
@paro4564 ай бұрын
You can move the code to FixedUpdate.
@thegrey448 Жыл бұрын
welldone. thanks
@pancwake84444 ай бұрын
It works great for small planes. But with a big plane the effect is barely visible. How do i make it work with big planes?
@paro4564 ай бұрын
I'll think of other possible solutions.
@pancwake84444 ай бұрын
@@paro456 Changing the texture size from 512 to 16000 made it way better
@paro4564 ай бұрын
@@pancwake8444 "I don't recommend doing that. A 512 resolution means your computer has to render a 512x512 image every frame, and higher resolutions will take even longer."
@pancwake84444 ай бұрын
@@paro456 seems to be doing fine tho
@pancwake84444 ай бұрын
@@paro456 Nevermind. Its fine in the unity editor but when i build the game i have 0.2fps Putting it on 5120 makes it playable but also barely visible. Would love a solution
@sprythedragon225311 ай бұрын
Where can I find the last script you mentioned? 6:26
@paro45611 ай бұрын
You can combine this ripple effect with the water shader tutorial I previously created.
@thenewchicken133911 ай бұрын
Im already confused at 1:35, I don't have the option to create a unlit shader graph. Only a shader itself I'm unsure if this is the same thing.
@paro45611 ай бұрын
You need to install Shader Graph in the Package Manager first.
@thenewchicken133911 ай бұрын
@@paro456 okay Thank you
@dertobbe11764 ай бұрын
hi, so far its good, but how to setup this for a big landscape? i mean i want to just setup one camerea for multiple objects
@Flimcy4 ай бұрын
hey paro i am probably just really dumb lol but how do i change the size of the ripple as every way i have tried doesnt actually size down the ripple
@paro4564 ай бұрын
You can raise the resolution in the inspector, but I wouldn't recommend going above 1024.
@Flimcy4 ай бұрын
@@paro456 thank you
@MrElfVR Жыл бұрын
Thank you so much
@TylerGlenn-ud4ei Жыл бұрын
are u using gorilla rig?
@kyd_996 ай бұрын
hello, I'm having trouble with camera that mine doesn't have output texture, instead of it, i have target texture so I just put my render texture in it. but it's not working i think i made mistake here so do I need to download something to see output texture in camera?
@paro4566 ай бұрын
what version of unity you use?
@kyd_996 ай бұрын
@@paro456 I use unity 2022.3.9f1 version. I need to use this version to connect with other system. is version is the problem?
@paro4566 ай бұрын
@@kyd_99 I'm using the 2022 version, and there is an 'output texture' option in the output settings. Maybe you should check again. If it's not there, let me know.
@kyd_996 ай бұрын
@@paro456 I opened new project and checked camera again but still it's not there..
@paro4566 ай бұрын
@@kyd_99 Could you please provide some screenshots of the camera inspector?
@sorathedev6739 Жыл бұрын
really cool, but I just wonder is there anyway to implement tessellation to urp
@paro456 Жыл бұрын
I currently know two methods. The first one is to use Amplify Shader Editor, which supports tessellation in the URP pipeline. The other one is to add tessellation functionality in your shader code.
@munyunu Жыл бұрын
Thank you~!!
@WheatyVR8 ай бұрын
Can you send me the finished shader?
@GianDev Жыл бұрын
Hello, I have a question, is it possible to create waves as high as the sea? I was looking at how to use your github repository but when I opened the project, the water textures were not loaded and it did not have the function. I would like to learn how to make a sea without the computer exploding. u.u
@paro456 Жыл бұрын
You can contact me through Discord so that I can provide some images and videos. paro456d
@Thesomeonevr6 ай бұрын
how do i combine it with the last water shader
@paro4566 ай бұрын
You can download the shader I uploaded on GitHub, or wait until I have time to make another video about water.
@matawaristudio4805 Жыл бұрын
how if the plane is a rectangular shape? I`ve try it but the effect is streched
@paro456 Жыл бұрын
When I initially created this effect, I only considered surface, not other shapes.
@HansPeter-gx9ew Жыл бұрын
you should spawn the ripples in front of the object extrapolated with the velocity vector (has lag bcof CPU-GPU transmission). But nice project
@paro456 Жыл бұрын
Thank you for your suggestion! :)
@BuyMyBeard11 ай бұрын
wouldn't that cause the risk of overshooting a ring when the player stops?
@HansPeter-gx9ew11 ай бұрын
@@BuyMyBeard I think yes, but then you ahve one slightly missplaced ring instead of all. Also the player shouldn#t stop instantly anyway
@BuyMyBeard11 ай бұрын
@@HansPeter-gx9ew at this point it comes down to a design decision
@HansPeter-gx9ew11 ай бұрын
@@BuyMyBeard true; imo having such an effect is difficult enough; shader logic is simple but all the thing around it like how to get acces to texture etc. are extremely annyoing and badly documented. I really hate Unity for making it so complicated. Like making a custom post processing effect
@masonblue6211 ай бұрын
How do you make the water reflect and move litgh under it
@paro45611 ай бұрын
You need to add a reflection probe in your scene.
@masonblue6211 ай бұрын
@@paro456 thank you I appreciate it
@TylerGlenn-ud4ei Жыл бұрын
Hey, im having troube with the gorilla tag player script, like it wont play the effect, and you can barely move, can you tell me how to fix these issues, Thanks
@paro456 Жыл бұрын
You can discuss your script issues with me through Discord.
@TylerGlenn-ud4ei Жыл бұрын
@@paro456 how do i add you on discord
@TylerGlenn-ud4ei Жыл бұрын
can you sent a link to ur serv if u have one?@@paro456
@ezequielmartinez9583 Жыл бұрын
Hi. I redo your example here and the only ripple working is at the center of water... the player ripples are not working when the player is collides with water... Did you forget to talk about any script to control this?
@ezequielmartinez9583 Жыл бұрын
Ripple is not working at player's collision position
@paro456 Жыл бұрын
I mentioned how I did it towards the end of the video because the process is the same, so I skipped it. If you're not quite clear, you can reach out to me on Discord.
@TylerGlenn-ud4ei Жыл бұрын
Now the issue is that the water ripples spawn at the wrong spot, please help. Thanks
@paro456 Жыл бұрын
My Discord : paro456d
@pranavmohite8581 Жыл бұрын
@@paro456 same issue bro sent u a discord friend request please respond
@KashishSharma93 Жыл бұрын
great video. have you tried using this with unity's new water system? just curious
@paro456 Жыл бұрын
I have tried, but I currently don't have a good understanding of how to use it, so I might learn more about it in the future.
@KashishSharma93 Жыл бұрын
@@paro456 i will try it out as well
@GrapeMonkeGT Жыл бұрын
how do i add it in the water shader u made like the shader u made in the other video
@paro456 Жыл бұрын
You can use the lerp node to do that. Connect the water surface normal map to A and the ripple normal map to B. Finally, connect the R channel of the ripple texture to T then done.
@Kaerfca95 Жыл бұрын
@@paro456 Hey! I know this is probably the simplest thing, but do you have a screenshot showing this? I've copied both of these tutorials but I'm just not able to get them both connected. Sorry to bother you. Both videos have been super helpful.
@paro456 Жыл бұрын
@@Kaerfca95 This is how the screenshot of the connection should look like. and change the mode of the ripple texture to black. imgur.com/a/do8q8uG
@MonstrumReborn5 ай бұрын
Please do a tut on sunbeams for urp. Would be sick
@chunchaulam99252 ай бұрын
is this compatible with HDRP?
@paro4562 ай бұрын
no
@Jigglefrizz21 күн бұрын
it is - i tried it
@tcilla3874 Жыл бұрын
nice video, bro can you make a tutorial on volumetric sunbeams with urp graphics.
@paro456 Жыл бұрын
Perhaps when this video reaches 10k views, I will consider it.
@Syeda_Dev6 ай бұрын
can you make that a unity package please
@paro4566 ай бұрын
Maybe but not now
@ttsvibelounge Жыл бұрын
What text to speech engine are you using?
@SuperFunJeffy Жыл бұрын
How can I get this to work with any object
@paro456 Жыл бұрын
You can make the character or objects emit particles only when touching the water surface.
@МихаилДемяненко-б5х Жыл бұрын
what program do I need to open shader graph?
@paro456 Жыл бұрын
You need to install URP and Shader Graph from the package manager.
@cosmicnarwhalgaming Жыл бұрын
I'm very new to unity. I have completed your two part water shader video, just wondering how to combine this ripple effect with the other plane because there can only be one shader on a plane, Also, in the shader graph, only one node can go into the normal tangent space, so how do I put the water shader and ripple shader onto the same water plane?
@paro456 Жыл бұрын
That's a drawback of this method, but I think it can be improved by modifying the code. Perhaps I'll look into it when I have the time.
@paro456 Жыл бұрын
You can combine the normal map animations using Lerp. I remember there was a comment asking about this issue before; maybe you can take a look.
@hyperbatata Жыл бұрын
This is great, worked perfectly for me. One question. How can you do it for larger bodies of water? From my testing, it looks great for small planes (maybe up to 5 units big) but quality deteriorates over that. Can it be made as the ripples do not bounce at the edges? Thank you so much!
@paro456 Жыл бұрын
In the script inspector, there's a parameter called Texture Size that controls the resolution of the rendertexture. However, changing it may affect the speed of ripple dispersion. You may need to adjust it several times to find the desired value.
@kfj7958 ай бұрын
very cool but i noticed its bound to the Framerate and setting the fps to be higher than 60 breaks the water s:
@paro4568 ай бұрын
I think moving the code from Update to Fixed Update can solve this issue.
@kfj7958 ай бұрын
@@paro456 that night be the best choice cuz nowadays ppl want the best FPS and more and more screens are High refresh rate.
@mjin.mtd0604 Жыл бұрын
how to add unlit shader graph ?
@paro456 Жыл бұрын
1:30 If you don't have that shader graph option, then you need to install shader graph first.
@mjin.mtd0604 Жыл бұрын
@@paro456 thank u but I want to ask Why I don't have any setting of the camera
@paro456 Жыл бұрын
@@mjin.mtd0604 what camera
@徐龙-h1v10 ай бұрын
Can you send me the demo project in the video?
@paro45610 ай бұрын
You can find the GitHub link in the video description.
@joshuabidwell26146 ай бұрын
Champion
@daniionas2888 Жыл бұрын
The best
@itzdrify5678 Жыл бұрын
Can I make this on hdrp?
@paro456 Жыл бұрын
Yeah, you just need to choose HDRP when creating the graph.
@KENISEG Жыл бұрын
using extra camera - this is bad way
@paro456 Жыл бұрын
This is a fundamental idea, and you can also optimize it further.
@NeroForte_4 ай бұрын
urp?
@paro4564 ай бұрын
yes
@turkey_gaming7570 Жыл бұрын
hi
@paro456 Жыл бұрын
im real one
@turkey_gaming7570 Жыл бұрын
@@paro456 Pin me then
@MonkiiMousii Жыл бұрын
gorilla tag@@turkey_gaming7570
@miyeonpipi7 ай бұрын
hi, i can't find "Unlit Shader Graph", where is it can i find?🥲
@paro4567 ай бұрын
Maybe you haven't installed Shader Graph.
@miyeonpipi7 ай бұрын
@@paro456 then, i dl Shader Graph on Unity Store right? or on package manager?