Shader Laboratory
847 subscribers
265 photos
15 videos
59 files
404 links
Shader Laboratory
a channel about shaders in telegram

ID : @smkgames

MyStack : goo.gl/smMuqe 😎👌
Download Telegram
Shader Laboratory
Fog tutorial http://in2gpu.com/2014/07/22/create-fog-shader/
دوستان من سعی کردم این آموزش رو تو یونیتی پیاده سازی کنم اما یکسری مشکل داره که ان شاء الله بعداً اصلاحش می کنم
DepthTest.shader
7 KB
پیاده سازی Depth
اگر شما یک توسعه دهنده بازی های سه بعدی هستید، احتمالا تا حالا اسم forward rendering و deferred rendering به گوشتون خورده. درواقع شما باید یکی از آن دو را انتخاب کنید تا در بازی خود استفاده کنید. اما آیا تا به حال فکر کردید آنها چه هستند ، چه تفاوتی دارند و کدام یک را باید انتخاب کنید؟
با ما همراه باشید تا جلو تر این دو شیوه ی رندرینگ را تعریف و مقایسه کنیم تا شما را از سردر گمی نجات دهیم.
Deferred Rendering for many lights
پایپ لاین های گرافیک مدرن

برای شروع نیاز داریم تا کمی درباره ی پایپ لاین های مدرن یا قابل برنامه نویسی بدانیم
در زمان قدیم ما در چیزی که پایپ لاین کارت های گرافیک داشتند محدود بودیم
جدا از فرستادن در یک تکسچر متفاوت نمی توانستیم بگیم چطور هر پیکسل باید تغییر کند،
و نمی توانستیم ورتکس ها را وقتی در کارت بودند پیچیده کنیم.
اما زمان تغییر کرده است و ما هم اکنون می توانیم پایپ لاین های گرافیکی قابل برنامه نویسی داشته باشیم.
ما اکنون می توانیم کُد را به کارت ویدیو ارسال کنیم تا تعیین کنیم چگونه پیکسل ها ظاهر شوند و آنها را با نرمال مپ نا هموار جلوه دهیم و بازتاب(reflection) را اضافه کنیم( و چیز های دیگری اضافه کنیم که واقعی تر به نظر برسد)
این کد شکل هندسی است، ورتکس و فرگمنت شیدر ، و اساساً آنها تعیین می کنند که ویدیو کارت چگونه آبجکت هاتون رو رندر کند.
دید اجمالی از کارت گرافیک قابل برنامه نویسی
Forward Rendering
فوروارد رندرینگ استاندارد است،تکنیک رندر بیرون جعبه (out-of-the-box) که بیشتر موتورها استفاده می کند.شما شکل هندسی را برای کارت گرافیک تهیه می کنید،شکل هندسی آن را طرح ریزی ، و آن را به ورتکس ها تقسیم می کند و سپس آنها تبدیل و جدا به فرگمنت یا پیکسل هایی می کند که رفتار نهایی رندر را قبل از اینکه روی صفحه فرستاده شوند بیان می کند.
Forward rendering: Geometry shader to vertex shader to fragment Shader
Shader Laboratory
Forward rendering: Geometry shader to vertex shader to fragment Shader
این روش نسبتا خطی است و هر شکل هندسی یک بار در زمان به از خط لوله عبور می کند تا تصویر نهایی را ایجاد کند.
Deferred Rendering
همانطور که از نامش بر می آید ، در رندر تأخیر دارد یعنی رندرینگ تا زمانی که تمام شکل های هندسی لوله را عبور نکند، انجام نمی شود لذا کمی به تعویق می افتد.در نهایت تصویر نهایی پس از اعمالShading تولید می شود.

حالا، چرا این کار را می کنیم؟
Deferred rendering: Geometry to vertex to fragment shaders. Passed to multiple render targets, then shaded with lighting.
نور پردازی تأخیر افتاده یک deferred rendering اصلاح شده است که سایز G-buffer
را با استفاده از پاس های بیشتر در Scene کاهش می دهد