143:(Ray Generation Shaders, Intersection Shaders, Any Hit/Closest Hit/Miss Shaders). A vertex shader is executed for each vertex that is submitted by the application, and is primarily responsible for transforming the vertex from object space to view space, generating texture coordinates, and calculating lighting coefficients such as the vertex's normal, tangent, and bitangent vectors. When a group of vertices (normally 3, to form a triangle) come through the vertex shader, their output position is interpolated to form pixels within its area; this process is known as
33:
166:
GPUs listed are the hardware that first supported the given specifications. Manufacturers generally support all lower shader models through drivers. Note that games may claim to require a certain DirectX version, but don't necessarily require a GPU conforming to the full specification of that
150:
Optionally, an application using a Direct3D 10/11/12 interface and Direct3D 10/11/12 hardware may also specify a geometry shader. This shader takes as its input some vertices of a primitive (triangle/line/point) and uses this data to generate/degenerate (or
167:
version, as developers can use a higher DirectX API version to target lower-Direct3D-spec hardware; for instance DirectX 9 exposes features of DirectX7-level hardware that DirectX7 did not, targeting their fixed-function T&L pipeline.
107:
shading language, as it was developed alongside it. Early versions of the two languages were considered identical, only marketed differently. HLSL shaders can enable profound speed and detail increases as well as many
1885:
40:
of the statue is achieved purely physically, while the texture of the rectangular frame beside it is based on color intensity. The square in the background has been
1875:
1540:
1836:
1495:
1845:
1797:
1578:
1733:
1441:
152:
53:
601:
1513:
1827:
92:
language, and went on to become the required shading language for the unified shader model of Direct3D 10 and higher.
1890:
1763:
1859:
1468:
887:
873:
49:
1615:
155:) additional primitives or to change the type of primitives, which are each then sent to the rasterizer.
959:
41:
1332:
136:
1421:
1123:
973:
140:
1499:
113:
1842:
1880:
1647:
89:
73:
17:
1849:
877:
128:
109:
56:
of the water in the foreground are added by a shader applied finally to the entire scene.
1831:
1802:
1768:
1738:
1620:
1583:
1545:
1518:
1473:
1446:
945:
931:
132:
1869:
144:
124:
917:
863:
120:
1854:
963:
949:
907:
897:
37:
32:
1684:
1656:
935:
921:
843:
104:
77:
1411:
81:
45:
1679:
1651:
1416:
1708:
Shader Model 3.0, Ashu Rege, NVIDIA Developer
Technology Group, 2004.
853:
100:
1720:
The Direct3D 10 System, David Blythe, Microsoft
Corporation, 2006.
1843:
Riemer's HLSL Introduction & Tutorial (includes sample code)
1039:
means "32 texture instructions and 64 arithmetic instructions."
833:
96:
85:
1012:— GCN 1+, Kepler+, Skylake+, DirectX 12 (11_0+) with WDDM 2.7
1006:— GCN 1+, Kepler+, Skylake+, DirectX 12 (11_0+) with WDDM 2.6
158:
D3D11.3 and D3D12 introduced Shader Model 5.1 and later 6.0.
1680:"ATI Radeon X800 Pro and XT Platinum Edition: R420 Arrives"
1616:"Introduction to the DirectX 9 High-Level Shader Language"
1837:
Introduction to the DirectX 9 High Level
Shading Language
1030:— RDNA 1+, Maxwell 2+, DirectX 12 (12_0+) with WDDM 3.2
36:
A scene containing several different 2D HLSL shaders.
1024:— GCN 4+, Maxwell+, DirectX 12 (12_0+) with WDDM 3.1
1018:— GCN 4+, Maxwell+, DirectX 12 (11_0+) with WDDM 3.0
1496:"Fusion Industries :: Cg and HLSL FAQ ::"
1000:— GCN 1+, Kepler+, DirectX 12 (11_0+) with WDDM 2.5
994:— GCN 1+, Kepler+, DirectX 12 (11_0+) with WDDM 2.4
988:— GCN 1+, Kepler+, DirectX 12 (11_0+) with WDDM 2.3
982:— GCN 1+, Kepler+, DirectX 12 (11_0+) with WDDM 2.1
1614:Peeper, Craig; Mitchell, Jason L. (July 2003).
8:
1886:Microsoft application programming interfaces
976:, Fermi+, DirectX 12 (11_0+) with WDDM 2.0
1792:
1790:
1788:
1786:
1728:
1726:
1716:
1714:
1642:
1640:
1638:
1046:
174:
31:
1573:
1571:
1569:
1567:
1565:
1563:
1433:
1758:
1756:
1704:
1702:
1652:"NVIDIA Introduces GeForce FX (NV30)"
1609:
1607:
1605:
1603:
1601:
7:
1442:"Writing HLSL Shaders in Direct3D 9"
103:standard. It is very similar to the
1469:"High-level shader language (HLSL)"
25:
1498:. August 24, 2012. Archived from
699:Face register (2-sided lighting)
119:HLSL programs come in six forms:
1100:Max # of instructions executed
139:(Hull and Domain shaders), and
99:shading language used with the
900:-optimized model, DirectX 9.0a
1:
1876:C programming language family
1860:DirectX Intermediate Language
1839:, (ATI) AMD developer central
280:Arithmetic instruction limit
1798:"Vertex Shader Differences"
1263:Dynamic flow control depth
66:High-Level Shading Language
18:High-Level Shading Language
1907:
1848:November 19, 2008, at the
1828:Programming guide for HLSL
1579:"Pixel Shader Differences"
1514:"Shader Model 5.1 Objects"
910:shader model, DirectX 9.0b
888:Radeon 9500–9800/X300–X600
248:Texture instruction limit
62:High-Level Shader Language
95:HLSL is analogous to the
1043:Vertex shader comparison
472:Instruction predication
216:Dependent texture limit
1541:"HLSL Shader Model 6.0"
1124:Instruction predication
1077:# of instruction slots
856:Wildcat VP, DirectX 8.1
440:Interpolated registers
171:Pixel shader comparison
162:Shader model comparison
1309:# of texture samplers
1050:Vertex shader version
635:Gradient instructions
504:Index input registers
376:Executed instructions
57:
1286:Vertex texture fetch
1240:Dynamic flow control
1171:# constant registers
1037:Executed Instructions
731:Dynamic flow control
408:Texture indirections
178:Pixel shader version
35:
1862:(DXIL) specification
1764:"Registers - ps_5_0"
1734:"Registers - ps_4_1"
1217:Static flow control
667:Loop count register
137:tessellation shaders
123:(fragment in GLSL),
1502:on August 24, 2012.
1333:Geometry instancing
568:Constant registers
141:ray tracing shaders
72:) is a proprietary
1422:DirectX Raytracing
1358:Bitwise operators
836:Rampage, DirectX 8
763:Bitwise Operators
344:Instruction slots
312:Position register
112:in both 2D and 3D
58:
1891:Shading languages
1855:HLSL Introduction
1648:Shimpi, Anand Lal
1403:
1402:
1194:Address register
904:Shader Model 2.0b
894:Shader Model 2.0a
826:
825:
114:computer graphics
16:(Redirected from
1898:
1815:
1814:
1812:
1810:
1794:
1781:
1780:
1778:
1776:
1760:
1751:
1750:
1748:
1746:
1730:
1721:
1718:
1709:
1706:
1697:
1696:
1694:
1692:
1675:
1669:
1668:
1666:
1664:
1644:
1633:
1632:
1630:
1628:
1611:
1596:
1595:
1593:
1591:
1575:
1558:
1557:
1555:
1553:
1537:
1531:
1530:
1528:
1526:
1510:
1504:
1503:
1492:
1486:
1485:
1483:
1481:
1465:
1459:
1458:
1456:
1454:
1438:
1381:Native integers
1047:
1028:Shader Model 6.8
1022:Shader Model 6.7
1016:Shader Model 6.6
1010:Shader Model 6.5
1004:Shader Model 6.4
998:Shader Model 6.3
992:Shader Model 6.2
986:Shader Model 6.1
980:Shader Model 6.0
970:Shader Model 5.1
956:Shader Model 5.0
942:Shader Model 4.1
928:Shader Model 4.0
914:Shader Model 3.0
908:Radeon X700–X850
884:Shader Model 2.0
874:Radeon 8500–9250
795:Native Integers
175:
129:geometry shaders
74:shading language
27:Shading language
21:
1906:
1905:
1901:
1900:
1899:
1897:
1896:
1895:
1866:
1865:
1850:Wayback Machine
1824:
1819:
1818:
1808:
1806:
1796:
1795:
1784:
1774:
1772:
1762:
1761:
1754:
1744:
1742:
1732:
1731:
1724:
1719:
1712:
1707:
1700:
1690:
1688:
1678:Wilson, Derek.
1677:
1676:
1672:
1662:
1660:
1646:
1645:
1636:
1626:
1624:
1613:
1612:
1599:
1589:
1587:
1577:
1576:
1561:
1551:
1549:
1539:
1538:
1534:
1524:
1522:
1512:
1511:
1507:
1494:
1493:
1489:
1479:
1477:
1467:
1466:
1462:
1452:
1450:
1440:
1439:
1435:
1430:
1408:
1148:Temp registers
1071:
1069:
1045:
1034:
878:Matrox Parhelia
536:Temp registers
173:
164:
133:compute shaders
110:special effects
90:shader assembly
88:to augment the
28:
23:
22:
15:
12:
11:
5:
1904:
1902:
1894:
1893:
1888:
1883:
1878:
1868:
1867:
1864:
1863:
1857:
1852:
1840:
1834:
1832:Microsoft Docs
1823:
1822:External links
1820:
1817:
1816:
1803:Microsoft Docs
1782:
1769:Microsoft Docs
1752:
1739:Microsoft Docs
1722:
1710:
1698:
1670:
1634:
1621:Microsoft Docs
1597:
1584:Microsoft Docs
1559:
1546:Microsoft Docs
1532:
1519:Microsoft Docs
1505:
1487:
1474:Microsoft Docs
1460:
1447:Microsoft Docs
1432:
1431:
1429:
1426:
1425:
1424:
1419:
1414:
1407:
1404:
1401:
1400:
1397:
1394:
1391:
1388:
1385:
1382:
1378:
1377:
1374:
1371:
1368:
1365:
1362:
1359:
1355:
1354:
1351:
1348:
1345:
1342:
1339:
1336:
1329:
1328:
1325:
1322:
1319:
1316:
1313:
1310:
1306:
1305:
1302:
1299:
1296:
1293:
1290:
1287:
1283:
1282:
1279:
1276:
1273:
1270:
1267:
1264:
1260:
1259:
1256:
1253:
1250:
1247:
1244:
1241:
1237:
1236:
1233:
1230:
1227:
1224:
1221:
1218:
1214:
1213:
1210:
1207:
1204:
1201:
1198:
1195:
1191:
1190:
1187:
1184:
1181:
1178:
1175:
1172:
1168:
1167:
1164:
1161:
1158:
1155:
1152:
1149:
1145:
1144:
1141:
1138:
1135:
1132:
1129:
1126:
1120:
1119:
1116:
1113:
1110:
1107:
1104:
1101:
1097:
1096:
1093:
1090:
1087:
1084:
1081:
1078:
1074:
1073:
1066:
1063:
1060:
1057:
1054:
1051:
1044:
1041:
1035:"32 + 64" for
1032:
1031:
1025:
1019:
1013:
1007:
1001:
995:
989:
983:
977:
967:
960:Radeon HD 5000
953:
952:, DirectX 10.1
946:Radeon HD 3000
939:
932:Radeon HD 2000
925:
924:, DirectX 9.0c
911:
901:
898:GeForce FX/PCX
891:
881:
867:
857:
847:
837:
824:
823:
820:
817:
814:
811:
808:
805:
802:
799:
796:
792:
791:
788:
785:
782:
779:
776:
773:
770:
767:
764:
760:
759:
756:
753:
750:
747:
744:
741:
738:
735:
732:
728:
727:
724:
721:
718:
715:
712:
709:
706:
703:
700:
696:
695:
692:
689:
686:
683:
680:
677:
674:
671:
668:
664:
663:
660:
657:
654:
651:
648:
645:
642:
639:
636:
632:
631:
628:
625:
622:
619:
616:
613:
610:
607:
604:
597:
596:
593:
590:
587:
584:
581:
578:
575:
572:
569:
565:
564:
561:
558:
555:
552:
549:
546:
543:
540:
537:
533:
532:
529:
526:
523:
520:
517:
514:
511:
508:
505:
501:
500:
497:
494:
491:
488:
485:
482:
479:
476:
473:
469:
468:
465:
462:
459:
456:
453:
450:
447:
444:
441:
437:
436:
433:
430:
427:
424:
421:
418:
415:
412:
409:
405:
404:
401:
398:
395:
392:
389:
386:
383:
380:
377:
373:
372:
369:
366:
363:
360:
357:
354:
351:
348:
345:
341:
340:
337:
334:
331:
328:
325:
322:
319:
316:
313:
309:
308:
305:
302:
299:
296:
293:
290:
287:
284:
281:
277:
276:
273:
270:
267:
264:
261:
258:
255:
252:
249:
245:
244:
241:
238:
235:
232:
229:
226:
223:
220:
217:
213:
212:
206:
203:
200:
197:
194:
191:
185:
182:
179:
172:
169:
163:
160:
125:vertex shaders
48:. The partial
26:
24:
14:
13:
10:
9:
6:
4:
3:
2:
1903:
1892:
1889:
1887:
1884:
1882:
1879:
1877:
1874:
1873:
1871:
1861:
1858:
1856:
1853:
1851:
1847:
1844:
1841:
1838:
1835:
1833:
1829:
1826:
1825:
1821:
1805:
1804:
1799:
1793:
1791:
1789:
1787:
1783:
1771:
1770:
1765:
1759:
1757:
1753:
1741:
1740:
1735:
1729:
1727:
1723:
1717:
1715:
1711:
1705:
1703:
1699:
1687:
1686:
1681:
1674:
1671:
1659:
1658:
1653:
1649:
1643:
1641:
1639:
1635:
1623:
1622:
1617:
1610:
1608:
1606:
1604:
1602:
1598:
1586:
1585:
1580:
1574:
1572:
1570:
1568:
1566:
1564:
1560:
1548:
1547:
1542:
1536:
1533:
1521:
1520:
1515:
1509:
1506:
1501:
1497:
1491:
1488:
1476:
1475:
1470:
1464:
1461:
1449:
1448:
1443:
1437:
1434:
1427:
1423:
1420:
1418:
1415:
1413:
1410:
1409:
1405:
1398:
1395:
1392:
1389:
1386:
1383:
1380:
1379:
1375:
1372:
1369:
1366:
1363:
1360:
1357:
1356:
1352:
1349:
1346:
1343:
1340:
1337:
1334:
1331:
1330:
1326:
1323:
1320:
1317:
1314:
1311:
1308:
1307:
1303:
1300:
1297:
1294:
1291:
1288:
1285:
1284:
1280:
1277:
1274:
1271:
1268:
1265:
1262:
1261:
1257:
1254:
1251:
1248:
1245:
1242:
1239:
1238:
1234:
1231:
1228:
1225:
1222:
1219:
1216:
1215:
1211:
1208:
1205:
1202:
1199:
1196:
1193:
1192:
1188:
1185:
1182:
1179:
1176:
1173:
1170:
1169:
1165:
1162:
1159:
1156:
1153:
1150:
1147:
1146:
1142:
1139:
1136:
1133:
1130:
1127:
1125:
1122:
1121:
1117:
1114:
1111:
1108:
1105:
1102:
1099:
1098:
1094:
1091:
1088:
1085:
1082:
1079:
1076:
1075:
1067:
1064:
1061:
1058:
1055:
1052:
1049:
1048:
1042:
1040:
1038:
1029:
1026:
1023:
1020:
1017:
1014:
1011:
1008:
1005:
1002:
999:
996:
993:
990:
987:
984:
981:
978:
975:
971:
968:
965:
961:
957:
954:
951:
947:
943:
940:
937:
933:
929:
926:
923:
919:
915:
912:
909:
905:
902:
899:
895:
892:
889:
885:
882:
880:, DirectX 8.1
879:
875:
871:
868:
866:, DirectX 8.1
865:
861:
858:
855:
851:
848:
845:
841:
838:
835:
832:— Unreleased
831:
828:
827:
821:
818:
815:
812:
809:
806:
803:
800:
797:
794:
793:
789:
786:
783:
780:
777:
774:
771:
768:
765:
762:
761:
757:
754:
751:
748:
745:
742:
739:
736:
733:
730:
729:
725:
722:
719:
716:
713:
710:
707:
704:
701:
698:
697:
693:
690:
687:
684:
681:
678:
675:
672:
669:
666:
665:
661:
658:
655:
652:
649:
646:
643:
640:
637:
634:
633:
629:
626:
623:
620:
617:
614:
611:
608:
605:
603:
599:
598:
594:
591:
588:
585:
582:
579:
576:
573:
570:
567:
566:
562:
559:
556:
553:
550:
547:
544:
541:
538:
535:
534:
530:
527:
524:
521:
518:
515:
512:
509:
506:
503:
502:
498:
495:
492:
489:
486:
483:
480:
477:
474:
471:
470:
466:
463:
460:
457:
454:
451:
448:
445:
442:
439:
438:
434:
431:
428:
425:
422:
419:
416:
413:
410:
407:
406:
402:
399:
396:
393:
390:
387:
384:
381:
378:
375:
374:
370:
367:
364:
361:
358:
355:
352:
349:
346:
343:
342:
338:
335:
332:
329:
326:
323:
320:
317:
314:
311:
310:
306:
303:
300:
297:
294:
291:
288:
285:
282:
279:
278:
274:
271:
268:
265:
262:
259:
256:
253:
250:
247:
246:
242:
239:
236:
233:
230:
227:
224:
221:
218:
215:
214:
211:
207:
204:
201:
198:
195:
192:
190:
186:
183:
180:
177:
176:
170:
168:
161:
159:
156:
154:
148:
146:
145:rasterization
142:
138:
134:
130:
126:
122:
121:pixel shaders
117:
115:
111:
106:
102:
98:
93:
91:
87:
83:
79:
76:developed by
75:
71:
67:
63:
55:
51:
47:
43:
39:
34:
30:
19:
1809:February 22,
1807:. Retrieved
1801:
1775:February 22,
1773:. Retrieved
1767:
1745:February 22,
1743:. Retrieved
1737:
1691:February 22,
1689:. Retrieved
1683:
1673:
1663:February 22,
1661:. Retrieved
1655:
1627:February 22,
1625:. Retrieved
1619:
1590:February 22,
1588:. Retrieved
1582:
1552:February 22,
1550:. Retrieved
1544:
1535:
1525:February 22,
1523:. Retrieved
1517:
1508:
1500:the original
1490:
1480:February 22,
1478:. Retrieved
1472:
1463:
1453:February 22,
1451:. Retrieved
1445:
1436:
1036:
1033:
1027:
1021:
1015:
1009:
1003:
997:
991:
985:
979:
969:
966:, DirectX 11
955:
941:
938:, DirectX 10
927:
918:Radeon X1000
913:
903:
893:
883:
869:
864:GeForce 4 Ti
859:
849:
839:
829:
209:
188:
165:
157:
149:
118:
94:
69:
65:
61:
59:
50:transparency
29:
964:GeForce 400
950:GeForce 200
890:, DirectX 9
846:, DirectX 8
388:(8 + 6) * 2
356:(8 + 6) * 2
42:transformed
1870:Categories
1118:Unlimited
600:Arbitrary
435:Unlimited
403:Unlimited
307:Unlimited
304:Unlimited
301:Unlimited
298:Unlimited
275:Unlimited
243:Unlimited
189:1.3
153:tessellate
54:reflection
38:Distortion
1685:AnandTech
1657:AnandTech
1428:Footnotes
936:GeForce 8
922:GeForce 6
844:GeForce 3
758:Yes (64)
602:swizzling
432:Unlimited
426:Unlimited
272:Unlimited
269:Unlimited
266:Unlimited
240:Unlimited
234:Unlimited
105:Nvidia Cg
78:Microsoft
1846:Archived
1412:Direct3D
1406:See also
1335:support
1189:16×4096
1095:≥ 65536
755:Yes (24)
595:16×4096
551:12 to 32
371:≥ 65536
82:Direct3D
80:for the
1881:DirectX
1417:DirectX
391:64 + 32
359:64 + 32
208:4.04.1
46:rotated
974:GCN 1+
870:PS 1.4
860:PS 1.3
854:3Dlabs
850:PS 1.2
840:PS 1.1
830:PS 1.0
542:2 + 4
446:2 + 4
443:2 + 4
382:8 + 4
350:8 + 4
292:8 * 2
101:OpenGL
1186:≥ 256
1180:≥ 256
1174:≥ 96
1166:4096
1115:65536
1112:65536
1092:≥ 512
563:4096
545:3 + 4
461:2 + 8
458:2 + 8
455:2 + 8
452:2 + 6
449:2 + 4
400:65536
385:8 + 4
368:≥ 512
353:8 + 4
260:6 * 2
1811:2021
1777:2021
1747:2021
1693:2021
1665:2021
1629:2021
1592:2021
1554:2021
1527:2021
1482:2021
1455:2021
1399:Yes
1376:Yes
1353:Yes
1327:128
1304:Yes
1258:Yes
1235:Yes
1212:Yes
1209:Yes
1206:Yes
1203:Yes
1200:Yes
1177:≥ 96
1143:Yes
1109:1024
1103:128
1080:128
1072:5.0
1070:4.1
1068:4.0
1062:2.0a
1056:1.1
1053:1.0
962:and
948:and
934:and
920:and
834:3dfx
822:Yes
790:Yes
726:Yes
694:Yes
662:Yes
630:Yes
531:Yes
339:Yes
210:5.0
202:2.0b
199:2.0a
187:1.2
184:1.1
181:1.0
97:GLSL
70:HLSL
60:The
52:and
44:and
1830:at
1350:Yes
1301:Yes
1281:64
1255:Yes
1252:Yes
1232:Yes
1229:Yes
1226:Yes
1197:No
1183:256
1151:12
1140:Yes
1137:Yes
1106:128
1089:256
1086:256
1083:128
1065:3.0
1059:2.0
801:No
798:No
769:No
766:No
737:No
734:No
723:Yes
720:Yes
705:No
702:No
691:Yes
673:No
670:No
659:Yes
653:Yes
641:No
638:No
627:Yes
621:Yes
609:No
606:No
592:224
528:Yes
510:No
507:No
499:No
496:Yes
490:Yes
478:No
475:No
467:32
397:512
394:512
365:512
362:512
336:Yes
318:No
315:No
295:64
205:3.0
196:2.0
193:1.4
86:API
64:or
1872::
1800:.
1785:^
1766:.
1755:^
1736:.
1725:^
1713:^
1701:^
1682:.
1654:.
1650:.
1637:^
1618:.
1600:^
1581:.
1562:^
1543:.
1516:.
1471:.
1444:.
1396:No
1393:No
1390:No
1387:No
1384:No
1373:No
1370:No
1367:No
1364:No
1361:No
1347:No
1344:No
1341:No
1338:No
1298:No
1295:No
1292:No
1289:No
1278:24
1275:24
1249:No
1246:No
1243:No
1223:No
1220:No
1163:32
1160:16
1157:12
1154:12
1134:No
1131:No
1128:No
972:—
958:—
944:—
930:—
916:—
906:—
896:—
886:—
876:,
872:—
862:—
852:—
842:—
819:No
816:No
813:No
810:No
807:No
804:No
787:No
784:No
781:No
778:No
775:No
772:No
752:No
749:No
746:No
743:No
740:No
717:No
714:No
711:No
708:No
688:No
685:No
682:No
679:No
676:No
656:No
650:No
647:No
644:No
624:No
618:No
615:No
612:No
589:32
586:32
583:32
574:8
571:8
560:32
557:32
554:22
539:2
525:No
522:No
519:No
516:No
513:No
493:No
487:No
484:No
481:No
464:10
414:4
411:4
379:8
347:8
333:No
330:No
327:No
324:No
321:No
289:8
286:8
283:8
263:32
254:4
251:4
222:4
219:4
147:.
135:,
131:,
127:,
116:.
84:9
1813:.
1779:.
1749:.
1695:.
1667:.
1631:.
1594:.
1556:.
1529:.
1484:.
1457:.
1324:4
1321:—
1318:—
1315:—
1312:—
1272:—
1269:—
1266:—
580:8
577:8
548:6
429:4
423:4
420:4
417:4
257:4
237:8
231:8
228:6
225:4
68:(
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.