Skip to content
This repository has been archived by the owner on Feb 28, 2024. It is now read-only.

[BUG-225728] [EEP] Underwater Caustics Lighting Effect #4456

Open
sl-service-account opened this issue Oct 31, 2018 · 2 comments
Open

[BUG-225728] [EEP] Underwater Caustics Lighting Effect #4456

sl-service-account opened this issue Oct 31, 2018 · 2 comments

Comments

@sl-service-account
Copy link

How would you like the feature to work?

Ideally this would be based on the existing water effects, so no additional calculations of camera & angle are needed, only the slight cost to render the projector light (which is the underside of the water surface). It should be inactive when disabling Advanced Lighting, so no need for any new preferences settings.

If you see how others have done underwater caustics lighting in OpenGL, many examples online (some below**), its pretty simple effect that adds a lot of richness to a scene, either at shallow water looking down into surfaces below, but also greatly immersive when the camera/player is fully underwater.

To make it seem highly customizable (with no additional UI requirements), perhaps fashion the caustic projection from the normal texture applied to the water surface? You may have to run a filter or two over it to get the right contrast/color of course, but it would be the best possible way to make the users happy, and really simplify things at the same time.

There is one more thing that fits in this exact vein, with all the same points as above. If it should be separate request let me know?

_Fading out the Normal/Specular effect on the water surface, near & right up to where the water edge meets land. This would make the water look amazing from all angles, and totally hide the geometry transition from perception. Here's an example of that its one of the 1st series liknked below.  https://www.youtube.com/watch?v=qgDPSnZPGMA
EDIT: I just noticed I put some of the wrong video links below, they're good ones still, but im sure you've got excellent sources and info's already. I will add in a few more if I find docs or anything of use for this that anyone may find of interest.

One thing of note id like to stress, aside from ease and viability concerns that may be more important , basically... if its possible to do any yummy upgrades to the water and it performs well, client side stuff.  People will go bananas over it.   Nothing can transform a world like lighting and water, nature effects etc.  You've got your hands right on such a hugely important area!  And Eep has been really under the radar too, I dont think many people realize how much a positive transformation it will be.  Not that the firestorm thing wasnt great, but I think thats all people are expecting, EEP is already far far more than that. :)

**OpenGL Water Caustics Light Examples

OpenGL water example 1
https://www.youtube.com/watch?v=HusvGeEDU_U

OpenGL Underwater Effect - Caustic 2
https://www.youtube.com/watch?v=wuGba2047O4

Official pages
https://www.opengl.org/archives/resources/code/samples/mjktips/caustics/

water/underwater & sky shader update #2
https://www.youtube.com/watch?v=UkskiSza4p0

OpenGL Water Tutorial 2: Frame Buffer Objects
https://www.youtube.com/watch?v=21UsMuFTN0k

This one below is too cool not to share, but it requires a more work probably than what I was referring to in my simplified request above, but nobody would say no if it was possible lol!

Real-time interactive water collision with caustics under water -OpenGL/GLSL
https://www.youtube.com/watch?v=iaMGdGSmcOc

Why is this feature important to you? How would it benefit the community?

To reduce complexity of underwater scenes whilst adding a lot of atmosphere to the spaces, with little to no need for the end user to try and approximate the effect, wasting prims, and potentially straining the render of the scene.

See "Butonjar - Underwater Lighting" in Marketplace for an example of the community creating solutions for the effect, its actually really neat, im glad I bought it, but it has a lot of limitations, including being a strain to render, such that its not really as cool as it could be.

Original Jira Fields
Field Value
Issue BUG-225728
Summary [EEP] Underwater Caustics Lighting Effect
Type New Feature Request
Priority Unset
Status Accepted
Resolution Accepted
Labels whirly-eep
Reporter Macrocosm Draegonne (macrocosm.draegonne)
Created at 2018-10-31T01:06:19Z
Updated at 2020-06-15T15:23:36Z
{
  'Build Id': 'unset',
  'Business Unit': ['Platform'],
  'Date of First Response': '2018-10-31T14:13:50.906-0500',
  'How would you like the feature to work?': 'Ideally this would be based on the existing water effects, so no additional calculations of camera & angle are needed, only the slight cost to render the projector light (which is the underside of the water surface).  It should be inactive when disabling Advanced Lighting, so no need for any new preferences settings.\r\n\r\nIf you see how others have done underwater caustics lighting in OpenGL, many examples online (some below**), its pretty simple effect that adds a lot of richness to a scene, either at shallow water looking down into surfaces below, but also greatly immersive when the camera/player is fully underwater.\r\n\r\nTo make it seem highly customizable (with no additional UI requirements),  perhaps fashion the caustic projection from the normal texture applied to the water surface?   You may have to run a filter or two over it to get the right contrast/color of course, but it would be the best possible way to make the users happy, and really simplify things at the same time.\r\n\r\nThere is one more thing that fits in this exact vein, with all the same points as above.  If it should be separate request let me know?\r\n\r\nFading out the Normal/Specular effect on the water surface, near & right up to where the water edge meets land.  This would make the water look amazing from all angles, and totally hide the geometry transition from perception.  \r\n\r\n**OpenGL Water Caustics Light Examples \r\n\r\nOpenGL water example 1\r\nhttps://www.youtube.com/watch?v=HusvGeEDU_U\r\n\r\nOpenGL Underwater Effect - Caustic 2\r\nhttps://www.youtube.com/watch?v=wuGba2047O4 \r\n\r\nOfficial pages\r\nhttps://www.opengl.org/archives/resources/code/samples/mjktips/caustics/\r\n\r\nOpenGL Water Tutorial 2: Frame Buffer Objects\r\nhttps://www.youtube.com/watch?v=21UsMuFTN0k\r\n\r\nThis one is too cool not to share, but it requires a more work probably than what I was referring to in my simplified request above, but nobody would say no if it was possible lol! \r\n\r\nReal-time interactive water collision with caustics under water -OpenGL/GLSL\r\nhttps://www.youtube.com/watch?v=iaMGdGSmcOc\r\n\r\n\r\n',
  'Original Reporter': 'Macrocosm Draegonne (macrocosm.draegonne)',
  'ReOpened Count': 0.0,
  'Severity': 'Unset',
  'Target Viewer Version': 'viewer-development',
  'Why is this feature important to you? How would it benefit the community?': 'To reduce complexity of underwater scenes whilst adding a lot of atmosphere to the spaces, with little to no need for the end user to try and approximate the effect, wasting prims, and potentially straining the render of the scene.\r\n  \r\nSee "Butonjar - Underwater Lighting" in Marketplace for an example of the community creating solutions for the effect, its actually really neat, im glad I bought it, but it has a lot of limitations, including being a strain to render, such that its not really as cool as it could be.',
}
@sl-service-account
Copy link
Author

Dan Linden commented at 2018-10-31T19:13:51Z

Looks great. We can't get this into the current EEP project but are importing this for future consideration.

@sl-service-account
Copy link
Author

Macrocosm Draegonne commented at 2018-11-01T01:31:25Z

Thanks for the considering it Dan :) EEP FTW!

I might have to try messing with these codes & water simulation someday, I find it all very fascinating, especially after learning about the frame buffer and other techniques, a lot of it makes some sense after reviewing the topic.  Im not a game coder, but Ive worked with a bunch of other programing languages for web, so im drooling over here thinking up potentials!  Ice Cream Bacon Code with Rainbow Glitter!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant