Space Shuttle Ultra Project co-developer
- Feb 4, 2008
- Reaction score
True, but right now there's just a very small change between high angles and low angles of reflection. In reality, it should change to very light color at low angles when it is reflecting something dark, like space. This video of the STS-133 R-BAR Pitch Maneuver (RPM) shows the effect very well as the observer position stationary (ISS Lab camera) while the orbiter rotates changing the reflection angle:It would change color differently, depending on what was being reflected, water, clouds, land or space. I would think.
Evening folks; at some point soon, I will need to take the my server properly offline for a short while, which will impact your access to the SVN service on it. Would there be a date or time when this would be especially inconvenient?
True, but right now there's just a very small change between high angles and low angles of reflection. In reality, it should change to very light color at low angles when it is reflecting something dark, like space. This video of the STS-133 R-BAR Pitch Maneuver (RPM) shows the effect very well as the observer position stationary (ISS Lab camera) while the orbiter rotates changing the reflection angle:
[STS-133] RPM (Rendezvous Pitch Maneuver), Last ever for Shuttle Discovery - YouTube
Nearly so: https://spaceflight.nasa.gov/gallery/images/shuttle/sts-107/hires/jsc2003e13227.jpgMust be blinding, when it reflects the sun.
Whenever it is convenient for you is the best time :thumbup:Evening folks; at some point soon, I will need to take the my server properly offline for a short while, which will impact your access to the SVN service on it. Would there be a date or time when this would be especially inconvenient?
So I want the radiator panels of the shuttle to reflect with this dark blue color at a high angle and this more neutral white color at low angles. How can I accomplish this with D3D9Client R2? I had this working in an earlier beta of R2 before Felix's reflection map fix was incorporated.
Thanks for the lay down on how the reflections work. Right now the problem is that the "natural" top-down reflection color is just too dark. This is the main diffuse texture of the texture and as you can see, the radiator panels are painted in the correct dark blue color but yet, they appear pitch black in-sim.In the "dark blue" photo, the radiators are fully lit by the sun light and they are reflecting nothing (just empty space). So, that photo should show a true diffuse color of the radiators and that's pretty much what the diffuse texture should be. On the other hand, in the "natural white" photo, the reflected color is pretty close to the color of the Earth that's being reflected. A viewing angle does have an effect to the reflected image (intensity, sharpness) but that's starting to become noticeable below 20 deg. So, neither photo should be effected by viewing angle dependencies.
A few words about the "Felix's Fix". If you create a gold foil texture for the DX7 inline engine, that texture would have pretty bright gold color applied to it. That's pretty much it when a renderer doesn't support reflections. However, in a reflective environment a diffuse color of a gold foil would need to be close to a black. And that's because of an energy conservation, if 75% of incoming light is reflected then only 25% of the incoming light can go through diffuse scattering. One purpose of the "Felix's Fix" is to avoid a need of a separate diffuse textures for DX7 and DX9, and an other is to prevent over powering/saturating the reflections.
cDiff.rgb *= (1.0f - fRefl);
Will shift the color of the diffuse texture towards a black when the reflectivity "fRefl" increases. You didn't tell what's wrong with the current rendering of the radiators. But I would assume the color to be too dark. If the diffuse texture has the color and intensity shown in the "dark blue" photo then the "Felix's Fix" correction factor would not be needed and it's darkening something that's already correct.
There are a few quick tests you could try:
Remove/Comment out the line 365 from the PBR.fx:
//cDiff.rgb *= (1.0f - fTot);
If that doens't help then you could try to alter the line 369 to this:
cDiff.rgb *= (1.0f - fRefl*fRefl);
You can alter the brightness of the diffuse texture from the D3D9Mesh debugger by using "Tune Albedo" property but that will of-course effect to the whole texture not just the selected group. "Tune X" features works only when the mesh debugger is open. Currently the diffuse material property can't be adjusted above above 1.0.
A few notes:
- It would be good idea to ask Felix's opinion about this.
- Fresnel behavior is not yet implemented and few other issues are still open.
- I am further looking into this matter.
- Might be good idea to wait a little with major texture works. Small changes in the rendering behavior can happen.
I don't understand the question.Which map of the roughness map controls the gamma channel? The diffuse map or the alpha map?
I have converted the SSU payload bay textures to use the PBR engine after reading the D3D9Client guide. After that final piece of information the roughness texture, I think I have gotten the textures just right.I don't understand the question.
In the "Tune X" debug controls, the gamma field is used to apply a gamma curve into the texture's RGB data channels. The gamma control, along side by side with the RGB brightness control allows to adjust texture contrast.
The "Tune _Spec" doesn't have gamma control. The last field controls the specular power value. Which in SSU case will specify the roughness value for reflection blurriness. Since, no additional _rghn map is specified.
If _rghn map is specified, then the roughness value comes from the green color channel because the DXT1 compression quality is best for the green channel.
There doesn't exists a texture that would have a per pixel gamma value.
Thanks for the lay down on how the reflections work. Right now the problem is that the "natural" top-down reflection color is just too dark.
That was part of the problem, the reflection intensity was too high as determined by playing with the tuning utility. I also decreased the green channel of the roughness texture, once again determined by tuning utility of D3D9Client.The reflection intensity in _refl map could be too high. Which would take down the diffuse color down to zero (black).
Colour keys are only supported with Orbiter's inline graphics client. External clients ignore the ck parameter. The use of colour keys is therefore discouraged.