Skip to content
View in the app

A better way to browse. Learn more.

The AVSIM Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

New Video Card Requires New Shaders!

Featured Replies

In P3D Tips and Tricks forum there is a topic titled New Video Card Requires New Shaders! which has been locked after the initial post so I can't ask this question there.

 

Are new shaders required when the drivers are updated with the video card unchanged?

Gerry Howard

Gerry, you do not need to do anything with shaders on a driver change.

 

Regards

Bob

Officially retired

 

  • Moderator

Gerry, you did the right thing by asking here. The "Tips and Tricks" forum is solely for information that needs to be easily and quickly found. Discussions would simply dilute and adversely affect the raison d'etre for that forum.

 

There is an optional entry one can put into the Prepar3D.CFG file that will automatically rebuild the shaders whenever a change is made in the UI should one wish that to happen:

[GRAPHICS]
SHADER_CACHE_VERSION=1

Fr. Bill    

AOPA Member: 07141481 AARP Member: 3209010556


     Avsim Board of Directors | Avsim Forums Moderator
  • Author

Thanks for the explanation Bill. I'm intrigued to know why changing the hardware requires re-compilation but changing the drivers doesn't - given DirectX is supposed to isolate applications from hardware.

Gerry Howard

  • Moderator

Gerry, that is a very good question for which I honestly have no authoritative answer...

 

Presumably for the same reason shaders have been compiled for specific hardware ever since DX8.0 was developed:

 

Shaders were first added to Microsoft DirectX in DirectX 8.0. At that time, several virtual shader machines were defined, each roughly corresponding to a particular graphics processor produced by the top 3D graphics vendors.

 

http://msdn.microsoft.com/en-us/library/windows/desktop/bb509704(v=vs.85).aspx

Fr. Bill    

AOPA Member: 07141481 AARP Member: 3209010556


     Avsim Board of Directors | Avsim Forums Moderator
  • Author

my, possibly imperfect understanding is that DirectX 11 changed that.
 

Each video card implements a certain level of Microsoft DirectX (DX) functionality depending on the graphics processing units (GPUs) installed. In prior versions of Microsoft Direct3D, you could find out the version of Direct3D the video card implemented, and then program your application accordingly.

With Direct3D 11, a new paradigm is introduced called feature levels. A feature level is a well defined set of GPU functionality. For instance, the 9_1 feature level implements the functionality that was implemented in Microsoft Direct3D 9, which exposes the capabilities of shader models ps_2_x and vs_2_x, while the 11_0 feature level implements the functionality that was implemented in Direct3D 11.

Now when you create a device, you can attempt to create a device for the feature level that you want to request. If the device creation works, that feature level exists, if not, the hardware does not support that feature level. You can either try to recreate a device at a lower feature level or you can choose to exit the application. For more info about creating a device, see the D3D11CreateDevice function.

Using feature levels, you can develop an application for Direct3D 9, Microsoft Direct3D 10, or Direct3D 11, and then run it on 9, 10 or 11 hardware (with some exceptions of course, new 11 features will not run on an existing 9 card for example). Here is a couple of other basic properties of feature levels:

 

http://msdn.microsoft.com/en-us/library/windows/desktop/ff476876(v=vs.85).aspx

Gerry Howard

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.