Shading language
ಶೇಡಿಂಗ್ ಭಾಷೆಯು ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಶೇಡರ್ ಪರಿಣಾಮಗಳಿಗೆ ಹೊಂದಿಕೊಂಡ ಗ್ರಾಫಿಕ್ಸ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಾಗಿದೆ. ಛಾಯೆಯ ಭಾಷೆಗಳು ಸಾಮಾನ್ಯವಾಗಿ "ವೆಕ್ಟರ್", "ಮ್ಯಾಟ್ರಿಕ್ಸ್", "ಬಣ್ಣ" ಮತ್ತು "ನಾರ್ಮಲ್" ನಂತಹ ವಿಶೇಷ ದತ್ತಾಂಶ ಪ್ರಕಾರಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತವೆ. ಆಫ್ಲೈನ್ ರೆಂಡರಿಂಗ್ನಲ್ಲಿ ಬಳಸುವ ಆಫ್ಲೈನ್ ರೆಂಡರಿಂಗ್ ಶೇಡಿಂಗ್ ಭಾಷೆಗಳು ನೈಸರ್ಗಿಕ ಭಾಷೆಗೆ ಹತ್ತಿರವಾಗಿರುತ್ತವೆ, ಆದ್ದರಿಂದ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಬಗ್ಗೆ ಯಾವುದೇ ವಿಶೇಷ ಜ್ಞಾನದ ಅಗತ್ಯವಿಲ್ಲ. ಆಫ್ಲೈನ್ ರೆಂಡರಿಂಗ್ ನೈಜ-ಸಮಯದ ರೆಂಡರಿಂಗ್ಗಿಂತ ಹೆಚ್ಚಿನ ಸಮಯ ಮತ್ತು ಗಣನೆಯ ವೆಚ್ಚದಲ್ಲಿ ಗರಿಷ್ಠ-ಗುಣಮಟ್ಟದ ಚಿತ್ರಗಳನ್ನು ಉತ್ಪಾದಿಸುವ ಗುರಿಯನ್ನು ಹೊಂದಿದೆ. ರೆಂಡರ್ಮ್ಯಾನ್ ಇಂಟರ್ಫೇಸ್ ಸ್ಪೆಸಿಫಿಕೇಷನ್ ನಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿಸಲಾದ ರೆಂಡರ್ಮ್ಯಾನ್ ಶೇಡಿಂಗ್ ಲಾಂಗ್ವೇಜ್ (ಆರ್ಎಸ್ಎಲ್ ಅಥವಾ ಎಸ್ಎಲ್, ಸಂಕ್ಷಿಪ್ತವಾಗಿ), ಉತ್ಪಾದನಾ-ಗುಣಮಟ್ಟದ ರೆಂಡರಿಂಗ್ಗಾಗಿ ಸಾಮಾನ್ಯ ಶೇಡಿಂಗ್ ಭಾಷೆಯಾಗಿದೆ. ಇದು ಇದುವರೆಗೆ ಜಾರಿಗೆ ತರಲಾದ ಮೊದಲ ಛಾಯೆಯ ಭಾಷೆಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ. ಇದು ಆರು ಪ್ರಮುಖ ಶೇಡರ್ ಪ್ರಕಾರಗಳನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುತ್ತದೆಃ ಬೆಳಕಿನ ಮೂಲ ಶೇಡರ್ಗಳು ಬೆಳಕಿನ ಮೂಲದ ಮೇಲೆ ಒಂದು ಬಿಂದುವಿನಿಂದ ಗುರಿ ಮೇಲ್ಮೈಯಲ್ಲಿ ಒಂದು ಬಿಂದುವಿಗೆ ಹೊರಸೂಸುವ ಬೆಳಕಿನ ಬಣ್ಣವನ್ನು ಲೆಕ್ಕ ಹಾಕುತ್ತವೆ. ಒಳಬರುವ ಬೆಳಕು ಮತ್ತು ವಸ್ತುವಿನ ಭೌತಿಕ ಗುಣಲಕ್ಷಣಗಳ ಆಧಾರದ ಮೇಲೆ ಮೇಲ್ಮೈ ನೆರಳುಗಳು ವಸ್ತುವಿನ ಮೇಲ್ಮೈಯಲ್ಲಿ ಬಿಂದುಗಳ ಬಣ್ಣ ಮತ್ತು ಸ್ಥಾನವನ್ನು ರೂಪಿಸುತ್ತವೆ. ಸ್ಥಳಾಂತರದ ನೆರಳುಗಳು ಮೇಲ್ಮೈ ರೇಖಾಗಣಿತವನ್ನು ಬಣ್ಣದಿಂದ ಸ್ವತಂತ್ರವಾಗಿ ನಿರ್ವಹಿಸುತ್ತವೆ. ವಿರೂಪಗೊಳಿಸುವ ಛಾಯೆಗಳು ಇಡೀ ಜಾಗವನ್ನು ಪರಿವರ್ತಿಸುತ್ತವೆ. ಸಿಟೆಕ್ಸ್ ಗ್ರಾಫಿಕ್ಸ್ನ ಎಐಆರ್ ರೆಂಡರ್ ಎಂಬ ಒಂದೇ ಒಂದು ರೆಂಡರ್ಮ್ಯಾನ್ ಅನುಷ್ಠಾನವು ಈ ಶೇಡರ್ ಪ್ರಕಾರವನ್ನು ಜಾರಿಗೆ ತಂದಿತು, ಇದು ಜಾಗಕ್ಕೆ ಅನ್ವಯಿಸಲಾದ ಒಂದೇ ರೇಖೀಯ ರೂಪಾಂತರವನ್ನು ಮಾತ್ರ ಬೆಂಬಲಿಸುತ್ತದೆ. ವಾಲ್ಯೂಮ್ ಶೇಡರ್ಗಳು ಪರಿಮಾಣದ ಮೂಲಕ ಹಾದುಹೋಗುವಾಗ ಬೆಳಕಿನ ಬಣ್ಣವನ್ನು ಕುಶಲತೆಯಿಂದ ನಿರ್ವಹಿಸುತ್ತವೆ. ಅವು ಮಂಜಿನಂತಹ ಪರಿಣಾಮಗಳನ್ನು ಸೃಷ್ಟಿಸುತ್ತವೆ. ಇಮೇಜರ್ ಶೇಡರ್ಗಳು ಅಂತಿಮ ಪಿಕ್ಸೆಲ್ ಮೌಲ್ಯಗಳಿಗೆ ಬಣ್ಣದ ರೂಪಾಂತರವನ್ನು ವಿವರಿಸುತ್ತವೆ. ಇದು ಇಮೇಜ್ ಫಿಲ್ಟರ್ನಂತಿದೆ, ಇಮೇಜರ್ ಶೇಡರ್ ಕ್ವಾಂಟೈಸೇಶನ್ಗೆ ಮುಂಚಿತವಾಗಿ ಡೇಟಾದ ಮೇಲೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಅಂತಹ ದತ್ತಾಂಶವು ಸಾಮಾನ್ಯ ಔಟ್ಪುಟ್ ಸಾಧನದಲ್ಲಿ ಪ್ರದರ್ಶಿಸಬಹುದಾದದ್ದಕ್ಕಿಂತ ಹೆಚ್ಚು ಕ್ರಿಯಾತ್ಮಕ ವ್ಯಾಪ್ತಿ ಮತ್ತು ಬಣ್ಣದ ರೆಸಲ್ಯೂಶನ್ ಅನ್ನು ಹೊಂದಿರುತ್ತದೆ. ಹೌದಿನಿ ವೆಕ್ಸ್ ಛಾಯೆ ಭಾಷೆ ಹೌದಿನಿ ವೆಕ್ಸ್ (ವಾಹಕ ಅಭಿವ್ಯಕ್ತಿಗಳು) ಛಾಯೆ ಭಾಷೆಯನ್ನು (ಸಾಮಾನ್ಯವಾಗಿ "ವೆಕ್ಸ್" ಎಂದು ಸಂಕ್ಷಿಪ್ತಗೊಳಿಸಲಾಗಿದೆ) ರೆಂಡರ್ಮ್ಯಾನ್ನ ನಂತರ ನಿಕಟವಾಗಿ ರೂಪಿಸಲಾಗಿದೆ. ಆದಾಗ್ಯೂ, ಸಂಪೂರ್ಣ 3ಡಿ ಪ್ಯಾಕೇಜ್ಗೆ ಅದರ ಏಕೀಕರಣ ಎಂದರೆ ಶೇಡರ್ ಬರಹಗಾರನು ಶೇಡರ್ ಒಳಗೆ ಮಾಹಿತಿಯನ್ನು ಪ್ರವೇಶಿಸಬಹುದು, ಇದು ಸಾಮಾನ್ಯವಾಗಿ ರೆಂಡರಿಂಗ್ ಸಂದರ್ಭದಲ್ಲಿ ಲಭ್ಯವಿಲ್ಲದ ವೈಶಿಷ್ಟ್ಯವಾಗಿದೆ. ಆರ್ಎಸ್ಎಲ್ ಮತ್ತು ವಿಇಎಕ್ಸ್ ನಡುವಿನ ಭಾಷಾ ವ್ಯತ್ಯಾಸಗಳು ಮುಖ್ಯವಾಗಿ ವಾಕ್ಯರಚನೆಯಿಂದ ಕೂಡಿವೆ, ಜೊತೆಗೆ ಹಲವಾರು ನೆರಳಿನ ಮೇಲ್ಭಾಗದ ಹೆಸರುಗಳ ಹೆಸರುಗಳಿಗೆ ಸಂಬಂಧಿಸಿದಂತೆ ವ್ಯತ್ಯಾಸಗಳಿವೆ. ಜೆಲಾಟೋ ಶೇಡಿಂಗ್ ಲಾಂಗ್ವೇಜ್ ಜೆಲಾಟೋದ ಶೇಡಿಂಗ್ ಭಾಷೆಯು, ಹೌದಿನಿಯ ವಿಇಎಕ್ಸ್ನಂತೆ, ರೆಂಡರ್ಮ್ಯಾನ್ನ ನಂತರ ನಿಕಟವಾಗಿ ರೂಪಿಸಲ್ಪಟ್ಟಿದೆ. ಜೆಲಾಟೋ ಶೇಡಿಂಗ್ ಲ್ಯಾಂಗ್ವೇಜ್ ಮತ್ತು ಆರ್ಎಸ್ಎಲ್ ನಡುವಿನ ವ್ಯತ್ಯಾಸಗಳು ಮುಖ್ಯವಾಗಿ ವಾಕ್ಯರಚನೆಯಾಗಿವೆ-ಜೆಲಾಟೋ ಕಾರ್ಯ ವ್ಯಾಖ್ಯಾನಗಳಲ್ಲಿ ಆರ್ಗ್ಯುಮೆಂಟ್ಗಳನ್ನು ಪ್ರತ್ಯೇಕಿಸಲು ಅಲ್ಪವಿರಾಮಚಿಹ್ನೆಗಳ ಬದಲಿಗೆ ಅರ್ಧವಿರಾಮಚಿಹ್ನೆಗಳನ್ನು ಬಳಸುತ್ತದೆ ಮತ್ತು ಕೆಲವು ಶೇಡೋಪ್ಗಳು ವಿಭಿನ್ನ ಹೆಸರುಗಳು ಮತ್ತು ನಿಯತಾಂಕಗಳನ್ನು ಹೊಂದಿರುತ್ತವೆ. ಓಪನ್ ಶೇಡಿಂಗ್ ಲ್ಯಾಂಗ್ವೇಜ್ (ಒಎಸ್ಎಲ್) ಅನ್ನು ಸೋನಿ ಪಿಕ್ಚರ್ಸ್ ಇಮೇಜ್ವರ್ಕ್ಸ್ ತನ್ನ ಆರ್ನಾಲ್ಡ್ ರೆಂಡರರರ್ನಲ್ಲಿ ಬಳಸಲು ಅಭಿವೃದ್ಧಿಪಡಿಸಿದೆ. ಇದನ್ನು ಬ್ಲೆಂಡರ್ನ ಸೈಕಲ್ಗಳು ರೆಂಡರ್ ಎಂಜಿನ್ನಿಂದಲೂ ಬಳಸಲಾಗುತ್ತದೆ. ಓಎಸ್ಎಲ್ನ ಮೇಲ್ಮೈ ಮತ್ತು ವಾಲ್ಯೂಮ್ ಶೇಡರ್ಗಳು ಮೇಲ್ಮೈಗಳು ಅಥವಾ ಪರಿಮಾಣಗಳು ಬೆಳಕನ್ನು ಹೇಗೆ ಚದುರಿಸುತ್ತವೆ ಎಂಬುದನ್ನು ಪ್ರಾಮುಖ್ಯತೆಯ ಮಾದರಿಯನ್ನು ಅನುಮತಿಸುವ ರೀತಿಯಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿಸುತ್ತವೆ; ಹೀಗಾಗಿ, ರೇ ಟ್ರೇಸಿಂಗ್ ಮತ್ತು ಜಾಗತಿಕ ಬೆಳಕನ್ನು ಬೆಂಬಲಿಸುವ ಭೌತಿಕ-ಆಧಾರಿತ ರೆಂಡರ್ಗಳಿಗೆ ಇದು ಸೂಕ್ತವಾಗಿದೆ. ನೈಜ-ಸಮಯದ ರೆಂಡರಿಂಗ್ಗಾಗಿ ಶೇಡಿಂಗ್ ಭಾಷೆಗಳ ನೈಜ-ಸಮಯದ ರೆಂಡರಿಂಗ್ ಈಗ ವ್ಯಾಪಕವಾಗಿದೆ. ಅವು ಹೆಚ್ಚಿನ ಹಾರ್ಡ್ವೇರ್ ಅಮೂರ್ತತೆ ಮತ್ತು ಹಿಂದಿನ ಮಾದರಿಗಳಿಗಿಂತ ಹೆಚ್ಚು ಹೊಂದಿಕೊಳ್ಳುವ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಮಾದರಿ ಎರಡನ್ನೂ ಒದಗಿಸುತ್ತವೆ, ಇದು ಹಾರ್ಡ್ ಕೋಡೆಡ್ ರೂಪಾಂತರ ಮತ್ತು ಛಾಯೆಯ ಸಮೀಕರಣಗಳನ್ನು ಹೊಂದಿದೆ. ಅವು ಕಡಿಮೆ ಓವರ್ಹೆಡ್ನೊಂದಿಗೆ ಹೆಚ್ಚು ನಿಯಂತ್ರಣ ಮತ್ತು ಉತ್ಕೃಷ್ಟವಾದ ವಿಷಯವನ್ನು ತಲುಪಿಸುತ್ತವೆ. ಜಿಪಿಯುನಲ್ಲಿ ನೇರವಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾದ ಶೇಡರ್ಗಳು ಹೆಚ್ಚಿನ-ಥ್ರೋಪುಟ್ ಸಾಮಾನ್ಯ ಸಂಸ್ಕರಣೆಗೆ ಉಪಯುಕ್ತವಾದವು ಏಕೆಂದರೆ ಅವುಗಳ ಸ್ಟ್ರೀಮ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಮಾದರಿಯು ಇದೇ ರೀತಿಯ ಯಂತ್ರಾಂಶದಲ್ಲಿ ಚಾಲನೆಯಲ್ಲಿರುವ ಕಂಪ್ಯೂಟ್ ಶೇಡರ್ಗಳ ಬೆಳವಣಿಗೆಗೆ ಕಾರಣವಾಯಿತು (ಸಹ ನೋಡಿಃ ಜಿಪಿಜಿಪಿಯು). ಐತಿಹಾಸಿಕವಾಗಿ, ಅಂತಹ ಕೆಲವು ಭಾಷೆಗಳು ಮಾರುಕಟ್ಟೆಯಲ್ಲಿ ಪ್ರಾಬಲ್ಯ ಹೊಂದಿದ್ದವು; ಅವುಗಳನ್ನು ಕೆಳಗೆ ವಿವರಿಸಲಾಗಿದೆ. ಓಪನ್ ಜಿಎಲ್ ಆರ್ಕಿಟೆಕ್ಚರ್ ರಿವ್ಯೂ ಬೋರ್ಡ್ 2002 ರಲ್ಲಿ ಎಆರ್ಬಿ ಅಸೆಂಬ್ಲಿ ಭಾಷೆಯನ್ನು ಪ್ರೊಗ್ರಾಮೆಬಲ್ ಗ್ರಾಫಿಕ್ಸ್ ಪ್ರೊಸೆಸರ್ಗಳಿಗಾಗಿ ಪ್ರಮಾಣಿತ ಕಡಿಮೆ-ಮಟ್ಟದ ಸೂಚನಾ ಸೆಟ್ ಆಗಿ ಸ್ಥಾಪಿಸಿತು. ಉನ್ನತ ಮಟ್ಟದ ಓಪನ್ಜಿಎಲ್ ಶೇಡಿಂಗ್ ಭಾಷೆಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಲೋಡ್ ಮಾಡಲು ಮತ್ತು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಎಆರ್ಬಿ ಜೋಡಣೆಗೆ ಕಂಪೈಲ್ ಮಾಡುತ್ತವೆ. ಉನ್ನತ ಮಟ್ಟದ ಛಾಯೆಯ ಭಾಷೆಗಳಂತಲ್ಲದೆ, ಎಆರ್ಬಿ ಜೋಡಣೆಯು ನಿಯಂತ್ರಣ ಹರಿವು ಅಥವಾ ಕವಲೊಡೆಯುವಿಕೆಯನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ. ಆದಾಗ್ಯೂ, ಕ್ರಾಸ್-ಜಿಪಿಯು ಪೋರ್ಟಬಿಲಿಟಿ ಅಗತ್ಯವಿದ್ದಾಗ ಇದನ್ನು ಬಳಸುವುದನ್ನು ಮುಂದುವರಿಸಲಾಗುತ್ತದೆ. ಜಿಎಲ್ಎಸ್ಎಲ್ ಅಥವಾ ಗ್ಲ್ಯಾಸ್ಲಾಂಗ್ ಎಂದೂ ಕರೆಯಲ್ಪಡುವ ಈ ಪ್ರಮಾಣೀಕೃತ ಛಾಯೆಯ ಭಾಷೆಯನ್ನು ಓಪನ್ಜಿಎಲ್ನೊಂದಿಗೆ ಬಳಸಲು ಉದ್ದೇಶಿಸಲಾಗಿದೆ. ಭಾಷೆಯು ಶೃಂಗ ಮತ್ತು ತುಣುಕು ಸಂಸ್ಕರಣೆಯನ್ನು ಒಂದೇ ಸೂಚನಾ ಗುಂಪಿನಲ್ಲಿ ಏಕೀಕರಿಸುತ್ತದೆ, ಷರತ್ತುಬದ್ಧ ಲೂಪ್ಗಳು ಮತ್ತು ಶಾಖೆಗಳನ್ನು ಅನುಮತಿಸುತ್ತದೆ. ಜಿಎಲ್ಎಸ್ಎಲ್ಗಿಂತ ಮೊದಲು ಎಆರ್ಬಿ ಅಸೆಂಬ್ಲಿ ಭಾಷೆ ಇತ್ತು. ಸಿಜಿ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ ಎನ್ವಿಡಿಯಾ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ ಸಿಜಿ ಭಾಷೆಯನ್ನು ಸುಲಭ ಮತ್ತು ಪರಿಣಾಮಕಾರಿ ಉತ್ಪಾದನಾ ಪೈಪ್ಲೈನ್ ಏಕೀಕರಣಕ್ಕಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. ಇದು ಎಪಿಐ ಸ್ವಾತಂತ್ರ್ಯವನ್ನು ಹೊಂದಿದೆ ಮತ್ತು ಆಸ್ತಿ ನಿರ್ವಹಣೆಯನ್ನು ಸುಧಾರಿಸಲು ಅನೇಕ ಉಚಿತ ಸಾಧನಗಳೊಂದಿಗೆ ಬರುತ್ತದೆ. 2012ರಲ್ಲಿ ಸಿ. ಜಿ. ಯ ಅಭಿವೃದ್ಧಿಯನ್ನು ನಿಲ್ಲಿಸಲಾಯಿತು, ಮತ್ತು ಈಗ ಆ ಭಾಷೆಯನ್ನು ಪದಚ್ಯುತಗೊಳಿಸಲಾಗಿದೆ. ಡೈರೆಕ್ಟ್ಎಕ್ಸ್ ಶೇಡರ್ ಅಸೆಂಬ್ಲಿ ಲಾಂಗ್ವೇಜ್ ಡೈರೆಕ್ಟ್3ಡಿ 8 ಮತ್ತು 9ರಲ್ಲಿರುವ ಶೇಡರ್ ಅಸೆಂಬ್ಲಿ ಲಾಂಗ್ವೇಜ್, ಶೇಡರ್ ಮಾಡೆಲ್ 1.0/1.1,2 ಮತ್ತು 3ರಲ್ಲಿರುವ ವರ್ಟೆಕ್ಸ್ ಮತ್ತು ಪಿಕ್ಸೆಲ್ ಶೇಡರ್ಗಳಿಗೆ ಮುಖ್ಯ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಲಾಂಗ್ವೇಜ್ ಆಗಿದೆ. ಇದು ಮಧ್ಯಂತರ ಶೇಡರ್ ಬೈಟ್ಕೋಡ್ನ ನೇರ ಪ್ರಾತಿನಿಧ್ಯವಾಗಿದ್ದು, ಇದನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಗ್ರಾಫಿಕ್ಸ್ ಚಾಲಕನಿಗೆ ರವಾನಿಸಲಾಗುತ್ತದೆ. ಡೀಬಗ್ ಉದ್ದೇಶಗಳಿಗಾಗಿ ಮಧ್ಯಂತರ ಬೈಟ್ ಕೋಡ್ನ ಪ್ರತಿನಿಧಿಯಾಗಿ ತನ್ನ ಕಾರ್ಯವನ್ನು ಉಳಿಸಿಕೊಂಡಿದ್ದರೂ, ಏಕೀಕೃತ ಶೇಡರ್ ಮಾದರಿ 4.0,4.1,5 ಮತ್ತು 5.1 ಅನ್ನು ಪ್ರೋಗ್ರಾಂ ಮಾಡಲು ಶೇಡರ್ ಅಸೆಂಬ್ಲಿ ಭಾಷೆಯನ್ನು ನೇರವಾಗಿ ಬಳಸಲಾಗುವುದಿಲ್ಲ. ಹೈ-ಲೆವೆಲ್ ಶೇಡಿಂಗ್ ಲಾಂಗ್ವೇಜ್ (ಎಚ್ಎಲ್ಎಸ್ಎಲ್) ಡೈರೆಕ್ಟ್ಎಕ್ಸ್ 9 ಮತ್ತು ಅದಕ್ಕಿಂತ ಹೆಚ್ಚಿನ ಮತ್ತು ಎಕ್ಸ್ಬಾಕ್ಸ್ ಗೇಮ್ ಕನ್ಸೋಲ್ಗಳಿಗಾಗಿ ಸಿ-ಶೈಲಿಯ ಶೇಡರ್ ಭಾಷೆಯಾಗಿದೆ. ಇದು ಎನ್ವಿಡಿಯಾದ ಸಿಜಿಗೆ ಸಂಬಂಧಿಸಿದೆ, ಆದರೆ ಇದನ್ನು ಡೈರೆಕ್ಟ್ಎಕ್ಸ್ ಮತ್ತು ಎಕ್ಸ್ಬಾಕ್ಸ್ ಮಾತ್ರ ಬೆಂಬಲಿಸುತ್ತದೆ. ಎಚ್ಎಲ್ಎಸ್ಎಲ್ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಡೈರೆಕ್ಟ್ಎಕ್ಸ್ ಶೇಡರ್ ಅಸೆಂಬ್ಲಿ ಭಾಷೆಗೆ ಸಮಾನವಾದ ಬೈಟ್ಕೋಡ್ ಆಗಿ ಸಂಕಲಿಸಲಾಗಿದೆ. ಎಚ್ಎಲ್ಎಸ್ಎಲ್ಅನ್ನು ಡೈರೆಕ್ಟ್ 3ಡಿ 9ರಲ್ಲಿ ಶೇಡರ್ ಅಸೆಂಬ್ಲಿ ಭಾಷೆಗೆ ಐಚ್ಛಿಕ ಪರ್ಯಾಯವಾಗಿ ಪರಿಚಯಿಸಲಾಯಿತು, ಆದರೆ ಡೈರೆಕ್ಟ್ 3ಡಿ 10 ಮತ್ತು ಅದಕ್ಕಿಂತ ಹೆಚ್ಚಿನದರಲ್ಲಿ ಅವಶ್ಯಕತೆಯಾಯಿತು, ಅಲ್ಲಿ ಶೇಡರ್ ಅಸೆಂಬ್ಲಿ ಭಾಷೆಯನ್ನು ಅಸಮ್ಮತಿಗೊಳಿಸಲಾಗಿದೆ. ಅಡೋಬ್ ಪಿಕ್ಸೆಲ್ ಬೆಂಡರ್ ಮತ್ತು ಅಡೋಬ್ ಗ್ರಾಫಿಕ್ಸ್ ಅಸೆಂಬ್ಲಿ ಲ್ಯಾಂಗ್ವೇಜ್ ಅಡೋಬ್ ಸಿಸ್ಟಮ್ಸ್ ಅಡೋಬ್ ಫ್ಲ್ಯಾಶ್ 10 ಎಪಿಐನ ಭಾಗವಾಗಿ ಪಿಕ್ಸೆಲ್ ಬೆಂಡರ್ ಅನ್ನು ಸೇರಿಸಿವೆ. ಪಿಕ್ಸೆಲ್ ಬೆಂಡರ್ ಪಿಕ್ಸೆಲ್ ಅನ್ನು ಮಾತ್ರ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಬಲ್ಲದು ಆದರೆ 3ಡಿ-ವೆರ್ಟೆಕ್ಸ್ ಡೇಟಾವನ್ನು ಅಲ್ಲ. ಫ್ಲ್ಯಾಶ್ 11 ಸ್ಟೇಜ್ 3ಡಿ ಎಂಬ ಸಂಪೂರ್ಣ ಹೊಸ 3ಡಿ ಎಪಿಐ ಅನ್ನು ಪರಿಚಯಿಸಿತು, ಇದು ಅಡೋಬ್ ಗ್ರಾಫಿಕ್ಸ್ ಅಸೆಂಬ್ಲಿ ಲ್ಯಾಂಗ್ವೇಜ್ (ಎಜಿಎಎಲ್) ಎಂಬ ತನ್ನದೇ ಆದ ಛಾಯೆಯ ಭಾಷೆಯನ್ನು ಬಳಸುತ್ತದೆ, ಇದು ಪೂರ್ಣ 3ಡಿ ವೇಗವರ್ಧನೆಯ ಬೆಂಬಲವನ್ನು ನೀಡುತ್ತದೆ. ಪಿಕ್ಸೆಲ್ ಬೆಂಡರ್ಗಾಗಿ ಜಿಪಿಯು ವೇಗವರ್ಧನೆಯನ್ನು ಫ್ಲ್ಯಾಶ್ 11.8 ರಲ್ಲಿ ತೆಗೆದುಹಾಕಲಾಗಿದೆ. ಎಜಿಎಎಲ್ ಒಂದು ಕೆಳಮಟ್ಟದ ಆದರೆ ಪ್ಲಾಟ್ಫಾರ್ಮ್-ಸ್ವತಂತ್ರ ಛಾಯೆಯ ಭಾಷೆಯಾಗಿದೆ, ಇದನ್ನು ಸಂಕಲಿಸಬಹುದು, ಉದಾಹರಣೆಗೆ, ಅಥವಾ ಜಿಎಲ್ಎಸ್ಎಲ್. ಪ್ಲೇಸ್ಟೇಷನ್ ಶೇಡರ್ ಲ್ಯಾಂಗ್ವೇಜ್ ಸೋನಿ ಪ್ಲೇಸ್ಟೇಷನ್ ಶೇಡರ್ ಲ್ಯಾಂಗ್ವೇಜ್ (ಪಿಎಸ್ಎಸ್ಎಲ್) ಅನ್ನು ಸಿಜಿ/ಎಚ್ಎಲ್ಎಸ್ಎಲ್ನಂತೆಯೇ ಛಾಯೆಯ ಭಾಷೆಯಾಗಿ ಘೋಷಿಸಿತು, ಆದರೆ ಪ್ಲೇಸ್ಟೇಷನ್ 4 ಗೆ ನಿರ್ದಿಷ್ಟವಾಗಿದೆ. ಪಿಎಸ್ಎಸ್ಎಲ್ ಪಿಸಿ ಯಲ್ಲಿ ಎಚ್ಎಲ್ಎಸ್ಎಲ್ ಶೇಡರ್ಗಳೊಂದಿಗೆ ಹೆಚ್ಚಾಗಿ ಹೊಂದಿಕೊಳ್ಳುತ್ತದೆ ಎಂದು ಹೇಳಲಾಗುತ್ತದೆ, ಆದರೆ ಪಿಎಸ್ 4 ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗೆ ಹೆಚ್ಚುವರಿ ವೈಶಿಷ್ಟ್ಯಗಳೊಂದಿಗೆ. ಮೆಟಲ್ ಶೇಡಿಂಗ್ ಲ್ಯಾಂಗ್ವೇಜ್ ಆಪಲ್ ಮೆಟಲ್ ಎಂಬ ಕಡಿಮೆ-ಮಟ್ಟದ ಗ್ರಾಫಿಕ್ಸ್ ಎಪಿಐ ಅನ್ನು ರಚಿಸಿದೆ, ಇದು 2012 ರಿಂದ ತಯಾರಿಸಿದ ಹೆಚ್ಚಿನ ಮ್ಯಾಕ್ಗಳು, 5 ಎಸ್ ನಿಂದ ಐಫೋನ್ಗಳು ಮತ್ತು ಐಪ್ಯಾಡ್ ಏರ್ನಿಂದ ಐಪ್ಯಾಡ್ಗಳಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಲೋಹವು ಮೆಟಲ್ ಶೇಡಿಂಗ್ ಲ್ಯಾಂಗ್ವೇಜ್ (ಎಂಎಸ್ಎಲ್) ಎಂಬ ತನ್ನದೇ ಆದ ಛಾಯೆಯ ಭಾಷೆಯನ್ನು ಹೊಂದಿದೆ, ಇದು ಸಿ + + 14 ಅನ್ನು ಆಧರಿಸಿದೆ ಮತ್ತು ಕ್ಲಾಂಗ್ ಮತ್ತು ಎಲ್ಎಲ್ವಿಎಂ ಬಳಸಿ ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗಿದೆ. ಎಂ. ಎಸ್. ಎಲ್. ಶೃಂಗ, ತುಣುಕು ಮತ್ತು ಗಣನೆಯ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಏಕೀಕರಿಸುತ್ತದೆ. ವೆಬ್ ಜಿಪಿಯು ಶೇಡಿಂಗ್ ಲ್ಯಾಂಗ್ವೇಜ್ ವೆಬ್ ಜಿಪಿಯು ಶೇಡಿಂಗ್ ಲ್ಯಾಂಗ್ವೇಜ್ (ಡಬ್ಲ್ಯುಜಿಎಸ್ಎಲ್) ವೆಬ್ ಜಿಪಿಯುಗೆ ಶೇಡರ್ ಭಾಷೆಯಾಗಿದೆ. ಅಂದರೆ, ವೆಬ್ ಜಿಪಿಯು ಎಪಿಐ ಅನ್ನು ಬಳಸುವ ಅಪ್ಲಿಕೇಶನ್ ಜಿಪಿಯುನಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಶೇಡರ್ಗಳು ಎಂದು ಕರೆಯಲ್ಪಡುವ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ವ್ಯಕ್ತಪಡಿಸಲು ಡಬ್ಲ್ಯುಜಿಎಸ್ಎಲ್ ಅನ್ನು ಬಳಸುತ್ತದೆ. ಅನುವಾದ ಶೇಡರ್ಗಳನ್ನು ಒಂದು ಛಾಯೆಯ ಭಾಷೆಯಿಂದ ಇನ್ನೊಂದಕ್ಕೆ ಪೋರ್ಟ್ ಮಾಡಲು, ಕೆಲವು ವಿಧಾನಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆಃ ಸಾಮಾನ್ಯ ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಿ. ಉದಾಹರಣೆಗೆ, ಸಿಜಿ/ಎಚ್ಎಲ್ಎಸ್ಎಲ್, ಜಿಎಲ್ಎಸ್ಎಲ್, ಮತ್ತು ಎಂಎಸ್ಎಲ್ ಎಲ್ಲವೂ ಸಿ ಪ್ರಿಪ್ರೊಸೆಸರ್ ಮ್ಯಾಕ್ರೋಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತವೆ, ಆದ್ದರಿಂದ ಎಲ್ಲಾ ವಿಭಿನ್ನ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಸಾಮಾನ್ಯ ಇಂಟರ್ಫೇಸ್ನಲ್ಲಿ ಕಟ್ಟಲು ಸಾಧ್ಯವಿದೆ. ಕವಾಟದ ಮೂಲ 2 ಮತ್ತು ಎನ್ವಿಡಿಯಾದ ಎಫ್ಎಕ್ಸ್ಎಎ 3.11 ಇದನ್ನು ಮಾಡುತ್ತವೆ. ಒಂದು ಭಾಷೆಯನ್ನು ಇನ್ನೊಂದು ಭಾಷೆಗೆ ಅನುವಾದಿಸಿ. ಉದಾಹರಣೆಗೆ, ಡೈರೆಕ್ಟ್ಎಕ್ಸ್ ಬೈಟೆಕೋಡ್ ಅನ್ನು ಎಚ್ಎಲ್ಎಸ್ಎಲ್ಸಿ ಮೂಲಕ ಜಿಎಲ್ಎಸ್ಎಲ್ಗೆ ಭಾಗಶಃ ಪರಿವರ್ತಿಸಬಹುದು ಮತ್ತು ಜಿಎಲ್ಎಸ್ಎಲ್ ಅನ್ನು ಎಚ್ಎಲ್ಎಸ್ಎಲ್ಗೆ ಪರಿವರ್ತಿಸಲು ಎಎನ್ಜಿಎಲ್ಇ ಮತ್ತು ಎಚ್ಎಲ್ಎಸ್ಎಲ್2ಜಿಎಲ್ಎಸ್ಎಲ್ನಂತಹ ಹಲವಾರು ಸಾಧನಗಳು ಅಸ್ತಿತ್ವದಲ್ಲಿವೆ. ಮಧ್ಯಂತರ ಭಾಷೆಯನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಿ. ಈ ಉದ್ದೇಶಕ್ಕಾಗಿ ಎಸ್. ಪಿ. ಐ. ಆರ್-ವಿ ಅನ್ನು ಭಾಗಶಃ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. ಇದನ್ನು ಎಚ್ಎಲ್ಎಸ್ಎಲ್ ಅಥವಾ ಜಿಎಲ್ಎಸ್ಎಲ್ನಿಂದ ಉತ್ಪಾದಿಸಬಹುದು ಮತ್ತು ಎಚ್ಎಲ್ಎಸ್ಎಲ್, ಜಿಎಲ್ಎಸ್ಎಲ್ ಅಥವಾ ಎಂಎಸ್ಎಲ್ ಆಗಿ ವಿಭಜಿಸಬಹುದು. ಉಲ್ಲೇಖಗಳು ಟಿಪ್ಪಣಿಗಳು ಓಪನ್ ಜಿಎಲ್ನ ಹಿಂದಿನ ಶೃಂಗ ಛಾಯೆಯ ಭಾಷೆಗಳಲ್ಲಿ (ಯಾವುದೇ ನಿರ್ದಿಷ್ಟ ಕ್ರಮದಲ್ಲಿ) EXT _ vertex _ shader, NV _ vertex _ ಪ್ರೋಗ್ರಾಮ್, ಮೇಲೆ ತಿಳಿಸಲಾದ ARB _ vertex _ ಪ್ರೋಗ್ರಾಂ, NV _ vertex _ ಪ್ರೋಗ್ರಾಂ 2 ಮತ್ತು NV _ vertex _ ಪ್ರೋಗ್ರಾಂ 3 ಸೇರಿವೆ. ಫ್ರಾಗ್ಮೆಂಟ್ ಶೇಡಿಂಗ್ಗಾಗಿ ಎನ್ವಿಆರ್ಎಸ್ ಬಹುಶಃ ಎನ್ವಿ _ ರಿಜಿಸ್ಟರ್ _ ಕಂಬೈನರ್ಗಳ ಆಧಾರದ ಮೇಲೆ ಉನ್ನತ ಮಟ್ಟದ ಅಮೂರ್ತತೆಯನ್ನು ಹೊಂದಿರುವ ಮೊದಲ ಶೇಡಿಂಗ್ ಭಾಷೆಯಾಗಿದೆ, ಪಿಕ್ಸೆಲ್ ಗಣಿತಕ್ಕಾಗಿ ಎನ್ವಿ _ ರಿಜಿಸ್ಟರ್ _ ಕಂಬಿನರ್ಸ್ 2 ಮತ್ತು ಎನ್ವಿ _ ಟೆಕ್ಸ್ಚರ್ _ ಶೇಡರ್, ಎನ್ವಿ _ ಟೆಕ್ಸ್ಚರ್ _ ಶೇಡರ್ 2 ಮತ್ತು ಟೆಕ್ಸ್ಚರ್ ಲುಕ್ಅಪ್ಗಳಿಗಾಗಿ ಎನ್ವಿ _ ಟೆಕ್ಸ್ಚರ್ _ ಶೇಡರ್ 3. ಎಟಿಐ _ ಫ್ರಾಗ್ಮೆಂಟ್ _ ಶೇಡರ್ "ಸ್ಟ್ರಿಂಗ್ ಆಧಾರಿತ" ಪಾರ್ಸಿಂಗ್ ಸೌಲಭ್ಯವನ್ನು ಸಹ ಒದಗಿಸಲಿಲ್ಲ (ಆದಾಗ್ಯೂ ಇದನ್ನು ನಂತರ ಎಟಿಐ _ ಟೆಕ್ಸ್ಟ್ _ ಫ್ರಾಗ್ಮೆಂಟ್ _ ಶೇಡರ್ ಸೇರಿಸಿದೆ). ಎಆರ್ಬಿ _ ಫ್ರಾಗ್ಮೆಂಟ್ _ ಪ್ರೋಗ್ರಾಂ ಬಹಳ ಯಶಸ್ವಿಯಾಗಿದೆ. ಎನ್ವಿ _ ಫ್ರಾಗ್ಮೆಂಟ್ _ ಪ್ರೋಗ್ರಾಂ ಮತ್ತು ಎನ್ವಿ _ ಫ್ರಾಗ್ಮೆಂಟ್ _ ಪ್ರೋಗ್ರಾಂ 2 ವಾಸ್ತವವಾಗಿ ಹೋಲುತ್ತವೆ, ಆದಾಗ್ಯೂ ಎರಡನೆಯದು ಇತರರಿಗೆ ಸಂಬಂಧಿಸಿದಂತೆ ಹೆಚ್ಚು ಸುಧಾರಿತ ಕಾರ್ಯವನ್ನು ಒದಗಿಸುತ್ತದೆ. ಎನ್ವಿಡಿಯಾ ಮುಖಪುಟದಿಂದ ಎಫ್ಎಕ್ಸ್ ಸಂಯೋಜಕ, ರೂಡಿ ಕಾರ್ಟೆಸ್ ಮತ್ತು ಸತ್ಯ ರಾಘವಚಾರಿಃ ದಿ ರೆಂಡರ್ಮ್ಯಾನ್ ಶೇಡಿಂಗ್ ಲಾಂಗ್ವೇಜ್ ಗೈಡ್, ಕೋರ್ಸ್ ಟೆಕ್ನಾಲಜಿ ಪಿಟಿಆರ್, 1 ಆವೃತ್ತಿ (ಡಿಸೆಂಬರ್ 27,2007), ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯ ವರ್ಗೀಕರಣ