2012-02-05 4 views

ответ

1

HLSL специфичен для DirectX и GLSL специфичен для OpenGL. Невозможно скомпилировать шейдер GLSL в DirectX или шейдер HLSL в OpenGL. Если бы вы выбрали один из этих двух, вы бы выбрали его, потому что выбрали DirectX или OpenGL.

Cg - это промежуточный язык, созданный в основном nVidia, который может быть скомпилирован как GLSL, так и HLSL. Из того, что я видел, Cg не так популярен, как GLSL или HLSL, но я не очень много вникал в это.

Все 3 имеют обширные руководства и руководства, выберите Cg, если вы планируете писать систему, которая может поддерживать как OpenGL, так и DirectX в качестве базового API или выбрать один на основе выбранного вами API. Никто из них не скоро выйдет из моды.