• Advertisement
Sign in to follow this  

Directx 9 - Water rendering on road

This topic is 1855 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi,

I am attempting to render realistic water on road surface. for a car simulation game.
I am using Directx 9 , and have written the engine ground up.

Requesting the forum members to suggest good and cost effective rendering techniques for the same.

Regards,

Share this post


Link to post
Share on other sites
Advertisement
I'm not sure what you're looking for when you say "realistic water", but if you mean reflection and refraction, then... I've relied on these two resources before:


http://www.riemers.net/eng/Tutorials/XNA/Csharp/Series4/The_water_technique.php

http://habibs.wordpress.com/


Riemer's is XNA, but shouldn't be *too* complicated to port to C++/DirectX9.

Share this post


Link to post
Share on other sites
I am actually trying to render a scene where i can render the road as wet, to enable it to show as if it had just rained.

any pointers for that?

Share this post


Link to post
Share on other sites
How are you currently rendering your road?

The simplest is to perform your specular lighting twice, with the second time using a different mask/power for water. Also, try using the per-vertex normal for the water layer instead of the normal-mapped normal.

e.g.Road diffuse with Lambert + Road specular with Blinn-phong + Road "wet surface" specular with Blinn-phong.
[code]result = pow( dot(VertN, H), waterSpecPow ) * (waterSpecPow+2)/8 * saturate(dot(VertN, L)) * waterSpecMask * lightEnergy;
lightEnergy = (1-waterSpecMask) * lightEnergy;
result += pow( dot(N, H), roadSpecPow ) * (roadSpecPow+2)/8 * saturate(dot(N, L)) * roadSpecMask * lightEnergy;
lightEnergy = (1-roadSpecMask) * lightEnergy;
result += saturate(dot(N,L)) * roadDiffuse * lightEnergy;[/code]

Share this post


Link to post
Share on other sites
The kind of effect I am targetting is shown in this image.

[img]http://picturepush.com/public/11722119][IMG]http://www1.picturepush.com/photo/a/11722119/220/11722119.jpg[/img]

Share this post


Link to post
Share on other sites
hmm

reflaction and blurr and distortion required..

mostly reflaction earn by render cars flip down by road surface.

and you can blur( or low resolution ) and distortion by shader distortion can earn by sin, cos function or some texture map's offset.

It's not hard to do

and realistic scene need very detail gesture.

how about wave about raindrop at road

I sujest that kind of gesture or water wave by tires

It can acheive by dynamic texture of distortion .

if you need deeper opinion I will descripe it more :)

Share this post


Link to post
Share on other sites
[quote name='GeniusPooh' timestamp='1355963678' post='5012652']
hmm

reflaction and blurr and distortion required..

mostly reflaction earn by render cars flip down by road surface.

and you can blur( or low resolution ) and distortion by shader distortion can earn by sin, cos function or some texture map's offset.

It's not hard to do

and realistic scene need very detail gesture.

how about wave about raindrop at road

I sujest that kind of gesture or water wave by tires

It can acheive by dynamic texture of distortion .

if you need deeper opinion I will descripe it more [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]
[/quote]

Thank you for your response.

Requesting you for more description of the same.

Share this post


Link to post
Share on other sites
[quote name='duskndreamz' timestamp='1355981746' post='5012715']
[quote name='GeniusPooh' timestamp='1355963678' post='5012652']
hmm

reflaction and blurr and distortion required..

mostly reflaction earn by render cars flip down by road surface.

and you can blur( or low resolution ) and distortion by shader distortion can earn by sin, cos function or some texture map's offset.

It's not hard to do

and realistic scene need very detail gesture.

how about wave about raindrop at road

I sujest that kind of gesture or water wave by tires

It can acheive by dynamic texture of distortion .

if you need deeper opinion I will descripe it more [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]
[/quote]

Thank you for your response.

Requesting you for more description of the same.
[/quote]

I must clear about how much you understand but...

I just tell the brief..

and I think you are very familiar with reflection.. flip car and render at road side. you can render that car to new texture with low resolution..

and you can distort it with sin or cos curve.

this is basic thing to do.

next you can render tire trail to road in new texture buffer and tire tail must vague by time

so you have texture with tire trail..

with tire trail texture you can distort water mark or normal or water surface

so you have flipped low resolution car image and wave term by sin or cos (or anything) and tire thread's power on the road

so you can composite final scene with this you can add flipped car for mirror image and distort it with term and you can distort it more with tire tread and you can add specular on tire tail..

I'm not good at English but I try to explain about it.

Hmm.. I worry how much knew about reflection and shader and post processing.. Edited by GeniusPooh

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement