Directx 9 - Water rendering on road

Started by
8 comments, last by GeniusPooh 11 years, 3 months ago
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,
Advertisement
up
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.
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?
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.
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;
The kind of effect I am targetting is shown in this image.

11722119.jpg
Image Link
http://picturepush.com/public/11722119
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 :)

Beauty is only skin deep , ugly goes to bones

World's only 3D engine tunner and 3D engine guru.

and real genius inventor :) but very kind warm heart .. and having serious depression for suffering in Korea

www.polygonart.co.kr ( currently out dated and only Korean will change to English and new stuff when I get better condition :) sorry for that)


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 smile.png


Thank you for your response.

Requesting you for more description of the same.

[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 smile.png


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..

Beauty is only skin deep , ugly goes to bones

World's only 3D engine tunner and 3D engine guru.

and real genius inventor :) but very kind warm heart .. and having serious depression for suffering in Korea

www.polygonart.co.kr ( currently out dated and only Korean will change to English and new stuff when I get better condition :) sorry for that)

This topic is closed to new replies.

Advertisement