High Level Shading Language
VS 2.0 = DirectX 9.0オリジナルのシェーダーモデル2.0仕様。
VS 2.0a = NVIDIA GeForce FXに最適化されたモデル。
VS 3.0 = シェーダーモデル3.0に含まれる。
VS 4.0 = シェーダーモデル4.0に含まれる。
VS 4.1 = シェーダーモデル4.1に含まれる。
VS 5.0 = シェーダーモデル5.0に含まれる。
なおVS 2.0bは存在しない。
HLSLによってプログラム可能なグラフィックスパイプラインステージは、対応するDirect3Dのバージョンおよびシェーダーモデル(後述)によって異なる。
Direct3D 9の場合(シェーダーモデル1.x-3.0)は、頂点シェーダー(バーテックスシェーダー)およびピクセルシェーダー(OpenGLにおけるフラグメントシェーダーに相当)の2つである。
Direct3D 10.xの場合(シェーダーモデル4.x)は、頂点シェーダー、ジオメトリシェーダー(OpenGLではプリミティブシェーダーとも呼ばれる)、そしてピクセルシェーダーの3つである。
Direct3D 11.x/12の場合(シェーダーモデル5.x)は、頂点シェーダー、ハルシェーダー(OpenGLにおけるテッセレーション制御シェーダーに相当)、ドメインシェーダー(OpenGLにおけるテッセレーション評価シェーダーに相当)、ジオメトリシェーダー、ピクセルシェーダー、そしてコンピュートシェーダー(計算シェーダー、演算シェーダー)の6つである。ただしコンピュートシェーダーだけはグラフィックスパイプラインとは独立して動作させることができる。
頂点シェーダーはアプリケーションによって提供(入力)される頂点それぞれについて実行され、主にオブジェクト空間から視空間への頂点座標変換やテクスチャ座標の生成、また頂点の接線や従法線や法線ベクトルのような光線の係数の計算などの処理を担当する。