High Level Shader Language

Van Wikipedia, de vrije encyclopedie

High Level Shader Language (HLSL) is een shading taal (niet te verwarren met een programmeertaal) die gebruikt wordt voor pixel shading van driedimensionale graphics in computerspellen en andere programma's in Windows.

HLSL werd geïntroduceerd in DirectX 9 (een verzameling van APIs die het programmeurs eenvoudiger maakt computerspellen te programmeren), als vervanging voor de Assembly-taal die daarvoor gebruikt werd (sinds DirectX 8), om meer complexe vertex- en pixel shaders te schrijven.

High Level Shader Language is een high level language zoals de programmeertaal C, waar het op gebaseerd is, maar het is meer gelimiteerd dan C omdat het toegespitst is op het programmeren van pixel shaders.

De taal werd nog verder ontwikkeld bij de release van DirectX 10.

Pixel shader comparison

Samenvatten
Perspectief
Meer informatie PS_2_0, PS_2_a ...
  PS_2_0PS_2_aPS_2_bPS_3_0[1]PS_4_0[2]
Dependent texture limiet 4onbeperkt4onbeperktonbeperkt
Texture instructie limiet 32onbeperktonbeperktonbeperktonbeperkt
Positie register Nee NeeNee NeeNee NeeJa JaJa Ja
Instructie slots 32 + 64512512≥ 512≥ 65536
Uitgevoerde instructies 32 + 6451251265536onbeperkt
Texture indirecties 4Onbeperkt4onbeperktonbeperkt
Interpolated registers 2 + 82 + 82 + 81032
Instructie voorspelling Nee NeeJa JaNee NeeJa JaNee Nee
Inhoud invoer registers Nee NeeNee NeeNee NeeJa JaJa Ja
Tijdelijke registers 122232324096
vaste registers 32323222416x4096
Arbitrary swizzling Nee NeeJa JaNee NeeJa JaJa Ja
Gradient instructions Nee NeeJa JaNee NeeJa JaJa Ja
Loop teller register Nee NeeNee NeeNee NeeJa JaJa Ja
gezicht register (2-sided lighting) Nee NeeNee NeeNee NeeJa JaJa Ja
Dynamische volgcontrole Nee NeeNee NeeNee Nee24Ja Ja
Bitwise Operators Nee NeeNee NeeNee NeeNee NeeJa Ja
Native Integers Nee NeeNee NeeNee NeeNee NeeJa Ja
Sluiten
  • PS_2_0 = DirectX 9.0 originele Shader Model 2 specificatie.
  • PS_2_a = NVIDIA GeForce FX-geoptimaliseerd model.
  • PS_2_b = ATI Radeon X700, X800, X850 shader model, DirectX 9.0b.
  • PS_3_0 = Shader Model 3.
  • PS_4_0 = Shader Model 4.

"32 + 64" voor Executed Instructions betekent "32 texture instructies en 64 arithmetic instructies."

Vertex shader comparison

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.