Archived

This topic is now archived and is closed to further replies.

Aphelion

Underwater...

Recommended Posts

Okay, I''m trying to achieve a deep-sea underwater effect here, so I was wondering if anyone had any recommendations of DirectX effects that would help the illusion. Right now all I have is fogging, but I was thinking that some kind of soft halo around the lights might also be nice... any thoughts?

Share this post


Link to post
Share on other sites
Purty caustics and some algae (sp?) particles floating around would help (have a look at some screenshots of Aquanox)

Share this post


Link to post
Share on other sites
I don''t know what type of a view your underwater program is going to have, but you might want to check out that neat dolphin demo that came with the DX SDK.

¬_¬

Share this post


Link to post
Share on other sites
Check out the other samples from the SDK too:
Water
Bump Underwater


Other ideas:

- if you''re passing all your vertices through a vertex shader, it should be fairly easy to add refraction and a "wobble" to the vertices. IIRC there is a sample in the nVidia effects browser showing per vertex refraction.

- likewise if the camera ever comes out of the water you can use the Fresnel term for the surface reflectiveness vs trasparency

- As with the Bump Underwater sample, EMBM (or dependent texture reads in a pixel shader) is cool for all sorts of swishy displacement effects. (Take a look at the water effects in Mario Sunshine - most of what they do is with what is essentially EMBM [indirect textures in GameCube speak]).

--
Simon O''Connor
Creative Asylum Ltd
www.creative-asylum.com

Share this post


Link to post
Share on other sites
Light rays shining down from above and moving back and forth with the waves on the upper surface of the water might provide a certain sense of contact with the world above.

Share this post


Link to post
Share on other sites
Don't forget about visiblity distance sometimes underwater you will find it hard to see so far due to low visiablity . And sand on the botton of the ocean is cool too it moves in conjection with the current flow you should make a current too depending on situation. As well as if you hit the bottom of the ocean and your on the sand make like the sand come up or somthing. Also do not forget the kelp, shells, reefs, fish there should be many fish. Bubbles yes those are important. Kelp should move with the current if you make one. Also if its night time depending on the light and such you can sometimes see a reaction between the algae and tthe movement of the player causes like green flickery thingies kinda like lil paricals that are reacting to the movement by lighting up green. Just some ideas cuz some of the ocean stuff and sea based stuff isnt very realistic if you are to go scubadiving and see. Ive seen games that erm lack that concept extremely.



[edited by - DevLiquidKnight on October 16, 2002 2:09:29 PM]

Share this post


Link to post
Share on other sites
Okay, thanks for all the responses...
-I really like the dynamic sand idea, I''d never thought of that before...

-The algae particles floating around is also a really good idea as it could denote current and depth.

-Heavy fogging of course is a must.

-I already have a bubble particle system setup so I''m good there.

-I''m hestitant about adding caustic effects becuase I''m not sure if they''d be visible in a deep sea environment. (I''m talking about really deep, where oxygen becomes toxic and such, ~700ft) So, in other words, the dolphin demo is at way too shallow of a depth because I don''t think that light would penetrate very deep. But maybe it does, I really have no clue to be honest.

-Also, what do you guys think that I should do to lights? I''ve of course never been down really deep underwater and looked at lights, but I''m sure that they most likely look different. Any thoughts?

One last thing... how should I go about rendering the floating algae particles? Particle system? (Remeber that there''s going to be a lot of them)
Thanks,
-Jesse

Share this post


Link to post
Share on other sites