New Release D3D9Client Development

Line 369 in PBR.fx should be uncommented. Without it, reflections aren't accurate.

Here it is with it commented out:


And then with the line uncommented:


PHP:
// Attennuate diffuse surface beneath
cDiff.rgb *= (1.0f - fRefl);
 
Line 369 in PBR.fx should be uncommented. Without it, reflections aren't accurate.

Thanks, Looks like I have done some tests and forgot to re-enable the line.

Also regarding the Fresnel reflections. If you observe a brushed aluminium or copper plate it doesn't reflect much when viewing from a high angle 30-90 deg and the reflection is very blurry. But then, if it's observed from a shallow angle 5 - 15 deg, the reflections becomes stronger and sharper. There's no trouble reading a newspaper through it, it's like a mirror.

Does a Fresnel reflection also apply to a metallic materials or are we talking about some other phenomena.

Should we try to approximate a default Fresnel behavior from a surface roughness and reflectivity. And use the Fresnel material/texture to override the defaults if needed.
 
Also regarding the Fresnel reflections. If you observe a brushed aluminium or copper plate it doesn't reflect much when viewing from a high angle 30-90 deg and the reflection is very blurry. But then, if it's observed from a shallow angle 5 - 15 deg, the reflections becomes stronger and sharper. There's no trouble reading a newspaper through it, it's like a mirror.

Does a Fresnel reflection also apply to a metallic materials or are we talking about some other phenomena.

Yes, Fresnel reflections do apply to metallic surfaces, even brushed ones without any mirror reflection. And they get progressively sharper as the angle approaches zero. The rate at which it changes probably depends on the material, so maybe a reflection on brushed aluminum would get sharper only at very low angles, while a reflection on a slightly shinier surface would get sharper at higher angles. Although this may be because of a different angle dependency, and not the actual blurriness changing at a different rate.

I already notice the blurry Fresnel reflections getting sharper as the angle decreases, so that works well.

Should we try to approximate a default Fresnel behavior from a surface roughness and reflectivity. And use the Fresnel material/texture to override the defaults if needed.

I think that's a good idea. I'll have to do some more experiments, but my first thought is any surface that has a reflectivity greater than zero automatically has Fresnel applied to it. The actual Fresnel parameters would depend on the surface roughness value. Ultimately, they could be overridden with material definitions or a custom texture.
 
edit: disregard see below.
 
Last edited:
XR2 VC HUD

Hi,

I installed the d3d9 r2b4 on the previous page (for orbiter 2016 release version). This version causes the hud in the xr2's virtual cockpit not to render, its completely blank. If I roll back to the official d3d9 release, it renders properly again.

The r2b4 version has a new file for the xr2 not found in the release version:
config\gc\xr2ravenstar.cfg

If I delete this file the hud in the vc re-appears, although it is very faint and not as pronounced as the vc hud in the default vessels.

The cfg file contains some values for reflection/fresnel that is somehow messing with the vc hud.
 
The fact that it's not rendered is related to this issue:
http://www.orbiter-forum.com/showthread.php?p=555373&postcount=4320

The XR2 has flags 0x2 and 0x1 set for the HUD. Where the flag 0x2 tells the engine to skip the rendering. So, Ignoring the flag 0x2 results a failure and not ignoring the flag also results a failure.

So, should we look some flag combinations to decide what to do with a mesh group ? That's really solid, like trying to program a random number generator to give precisely the values we want.

I am looking into the HUD faintness issue. It's likely a shader code issue.
 
D3D9Client2016 - R2 Beta 5

Here's a new build if the client. There are changes in the Earth rendering so that should be checked that everything is still ok. Also a mesh rendering has changed a bit so Mesh, HUD, MFD rendering should be checked.

The flag 0x2 is ignored during HUD rendering.

HUD rendering should be tested with the rest of the XR fleet.

Here's a binary for Orbiter 2016 (official release)
 

Attachments

Everything great for me too.

Just one thing (might be my setup) Clouds have a red tinge, like towards sunset, but appears all day long.
Screenshot was at midday, mid June at Heathrow. (Even English summer doesn't appear like that :lol:)

Is more apparent on "live" view than screenshot.

Keep up the FANTASTIC work - really appreciated !!
 
Last edited:
I was just wondering if there's something that could be done re this discussion between kuddel and me. It brought up some old D3D9Client discussions from 2014, namely this.

The 2D system is really old now and I think it could do with an overhaul, even if only gcAPI using vessels could make use of the new system.
 
xr2 vc hud and pink clouds

Thank you Jarmonik for taking the time to look into the vc hud issue. With beta5, the xr2 vc hud is looking great again!

I can confirm what JMW said, the clouds always have this pink hue to them. Can't say that I noticed it with the previous releases...will roll back and check.

Really appreciate all of your hard work. :tiphat:


Edit: Just tested, beta4 does not have the pink cloud issue.

---------- Post added at 09:19 PM ---------- Previous post was at 06:42 PM ----------

Ok found another issue to report with beta 5:

The exterior spot lights on the XR2 do not render when the nav switch is turned on.
 
Last edited:
Here's R2 build of the client for Orbiter2016 (official release build).

There are a few last minute changes regarding the pink clouds, Jupiter cloud issue, atmosphere rayleigh biassing and runway lights visibility issue at 2km distance.

Last opportunity to check any issues before uploading the package to CodePlex.
 

Attachments

Last opportunity to check any issues before uploading the package to CodePlex.

CodePlex shows this since some time now:
CodePlex is shutting down. Read about the shutdown plan, including archive and migration information, on Brian Harry's blog.

The mentioned blog entry shows this:
In October, we’ll set CodePlex to read-only, before shutting it down completely on December 15th, 2017.

Do you have any plans on where to migrate once they closed doors for good?
 
I was just wondering if there's something that could be done re this discussion between kuddel and me. It brought up some old D3D9Client discussions from 2014, namely this.
The 2D system is really old now and I think it could do with an overhaul, even if only gcAPI using vessels could make use of the new system.

It would be possible to create a particle effect editor to allow to customize and test the effects in real-time with more parameters than the current particles. The math could be done on a GPU allowing 100k to 250k particles, but still they would be camera facing billboards like the current ones. They should get the job done well enough.

Z-sorted particle effects are possible but the particle count would be very limited.

---------- Post added at 12:02 ---------- Previous post was at 11:37 ----------

Do you have any plans on where to migrate once they closed doors for good?

No, I don't have plans for that. We haven't been using the CodePlex for anything else than hosting the binary package. We will think of something, it's not that much of a problem.
 
It would be possible to create a particle effect editor to allow to customize and test the effects in real-time with more parameters than the current particles. The math could be done on a GPU allowing 100k to 250k particles, but still they would be camera facing billboards like the current ones. They should get the job done well enough.

Z-sorted particle effects are possible but the particle count would be very limited.
Well, they're not really that dense or last that long. Here's a video of Discovery performing the Ti burn (single engine OMS burn using the left engine with a duration of 11 seconds):


And here's some views from the Infrared Background Signature Survey package (IBSS) mounted on a Shuttle Pallet Satellite (SPAS)-II of some RCS firings and OMS burns during STS-39: [ame="https://www.youtube.com/watch?v=UwmzAa_HV9gt=417"]1991: STS-39 Discovery, SPAS-2 (DOD) - YouTube[/ame]
 
Sorry i would have a question, I have always used OrbiterSVN, now I have also downloaded Orbiter2016 with all HR texture packages but with D3D9 you can not see the waves...

2D5cM06.jpg

AUI71Hx.jpg


With Orbiter SVN:
N3K6CyK.jpg


Do I have to set something up?
 
When you set up the reflections and roughness, of meshes in the debugger and save the changes. What file and folder are they saved to ?
 
When you set up the reflections and roughness, of meshes in the debugger and save the changes. What file and folder are they saved to ?

The files are located in /Config/GC/ and the filename is the vessel's class name.
 
Back
Top