نمی دومن چرا ما عادت کردیم فقط شروع کنیم به صحبت زدن بیخود. مهرداد آقا شیدر هیچ ربطی و اما هیچ ربطی به سایه زنی نداره.
اصطلاحا به برنامه ای که عملیات گرافیکی رو کنترل میکنه و تصمیم میگیره که گرافیک نهایی تولید شده رو تصویر به چه شکل باشه شیدر گفته میشه. اصولا وقتی از شیدرها استفاده میشه که کانال گرافیکی ثابت پردازنده گرافیکی جواب گوی تمامی نیازهای ما نباشه. در این موارد برنامه نویسان گرافیک یه برنامه مینویسن که به جال کانال پردازش قبلی میشینه و اعمال گرافیکی رو کنترل میکنه. به این برنامه ها که به وسیله gpu اجرا میشن اصطلاحا شیدر گفته میشه. هر برنامه شیدر از دو و یا سه قسمت که به ترتیب عبارتند از vertex shader، pixel shader و یا geometry shader تشکیل شده.
شیدرهای vertex برنامه هایی هستند که رئوس ارسال شده به سمت پردازنده گرافیکی رو پردازش میکنن و در نهایت حداقل یک موقعیت راس رو تولید می کنند. معمولترین کاری که این شیدرها انجام میدن جا به جا کردن موقعیت یک راس با توجه به بافت و یا موارد دیگه و محاسبه مختصات بافتها هستش.
شیدرهای پیکسل و یا فرگمنت در OpenGL مسئول پردازش تک تک پیکسها هستند به شکلی که بعد از پایان پردازش رنگ یک پیکسل رو مشخص میکنن. این نوع شیدها بسیار پر کاربدر هستند و افکتهای خیلی زیادی رو می توان با آنها به سادگی پیاده سازی کرد.
شیدرهای geometry که بعد از شیدر مدل چهار وارد کارتهای گرافیکی شدند (تنها سری 8 هزار به بالای geforce از اونها پشتیبانی میکنه). این شیدرها بر اساس مدلهای هندسی سه بعدی همانند مثلث و یا مربع عمل میکنن که با کمک اونها میشه حجم سازی رو خیلی خوب پیاده کرد. و در سایه های نرم ، مه، تکنیک relife و ... بسیار موثر عمل می کنند.
کارت گرافیک های امروز بجای Pixel Shader دارای Stream Processor می باشند که می تواند علاوه بر پردازش های گرافیکی, پردازش هایی را که بر عهده ی CPU هست را نیر انجام بدهد کاری که به آن GPGPU گفته می شود.
کارت گرافیک های امروز بجای Pixel Shader دارای Stream Processor می باشند که می تواند علاوه بر پردازش های گرافیکی, پردازش هایی را که بر عهده ی CPU هست را نیر انجام بدهد کاری که به آن GPGPU گفته می شود.
چه ربطی داره دوست عزیز
گرافیک های سری های قبلی هم stream processor داره!!
واحد پردازش گر ربطش به pixel shader چیه؟!
در ضمن اطلاعات من بهم میگه GPGPU مخفف General-purpose computing on graphics processing units اشاره میکنه به فعالیت gpu ها برای انجام فعالیت های متوازن که به برنامه نویس قدرت نوشتن برنامه ای که توسط کارت گرافیک پردازش بشه رو میده ولی ربطی به اینکه این استفاده در افکت های گرافیکی است نداره!!