سلام دوستان به دلیل در خواست های زیادی که درباره ی نحوه ی تبدیل ShaderToy glsl به Unity CG/Hlsl داشتم یک آموزش در این باره ساختم
https://forum.unity.com/threads/converting-a-shadertoy-multipass-shader-to-unity-hlsl.418238/
https://forum.unity.com/threads/converting-a-shadertoy-multipass-shader-to-unity-hlsl.418238/
Unity Forum
Converting a Shadertoy Multipass shader to Unity / HLSL ?
As a big Shadertoy fan - I've been enjoying porting these shaders into other platforms such as Processing (www.processing.org) - from here I have lots...
Shader Laboratory
Fog tutorial http://in2gpu.com/2014/07/22/create-fog-shader/
دوستان من سعی کردم این آموزش رو تو یونیتی پیاده سازی کنم اما یکسری مشکل داره که ان شاء الله بعداً اصلاحش می کنم
Shader Laboratory
نرمال مپ ها معمولا به دلایل مختلف در فضای تانژانت ذخیره می شوند (به دلیل دقت بهتر ،مپ ها می توانند بین چندین اشیاء به اشتراک گذاشته شوند، اشیا می توانند انیمیت شده باشند، و غیره). اگر می خواهید در فضای world space را نور پردازی کنید باید نرمال مپ در هر پیکسل(per…
در مبحث قبل اشاره ای به forward rendering شد
امروز می خوایم Forward rendering و Deferred Rendering رو با هم مقایسه کنیم
امروز می خوایم Forward rendering و Deferred Rendering رو با هم مقایسه کنیم
اگر شما یک توسعه دهنده بازی های سه بعدی هستید، احتمالا تا حالا اسم forward rendering و deferred rendering به گوشتون خورده. درواقع شما باید یکی از آن دو را انتخاب کنید تا در بازی خود استفاده کنید. اما آیا تا به حال فکر کردید آنها چه هستند ، چه تفاوتی دارند و کدام یک را باید انتخاب کنید؟
با ما همراه باشید تا جلو تر این دو شیوه ی رندرینگ را تعریف و مقایسه کنیم تا شما را از سردر گمی نجات دهیم.
با ما همراه باشید تا جلو تر این دو شیوه ی رندرینگ را تعریف و مقایسه کنیم تا شما را از سردر گمی نجات دهیم.
پایپ لاین های گرافیک مدرن
برای شروع نیاز داریم تا کمی درباره ی پایپ لاین های مدرن یا قابل برنامه نویسی بدانیم
در زمان قدیم ما در چیزی که پایپ لاین کارت های گرافیک داشتند محدود بودیم
جدا از فرستادن در یک تکسچر متفاوت نمی توانستیم بگیم چطور هر پیکسل باید تغییر کند،
و نمی توانستیم ورتکس ها را وقتی در کارت بودند پیچیده کنیم.
اما زمان تغییر کرده است و ما هم اکنون می توانیم پایپ لاین های گرافیکی قابل برنامه نویسی داشته باشیم.
ما اکنون می توانیم کُد را به کارت ویدیو ارسال کنیم تا تعیین کنیم چگونه پیکسل ها ظاهر شوند و آنها را با نرمال مپ نا هموار جلوه دهیم و بازتاب(reflection) را اضافه کنیم( و چیز های دیگری اضافه کنیم که واقعی تر به نظر برسد)
این کد شکل هندسی است، ورتکس و فرگمنت شیدر ، و اساساً آنها تعیین می کنند که ویدیو کارت چگونه آبجکت هاتون رو رندر کند.
برای شروع نیاز داریم تا کمی درباره ی پایپ لاین های مدرن یا قابل برنامه نویسی بدانیم
در زمان قدیم ما در چیزی که پایپ لاین کارت های گرافیک داشتند محدود بودیم
جدا از فرستادن در یک تکسچر متفاوت نمی توانستیم بگیم چطور هر پیکسل باید تغییر کند،
و نمی توانستیم ورتکس ها را وقتی در کارت بودند پیچیده کنیم.
اما زمان تغییر کرده است و ما هم اکنون می توانیم پایپ لاین های گرافیکی قابل برنامه نویسی داشته باشیم.
ما اکنون می توانیم کُد را به کارت ویدیو ارسال کنیم تا تعیین کنیم چگونه پیکسل ها ظاهر شوند و آنها را با نرمال مپ نا هموار جلوه دهیم و بازتاب(reflection) را اضافه کنیم( و چیز های دیگری اضافه کنیم که واقعی تر به نظر برسد)
این کد شکل هندسی است، ورتکس و فرگمنت شیدر ، و اساساً آنها تعیین می کنند که ویدیو کارت چگونه آبجکت هاتون رو رندر کند.
فوروارد رندرینگ استاندارد است،تکنیک رندر بیرون جعبه (out-of-the-box) که بیشتر موتورها استفاده می کند.شما شکل هندسی را برای کارت گرافیک تهیه می کنید،شکل هندسی آن را طرح ریزی ، و آن را به ورتکس ها تقسیم می کند و سپس آنها تبدیل و جدا به فرگمنت یا پیکسل هایی می کند که رفتار نهایی رندر را قبل از اینکه روی صفحه فرستاده شوند بیان می کند.