Forwarded from Kamali
جاهایی زیادی استفاده میشه که مهمترینش Raymarching هست
http://www.gameology.ir/index.php?pid=read&id=211
http://www.gameology.ir/index.php?pid=read&id=211
www.gameology.ir
گیمولوژی | رسانه تحلیلی بازی سازی | مدلسازی با Raymarching و میادین فاصله در یونیتی
هدف من از این مطلب این است که به شما نشان دهم این روش قدیمیتر رندر، میتواند به بازی بازگردد و با استفاده از پردازش موازی و تکنیکهای محاسبه شده بهینهسازی شود! GPU در حال حاضر بسیار قدرتمند است و از آن برای شتاب فیزیک و حتی یادگیری هوش مصنوعی عمیق استفاده…
Forwarded from Deleted Account
👍🏻👍🏻👍🏻 حتما باید مطلب خوبی باشه / چون تا حالا اسمش رو نشنیده بودم
Forwarded from Kamali
بله مهمه
بعضی چیز ها هست که با مدلسازی نمیشه شبیه ساخت و اگر هم بشه ساخت triangle های خیلی زیادی باید استفاده بشه
بعضی چیز ها هست که با مدلسازی نمیشه شبیه ساخت و اگر هم بشه ساخت triangle های خیلی زیادی باید استفاده بشه
Forwarded from Kamali
و این قدرت Raymarching
همه جزئیات تصویر سمت راست تو دوتا مثلثه سمت چپه که به صورت وایر فریم نشون دادم!!!
https://github.com/smkplus/UnityRayMarching
تو گیت هابم گذاشتم می تونید بررسی کنید
همه جزئیات تصویر سمت راست تو دوتا مثلثه سمت چپه که به صورت وایر فریم نشون دادم!!!
https://github.com/smkplus/UnityRayMarching
تو گیت هابم گذاشتم می تونید بررسی کنید
Forwarded from Kamali
اگر بخواهیم ابر یا کهکشان رو شبیه سازی کنیم حتی با پارتیکل تو انجین های بازی سازی سنگین میشه
به خاطر همین از این روش استفاده می کنند تا هم خروجی واقعی تری داشته باشند و هم خروجی بهینه تری
البته این روش خیلی سنگینه اما نسبت به پارتیکل به نظرم ارزشش رو داره
به خاطر همین از این روش استفاده می کنند تا هم خروجی واقعی تری داشته باشند و هم خروجی بهینه تری
البته این روش خیلی سنگینه اما نسبت به پارتیکل به نظرم ارزشش رو داره
Forwarded from Kamali
تو این روش ما با استفاده از توابع ریاضی اجسام هندسی رو می سازیم
بعد شما می تونیم خارج از پایپ لاین رندر انجین بازی سازی بیایم و اون آبجکت رو رندر کنیم
بعد شما می تونیم خارج از پایپ لاین رندر انجین بازی سازی بیایم و اون آبجکت رو رندر کنیم
Forwarded from Kamali
Forwarded from Kamali
اولین چیزی که مهمه شما باید بدونی ورودی ها چی هستند
در شکل بالا p همون position هست و s همون scale هست
در شکل بالا p همون position هست و s همون scale هست
Forwarded from Kamali
1.همیشه باید قبل از رسم یک شکل تعریفشو بدونیم و همچنین
تعریف دایره : دایره مکان هندسی نقاطی از صفحه است که فاصلهشان از نقطهٔ ثابتی واقع در آن صفحه، مقدار ثابتی باشد. نقطهٔ ثابت مرکز دایره و مقدار ثابت اندازهٔ شعاع دایره نامیده میشود.
2.همیشه بهتره دوبعدیشو در نظر بگیریم چون سه بعد شاید برامون یکم پیچیده باشه
به عنوان مثال به جای اینکه sphere رو تصور کنیم circle رو تصور می کنیم چون رسم و تصورش راحت تره
تعریف دایره : دایره مکان هندسی نقاطی از صفحه است که فاصلهشان از نقطهٔ ثابتی واقع در آن صفحه، مقدار ثابتی باشد. نقطهٔ ثابت مرکز دایره و مقدار ثابت اندازهٔ شعاع دایره نامیده میشود.
2.همیشه بهتره دوبعدیشو در نظر بگیریم چون سه بعد شاید برامون یکم پیچیده باشه
به عنوان مثال به جای اینکه sphere رو تصور کنیم circle رو تصور می کنیم چون رسم و تصورش راحت تره
Forwarded from Kamali
شکل دومی محاسباتش خیلی شبیه به شکل اولی هست اما دو تفاوت داره یکی از تابع max و یکی از تابع abs یا absolution (قدرمطلق) استفاده شده که در ادامه بهش می پردازم
Forwarded from Kamali
تو ریاضیات ما یک چیزی داریم تحت عنوان Positive and negative parts
https://en.wikipedia.org/wiki/Positive_and_negative_parts
https://en.wikipedia.org/wiki/Positive_and_negative_parts
Forwarded from Kamali
حالا این به چه درد می خوره!
به درد discard کردن می خوره
به درد discard کردن می خوره
Forwarded from Kamali
من تو ShaderToy قدم به قدم پیش رفتم اصلاً بدون این تابع هم میشه با if-else statement
Forwarded from Kamali
float udBox( vec3 p, vec3 b )
{
در محور x شکل رو ادامه میدیم
if(p.x<0.){
p.x = 0.;
}
return length(p)-b;
}
{
در محور x شکل رو ادامه میدیم
if(p.x<0.){
p.x = 0.;
}
return length(p)-b;
}
Forwarded from Kamali
float udBox( vec3 p, vec3 b )
{
در محور x شکل رو ادامه میدیم
if(p.x<0.){
p.x = 0.;
}
در محور y شکل رو ادامه میدیم
if(p.y<0.){
p.y = 0.;
}
return length(p)-b;
}
{
در محور x شکل رو ادامه میدیم
if(p.x<0.){
p.x = 0.;
}
در محور y شکل رو ادامه میدیم
if(p.y<0.){
p.y = 0.;
}
return length(p)-b;
}