ZloyKorovanovich / Oceana-URP

Oceana water for Unity URP
Apache License 2.0
13 stars 1 forks source link

Add efects on water #1

Open Luis122002 opened 3 months ago

Luis122002 commented 3 months ago

Hello, here I leave the link to the adjusted files of the 2 shaders and one of the fragment

https: // www . mediafire . com / file / dbmn04 vdmdyh3e9 / Graphics . zip / file so I better separate the URL into several parts, this adds general settings of the caustics with distortion whit detail of 2 random colors, size, scale, speed, distance, etc. At the same time, it has a distortion effect or screen movement and I adjusted things like a second, more organic fog control and an upward adjustment of the alpha channel since in Fordwar+ for some reason it does not show me the surface while underwater.

imagen imagen

Luis122002 commented 1 month ago

https://www.mediafire.com/file/0p63rr3mqgiqwwk/Extended_Oceana.unitypackage/file

Oceana Extended Pack. -Procedural waves -Refraction, foam, specular and SSS power effects with height fade -Sound system whit sensor for check beach, ocean o mainland (using free sounds clips) -Full water physics in 1 FixedUpdate call -Particles system by object pooling -Automatic top-face depth mask for boats -Integration of ripple water by "帕羅 Paro" -Light intensity by water depth and by day/night cycle integration -Use of ambient bubbles (requires visual effects) -Screen reflection by Opaqe texture and Blit texture -dynamic change material for integration by volumetric cloud (https://github.com/jiaozi158/UnityVolumetricCloudsURP) imagen imagen imagen imagen imagen imagen imagen

ZloyKorovanovich commented 1 month ago

https://www.mediafire.com/file/0p63rr3mqgiqwwk/Extended_Oceana.unitypackage/file

Oceana Extended Pack. -Procedural waves -Refraction, foam, specular and SSS power effects with height fade -Sound system whit sensor for check beach, ocean o mainland (using free sounds clips) -Full water physics in 1 FixedUpdate call -Particles system by object pooling -Automatic top-face depth mask for boats -Integration of ripple water by "帕羅 Paro" -Light intensity by water depth and by day/night cycle integration -Use of ambient bubbles (requires visual effects) -Screen reflection by Opaqe texture and Blit texture -dynamic change material for integration by volumetric cloud (https://github.com/jiaozi158/UnityVolumetricCloudsURP) imagen imagen imagen imagen imagen imagen imagen

Hi, I finally managed to get to see your extension for this system. They are exciting. I also need to mention, that some of the features require unity 6 installation (especially floating body). Btw i found that i can add contributors in github, so probably, i can share repository with you as contributor and add you to the license, so that we can combine our forces for making better asset!

Luis122002 commented 1 month ago

That sounds great, but I'm more focused on making my game and that this account is for an institute, which is taking advantage of the fact that I have to make packages and integrate others. I have this own environment: https://www.mediafire.com/file/ox3l9fyssfoshov/Skybox_dynamic.unitypackage/file

To use it with Oceana just delete or add the statement: #if OCEANA_AVAILABLE

endif

and then adds a float that is handled globally in the shaders of the oceana render and the full screen and you add it to the return of the colors as a multiple of 0 to 1. This package of an advanced day and night cycle with the rotation of the galaxy, narrows and the 2 types of eclipses that there are, its use with oceana adjusts the illumination of the ocean and also receives the intensity of the depth of the water. imagen

Another integration is with the package:

CristianQiu/Unity-URP-Volumetric-Light that when using volumetric lighting, in some cases a floor stop could be added to fit well with the Oceana system without affecting the "depht" mask. I don't care about the copyright if in the end, it is a package and not the game I am looking to make, for now I am doing an SS Multiple Scatering(building), auto exposure(finish), and see if I can find an alternative or solution to SSR and VXGI

imagen

ZloyKorovanovich commented 1 month ago

ore focused on making my game and that this account is for an institute, which is taking advantage of the fact that I have to make packages and integra

I see, cool:D btw as Unity 6 came out, and there are so much to do there! also thanks for publishing your improvements on package

Luis122002 commented 5 days ago

Hello, this is the last update to finish this matter due to priorities and because it would be the last adjustment for the ocean theme that it offers, the news is: -Editor mode activated (can be viewed even if not in play mode as an option) -Arrangement of waves and foam with mask for rivers or lakes. -Arrangement of the dynamic waves so that it follows the camera without jumping between spaces -Smoothed transition of material change for transparency and refraction effect. -use of physics in "cache" mode when the space of the 1024 objects is exhausted and with the option to update by player rank. -Discard of particles by player distance. -automatic reset of the SSR for FOV changes in the camera. -Transparent edge smoothness to not show the distortion of the mesh due to tessellation. -attempt to mask the refraction so that it does not apply to objects outside of water. -fix distance and intensity of caustics and add light mask for rendering

this is the url: https://www.mediafire.com/file/00qoba7wl7w8wve/Extended_Oceana.unitypackage/file

https://github.com/user-attachments/assets/86513361-60b7-48c6-8f79-1b181f0c9647

https://github.com/user-attachments/assets/11d7fcc6-7946-4bc8-862d-0c6e89c0a57a

I would like to continue updating since things like a lake or river would be missing, although the physics and underwater material can be adjusted to level that but I have not done an automatic process, so I settle for this, and it seems that the repository forgets Some things, in the prefab in the physics component there is a field called "Range Enable Particles" that is 0, this takes the position of the object with the player and if it is within the range it activates the particle, It is better to leave it at 200 imagen

In editor mode if the flow of the ocean stops, have the camera preview activated. imagen

The layer masks are not completely configured at the time of import, so have a "terrain" layer and one that masks the places where there should be no waves, for these objects they are positioned right in front of the camera at a distance very small, since the material has a bool to see only the waves and a range float that limits the maximum depth value of the terrain to cut its path imagen imagen

and finally, if you use an editor, it is better to have the ocean quality render component in quality level mode in the SSR options on low, because on hight it uses "blit" so it captures the entire GUI since it counts as rendering of the game, and sometimes a depht texture gets in the way, it can still be changed within the game without any conflict imagen

By recommendation it would be better if you had time to save the package and update the repository with those changes or see what else you can add, because at the moment, even Unity with its HDRP with water, does not have dynamic waves without having to use an object that indicates that there is one wave and the rest use a "particle system" or a manual process to capture dynamic waves, it may not be the last update because it occurred to me to use the depth method to make wild waves in the cold sea multiplying the values ​​of the vertex shader textures, although it is just an idea. I hope your godot project that you are doing now goes well, this would be all of this update

ZloyKorovanovich commented 5 days ago

Hello, this is the last update to finish this matter due to priorities and because it would be the last adjustment for the ocean theme that it offers, the news is: -Editor mode activated (can be viewed even if not in play mode as an option) -Arrangement of waves and foam with mask for rivers or lakes. -Arrangement of the dynamic waves so that it follows the camera without jumping between spaces -Smoothed transition of material change for transparency and refraction effect. -use of physics in "cache" mode when the space of the 1024 objects is exhausted and with the option to update by player rank. -Discard of particles by player distance. -automatic reset of the SSR for FOV changes in the camera. -Transparent edge smoothness to not show the distortion of the mesh due to tessellation. -attempt to mask the refraction so that it does not apply to objects outside of water. -fix distance and intensity of caustics and add light mask for rendering

this is the url: https://www.mediafire.com/file/00qoba7wl7w8wve/Extended_Oceana.unitypackage/file

Grabacion.2024-11-22.022924.mp4 Grabacion.2024-11-22.023225.mp4 I would like to continue updating since things like a lake or river would be missing, although the physics and underwater material can be adjusted to level that but I have not done an automatic process, so I settle for this, and it seems that the repository forgets Some things, in the prefab in the physics component there is a field called "Range Enable Particles" that is 0, this takes the position of the object with the player and if it is within the range it activates the particle, It is better to leave it at 200 imagen

In editor mode if the flow of the ocean stops, have the camera preview activated. imagen

The layer masks are not completely configured at the time of import, so have a "terrain" layer and one that masks the places where there should be no waves, for these objects they are positioned right in front of the camera at a distance very small, since the material has a bool to see only the waves and a range float that limits the maximum depth value of the terrain to cut its path imagen imagen

and finally, if you use an editor, it is better to have the ocean quality render component in quality level mode in the SSR options on low, because on hight it uses "blit" so it captures the entire GUI since it counts as rendering of the game, and sometimes a depht texture gets in the way, it can still be changed within the game without any conflict imagen

By recommendation it would be better if you had time to save the package and update the repository with those changes or see what else you can add, because at the moment, even Unity with its HDRP with water, does not have dynamic waves without having to use an object that indicates that there is one wave and the rest use a "particle system" or a manual process to capture dynamic waves, it may not be the last update because it occurred to me to use the depth method to make wild waves in the cold sea multiplying the values ​​of the vertex shader textures, although it is just an idea. I hope your godot project that you are doing now goes well, this would be all of this update

Hi! Thats sounds cool, I'll try to check out your new improvements today. I totaly agree to publish it on this repository, and edit description, but I feel realy unfair that I don't share license with you, so please tell me what email and name, surname I can add to license files. Actually you made in this project already a lit more than me). If you are interested in other things Im working on now, there is a huge demo comming. I've Implemented a procedural rendering of a planet based on a paper. Here are some pictures IMG_20241030_000853 IMG_20241030_000851 IMG_20241101_002403_583 IMG_20241030_000849

ZloyKorovanovich commented 5 days ago

Hello, this is the last update to finish this matter due to priorities and because it would be the last adjustment for the ocean theme that it offers, the news is: -Editor mode activated (can be viewed even if not in play mode as an option) -Arrangement of waves and foam with mask for rivers or lakes. -Arrangement of the dynamic waves so that it follows the camera without jumping between spaces -Smoothed transition of material change for transparency and refraction effect. -use of physics in "cache" mode when the space of the 1024 objects is exhausted and with the option to update by player rank. -Discard of particles by player distance. -automatic reset of the SSR for FOV changes in the camera. -Transparent edge smoothness to not show the distortion of the mesh due to tessellation. -attempt to mask the refraction so that it does not apply to objects outside of water. -fix distance and intensity of caustics and add light mask for rendering

this is the url: https://www.mediafire.com/file/00qoba7wl7w8wve/Extended_Oceana.unitypackage/file

Grabacion.2024-11-22.022924.mp4 Grabacion.2024-11-22.023225.mp4 I would like to continue updating since things like a lake or river would be missing, although the physics and underwater material can be adjusted to level that but I have not done an automatic process, so I settle for this, and it seems that the repository forgets Some things, in the prefab in the physics component there is a field called "Range Enable Particles" that is 0, this takes the position of the object with the player and if it is within the range it activates the particle, It is better to leave it at 200 imagen

In editor mode if the flow of the ocean stops, have the camera preview activated. imagen

The layer masks are not completely configured at the time of import, so have a "terrain" layer and one that masks the places where there should be no waves, for these objects they are positioned right in front of the camera at a distance very small, since the material has a bool to see only the waves and a range float that limits the maximum depth value of the terrain to cut its path imagen imagen

and finally, if you use an editor, it is better to have the ocean quality render component in quality level mode in the SSR options on low, because on hight it uses "blit" so it captures the entire GUI since it counts as rendering of the game, and sometimes a depht texture gets in the way, it can still be changed within the game without any conflict imagen

By recommendation it would be better if you had time to save the package and update the repository with those changes or see what else you can add, because at the moment, even Unity with its HDRP with water, does not have dynamic waves without having to use an object that indicates that there is one wave and the rest use a "particle system" or a manual process to capture dynamic waves, it may not be the last update because it occurred to me to use the depth method to make wild waves in the cold sea multiplying the values ​​of the vertex shader textures, although it is just an idea. I hope your godot project that you are doing now goes well, this would be all of this update

I've checked your new water additions, unfortunatelly for now it's really unstable and requires some editing and bug fixing :/

Luis122002 commented 4 days ago

Is the instability due to the editor mode? If that is what I am seeing because in new projects it moves unstable, since it is a behavior similar to the physics of the grass when from time to time it works in the editor and other times it remains static, if it is another one, let me know so I can adjust it including bugs and others topics, and my name is Luis Riveros Fernandez, luis122002@gmail.com

ZloyKorovanovich commented 4 days ago

Is the instability due to the editor mode? If that is what I am seeing because in new projects it moves unstable, since it is a behavior similar to the physics of the grass when from time to time it works in the editor and other times it remains static, if it is another one, let me know so I can adjust it including bugs and others topics, and my name is Luis Riveros Fernandez, luis122002@gmail.com

two of them are easy fixable (destroy immideate) but others are not so, also some shaders are broken as well image

Luis122002 commented 4 days ago

Having time to try it in a foreign project, I already saw my problem, I did not use Oceana's own scene, and used the one from my project, since it uses resources that are not shown or that were in development, I am already fixing it, but explaining what happened:

Luis122002 commented 4 days ago

all problems fixes for new project: https://www.mediafire.com/file/2hjobhwrhql1z55/Extended_Oceana.unitypackage/file imagen

ZloyKorovanovich commented 3 days ago

https://www.mediafire.com/file/2hjobhwrhql1z55/Extended_Oceana.unitypackage/file

Yes, now it works fine! thanks