Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
VDrift Graphical Upgrades
03-15-2010, 11:17 PM,
#22
 
Real-Time Rendering (third edition) by Akenine-Moller, Haines, Hoffman recommends this BRDF:
Code:
cdiff/pi + [(m+8)/(8*pi)]*Rf(alpha_h)*(cos_clamped(omega_h))^m
where:
Rf(alpha_h) = fresnel reflectance equation =
Rf(alpha_h) = Rf0 + (1-Rf0)*(1-cos_clamped(alpha_h))^5
alpha_h = angle between incoming light direction and surface normal
omega_h = half vector between incoming light direction and view vector
cos_clamped = cosine function clamped to range 0..1
material parameters:
Code:
cdiff = diffuse reflectance
m = micro-scale roughness
Rf0 = fresnel reflectance value at zero degrees

The whole thing then gets multiplied (piecewise for each RGB component) by the usual lambertian stuff:
Code:
E_l*cos_clamped(omega_i)
where:
E_l = incoming light intensity/color
omega_i = angle between incoming light direction and surface normal

This all gets computed for each light and summed.

Since cdiff is just the diffuse reflectance, it is defined with the usual diffuse texture. The fresnel reflectance value at zero degrees is the specular color of the material and can be defined by an additional RGB texture. The micro-scale roughness parameter m is the blinn-phong specular exponent and can be defined as a scalar value using an additional texture channel. Ideally, I'd like to also be able to define how m will change as the distance between the viewpoint and the pixel increases, because as you get further away from an object with a rough normal map, that mid-scale roughness (defined by the normal map) should at a distance be transferred over to the micro-scale roughness that's defined by the BRDF. Now that I think about it more, this could easily be precomputed from the normal map and stored in another texture channel.

Additionally, we need to model some area light sources. For these, we'd use environment cubemaps. One environment cubemap with its mip chain will look progressively blurrier, these could be blended between based on the object's micro-scale roughness parameter. One of the lower resolution cubemaps could also be used as an irradience environment map -- or we could precompute a more accurate irradience environment map instead.
Reply


Messages In This Thread
RE: VDrift Graphical Upgrades - by zimluura - 03-12-2010, 03:35 PM
[No subject] - by portets - 03-12-2010, 08:18 PM
[No subject] - by NaN - 03-13-2010, 05:53 AM
[No subject] - by NaN - 03-13-2010, 06:33 AM
[No subject] - by portets - 03-13-2010, 06:41 AM
[No subject] - by NaN - 03-13-2010, 09:43 AM
[No subject] - by portets - 03-13-2010, 11:49 AM
[No subject] - by sebiastisch - 03-13-2010, 02:17 PM
[No subject] - by joevenzon_phpbb2_import3 - 03-14-2010, 01:30 AM
[No subject] - by portets - 03-14-2010, 02:51 AM
[No subject] - by NaN - 03-14-2010, 09:08 AM
[No subject] - by joevenzon_phpbb2_import3 - 03-14-2010, 04:44 PM
[No subject] - by joevenzon_phpbb2_import3 - 03-14-2010, 04:49 PM
[No subject] - by joevenzon_phpbb2_import3 - 03-14-2010, 04:50 PM
[No subject] - by portets - 03-14-2010, 07:00 PM
[No subject] - by NaN - 03-14-2010, 08:00 PM
[No subject] - by joevenzon_phpbb2_import3 - 03-14-2010, 10:50 PM
[No subject] - by joevenzon_phpbb2_import3 - 03-14-2010, 10:51 PM
[No subject] - by portets - 03-15-2010, 12:39 AM
[No subject] - by joevenzon_phpbb2_import3 - 03-15-2010, 01:03 AM
[No subject] - by joevenzon_phpbb2_import3 - 03-15-2010, 01:04 AM
[No subject] - by joevenzon_phpbb2_import3 - 03-15-2010, 11:17 PM
[No subject] - by zimluura - 03-16-2010, 05:03 AM
[No subject] - by NaN - 03-16-2010, 05:22 AM
[No subject] - by joevenzon_phpbb2_import3 - 03-16-2010, 09:39 PM
[No subject] - by joevenzon_phpbb2_import3 - 03-16-2010, 09:48 PM
[No subject] - by zimluura - 03-17-2010, 06:34 AM
[No subject] - by joevenzon_phpbb2_import3 - 03-19-2010, 09:43 PM
[No subject] - by zimluura - 03-19-2010, 10:15 PM
[No subject] - by joevenzon_phpbb2_import3 - 03-20-2010, 12:28 PM
[No subject] - by zimluura - 03-20-2010, 02:18 PM
[No subject] - by joevenzon_phpbb2_import3 - 03-23-2010, 10:04 PM
[No subject] - by zimluura - 03-23-2010, 10:41 PM
[No subject] - by zimluura - 04-25-2010, 03:48 AM
[No subject] - by nomoo - 04-25-2010, 06:45 AM
[No subject] - by joevenzon_phpbb2_import3 - 04-25-2010, 03:01 PM
[No subject] - by zimluura - 04-26-2010, 11:11 PM
[No subject] - by joevenzon_phpbb2_import3 - 04-27-2010, 10:34 AM
[No subject] - by zimluura - 04-27-2010, 01:10 PM
progress report - by zimluura - 04-29-2010, 02:31 PM
[No subject] - by NaN - 04-30-2010, 02:18 AM
[No subject] - by zimluura - 04-30-2010, 01:07 PM
[No subject] - by NaN - 04-30-2010, 01:55 PM
[No subject] - by zimluura - 04-30-2010, 04:32 PM
[No subject] - by NaN - 04-30-2010, 05:04 PM
[No subject] - by zimluura - 05-01-2010, 02:08 AM
[No subject] - by joevenzon_phpbb2_import3 - 05-01-2010, 06:35 PM
[No subject] - by zimluura - 05-02-2010, 04:01 AM
[No subject] - by joevenzon_phpbb2_import3 - 05-09-2010, 12:51 PM
[No subject] - by zimluura - 05-11-2010, 11:36 AM
[No subject] - by joevenzon_phpbb2_import3 - 05-11-2010, 09:52 PM
[No subject] - by zimluura - 05-13-2010, 12:17 AM
[No subject] - by NaN - 05-13-2010, 01:45 AM
[No subject] - by zimluura - 05-13-2010, 03:09 AM
[No subject] - by NaN - 05-13-2010, 03:57 AM
[No subject] - by NaN - 05-13-2010, 04:16 AM
[No subject] - by joevenzon_phpbb2_import3 - 05-13-2010, 10:41 AM
[No subject] - by zimluura - 05-13-2010, 11:46 AM
[No subject] - by NaN - 05-13-2010, 02:34 PM
[No subject] - by zimluura - 05-13-2010, 04:34 PM
[No subject] - by joevenzon_phpbb2_import3 - 05-14-2010, 01:41 AM
[No subject] - by zimluura - 05-14-2010, 11:37 AM
[No subject] - by NaN - 05-14-2010, 04:22 PM
[No subject] - by NaN - 05-14-2010, 05:00 PM
[No subject] - by joevenzon_phpbb2_import3 - 05-14-2010, 09:51 PM
[No subject] - by zimluura - 05-15-2010, 02:57 AM
[No subject] - by zimluura - 05-18-2010, 09:08 AM
[No subject] - by zimluura - 05-20-2010, 12:58 PM
[No subject] - by NaN - 05-21-2010, 03:30 AM
[No subject] - by joevenzon_phpbb2_import3 - 05-21-2010, 12:00 PM
[No subject] - by zimluura - 05-21-2010, 04:02 PM
[No subject] - by zimluura - 05-25-2010, 06:07 AM
[No subject] - by NaN - 05-25-2010, 08:29 AM
[No subject] - by NaN - 05-25-2010, 08:55 AM
[No subject] - by joevenzon_phpbb2_import3 - 05-25-2010, 10:24 AM
[No subject] - by zimluura - 05-25-2010, 05:15 PM
[No subject] - by NaN - 05-26-2010, 10:23 AM
[No subject] - by zimluura - 05-26-2010, 11:53 AM
[No subject] - by NaN - 05-26-2010, 02:42 PM
[No subject] - by zimluura - 05-26-2010, 03:56 PM
[No subject] - by joevenzon_phpbb2_import3 - 05-27-2010, 01:35 AM
[No subject] - by portets - 05-27-2010, 08:06 AM
[No subject] - by joevenzon_phpbb2_import3 - 05-27-2010, 11:15 PM

Forum Jump:


Users browsing this thread: 2 Guest(s)