Shader Laboratory
846 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
Forwarded from Kamali
در مقایسه با فاصله اقلیدس، محاسبه آن بسیار ارزان تره.

با وجود بسیار متفاوت بودن، فاصله های اقلیدسی و منهتن هر دو موارد خاصی از یک معیار کلی تر هستند: فاصله Minkowsi. برای درک بهتر یک مثال می زنم عملگر های ضرب و تقسیم شبیه هم هستند (یک عدد تقسیم بر 10 برابره با یک عدد ضربدر 1/10) ، حتی ریشه و توان رسانی عمیقا به هم متصله.
به یاد داشته باشید جذر یک عدد در مبنای n برابره با یک عدد به توان 1 تقسیم بر n ، پس می تونیم فاصله Minkowski رو اینطور معرفی کنیم:

https://en.wikipedia.org/wiki/Minkowski_distance
Forwarded from Kamali
Forwarded from Kamali
Forwarded from Kamali
از voronoi برای تقسیم بندی یک مش استفاده میشه
مثل پلاگین Rayfire
Forwarded from Kamali
تو مسیر یابی هم ازش استفاده میشه
Forwarded from Kamali
اما الگوریتمش تو برنامه نویسی

استفاده از میدان فاصله برای یافتن نزدیک ترین فاصله

نویز سلولی بر اساس رشته های فاصله است، فاصله تا نزدیک ترین مجموعه ای از نقاط ویژگی. فرض کنید می خواهیم فاصله 4 نقطه را پیدا کنیم. باید چکار کنیم؟ خوب، برای هر پیکسل ما می خواهیم محاسبه فاصله تا نزدیک ترین نقطه. این به این معنی است که ما باید از طریق همه نقاط تکرار کنیم، فاصله آنها را به پیکسل فعلی محاسبه کنیم و ارزش را برای نزدیکترین ذخیره کنیم.
Forwarded from Kamali
یه راهش اینه که دونه دونه حداقل فاصله نسبت به نقاط دیگه رو بدست بیاریم که خیلی سخته
Forwarded from Kamali
راه درستش اینه که یه حلقه for بنویسیم و مینیمم فاصله رو نسبت به نقاط دیگه پیدا کنیم
Forwarded from Kamali
Forwarded from Kamali
جلوگیری از افزایش میزان Alpha
Deleted Account
Photo
دوستان قبلاً یکی از دوستان سوال خوبی پرسیده بود
گفته بود Back to front ordering یعنی چی!
که براش جواب دقیقی پیدا کردم
این sorting ترنسپرنت هست
یعنی فرض کنید دو تا اسپرایت transparent دارید و یک اسپرایت معمولی،شما می تونید برای رندر شدنش ترتیب تعیین کنید
Shader Laboratory
http://www.ventuz.com/support/help/latest/RealtimeRendering.html
In the left configuration, the red glass doesn't look transparent at all. Why is that so? The render order of the objects is red then green then blue. When red is rendered, the Z-values in the depth buffer are set and no fragment from another triangle with a farther away Z-value will be rendered at all. So there is no chance to blend green and blue because their fragments are discarded before blending.

In the center configuration, depth testing has been artificially turned off. First red is rendered with nothing to blend it with since it is the first thing rendered. Then green is rendered and blended and blue is rendered and blended. Each time the new object will take 50% of itself and 50% from the already rendered objects, so at the time blue is rendered, only 25% of red will be left.

In the right configuration, depth testing has been re-enabled but the rendering order has been changed to back to front: First blue then green then red. When red is rendered, it takes 50% of itself and 50% of the already rendered objects which creates the correct effect.
Shader Laboratory
http://www.ventuz.com/support/help/latest/RealtimeRendering.html
در تنظیمات چپ، شیشه قرمز شفاف به نظر نمی رسد. چرا اینطور است؟ ترتیب رندر اشیاء قرمز سپس سبز و سپس آبی رنگ است. هنگامی که قرمز نمایش داده می شود، مقادیر Z در عمق بافر تنظیم می شوند و هیچ قطعه ای از مثلث دیگری با Z-value دورتر ارائه نمی شود. بنابراین هیچ فرصتی برای ترکیب سبز و آبی وجود ندارد، زیرا قطعات قبل از مخلوط کردن آنها از بین می روند.

در تنظیمات وسطی، آزمایش عمق بطور مصنوعی خاموش شده است. اول قرمز به تنهایی رندر شده تا با زمانی که اولین چیزی است که رندر شده ترکیب شود. سپس سبز و آبی رنگ رندر و ترکیب شده است. هر بار که جسم جدید 50٪ از خود و 50٪ از اشیاء که قبلا رندر شده است را بگیرد، بنابراین در این زمان آبی رنگ رندر می شود، فقط 25٪ قرمز باقی می ماند.

در تنظیمات سمت راست، تست عمق دوباره فعال شده است، اما ترتیب رندر به عقب به جلو تغییر یافته است: ابتدا آبی و سپس سبز و سپس قرمز. هنگامی که قرمز رندر می شود، 50٪ از خود و 50٪ از اشیاء که قبلا رندر شده است، اثر صحیح را ایجاد می کنند.