سنگهای GPU اکنون ، درست در اینجا ، بصورت آنلاین در دسترس است. شما می توانید یک نسخه چاپی زیبا از این کتاب و سایر موارد موجود در این سریال را با 30 ٪ تخفیف از Informit و Addison-Wesley خریداری کنید.
محتوای CD ، از جمله نسخه ی نمایشی و محتوا ، در وب و برای بارگیری در دسترس است.
فصل 11. نقشه سایه ضد آژانس
مایکل بونل نویدیا
استودیوهای انیمیشن فابیو Pellacini Pixar
11. 1 مقدمه
نقشه برداری سایه روش انتخاب برای ایجاد سایه ها در نمایش های سطح بالا برای تصاویر متحرک و تلویزیون است. با این حال ، استفاده از نقشه برداری از سایه در برنامه های زمان واقعی مانند بازی های ویدیویی به دلیل مشکلات غیرقانونی در قالب جاسی های بزرگنمایی مشکل ساز بوده است. در این فصل چگونگی کاهش قابل توجهی در نقشه سایه در یک سایه بان نشان داده شده است. این توضیح می دهد که چگونه می توان نسخه ساده ای از فیلتر کننده درصد را اجرا کرد که بیشترین استفاده را از سخت افزار سایه دار GPU برای ارائه سایه های دارای لبه نرم و ضد آن با سرعت در زمان واقعی فراهم می کند.
نقشه برداری سایه شامل طرح نقشه سایه در هندسه و مقایسه مقادیر نقشه سایه با عمق نمای نور در هر پیکسل است. اگر طرح ریزی باعث بزرگ شدن نقشه سایه شود ، در قالب جاگیهای بزرگ و ناخوشایند در مرزهای سایه ظاهر می شود. معمولاً با استفاده از نقشه های سایه با وضوح بالاتر و افزایش وضوح تصویر سایه ، با استفاده از تکنیک هایی مانند نقشه های سایه چشم انداز (Stamminger and Drettakis 2002) می توان کاهش یافت. با این حال ، استفاده از تکنیک های نقشه برداری سایه چشم انداز و افزایش وضوح نقشه سایه هنگامی که نور تقریباً به موازات سطح سایه دار حرکت می کند ، کار نمی کند ، زیرا بزرگنمایی به بی نهایت نزدیک می شود.
نرم افزار رندر رده بالا با استفاده از تکنیکی به نام فیلتر کننده درصد ، مشکل بی پروا را حل می کند.
فیلتر 11. 2 درصد
بر خلاف بافت های عادی ، بافت های نقشه سایه را نمی توان برای از بین بردن عرفان پیش بینی کرد. در عوض ، مقایسه نقشه های سایه چندگانه در هر پیکسل انجام می شود و به طور متوسط در کنار هم قرار می گیرد. این تکنیک به عنوان فیلتر کننده درصد فلزی (PCF) نامیده می شود زیرا درصد سطح سطح نزدیک به نور را محاسبه می کند و بنابراین در سایه نیست.
الگوریتم اصلی PCF که در ریوز و همکارانش توضیح داده شده است. در سال 1987، خواستار نقشه برداری از منطقه شد تا در فضای نقشه سایه سایه زده شود و از آن منطقه به صورت تصادفی (یعنی تصادفی) نمونه برداری شود. این الگوریتم ابتدا با استفاده از موتور رندر REYES پیاده سازی شد، بنابراین ناحیه ای که باید سایه دار شود به معنای یک ریز چندضلعی چهار وجهی بود. شکل 11-1 نمونه ای از آن پیاده سازی را نشان می دهد.

در پیاده سازی خود، الگوریتم PCF را کمی تغییر داده ایم تا اعمال آن آسان و کارآمد باشد. به جای محاسبه منطقه ای که در فضای نقشه سایه قرار می گیرد، به سادگی از یک منطقه نمونه 4×4 تکسل در همه جا استفاده می کنیم. این ناحیه به اندازه ای بزرگ است که به طور قابل توجهی همخوانی را کاهش دهد، اما آنقدر بزرگ نیست که به تعداد زیادی نمونه یا تکنیک های نمونه برداری تصادفی برای دستیابی به نتایج خوب نیاز داشته باشد. توجه داشته باشید که منطقه نمونه برداری با مرزهای texel تراز نیست. یک منطقه هم تراز به اثر ضد آلیاسینگ مورد نظر ما دست نخواهد یافت.
سایه زن های سخت افزار روی پیکسل ها کار می کنند، نه بر روی ریز چند ضلعی ها، بنابراین تطبیق اجرای اصلی شامل تبدیل یک چند ضلعی چهار وجهی که یک پیکسل صفحه نمایش را نشان می دهد به فضای نقشه سایه برای محاسبه منطقه نمونه است. پیاده سازی ما به جای آن از یک منطقه نمونه با اندازه ثابت استفاده می کند. یک منطقه با اندازه ثابت به ما امکان می دهد از یک تبدیل پیچیده بگذریم و به ما امکان می دهد تا با استفاده از نمونه گیری تصادفی، یک درصد سایه دقیق را به جای یک درصد تقریبی محاسبه کنیم. شکل 11-2 را ببینید.

شکل 11-2 نمونه برداری از مساحت 4x4 Texels
11. 3 اجرای Brute-Force
پردازنده های گرافیکی انویدیا برای نمونه برداری از نقشه های سایه ای، فیلترینگ درصد نزدیک تری دارند. سخت افزار چهار مقایسه عمقی انجام می دهد و از قسمت کسری مختصات بافت برای درون یابی دوخطی مقدار سایه استفاده می کند. نتیجه سایه درصدی است که یک منطقه نمونه به اندازه تکل در سایه است. شکل 11-3 را ببینید. یک منطقه نمونه با اندازه تکسل به اندازه کافی بزرگ نیست که به طور موثری aliasing را حذف کند، اما می توان منطقه را با میانگین 16 مقدار مقایسه سایه به اندازه تکسل 4x4 افزایش داد. آفست برای x و y برای نمونه هایی با فاصله یک واحد تکسل 1. 5-، 0. 5-، 0. 5 و 1. 5 است.

شکل 11-3 استفاده از سخت افزار
تابع زیر را می توان برای خواندن نقشه بافت پیش بینی شده با یک افست داده شده در واحد تکسل استفاده کرد. متغیرمقیاس متنیهست یکشناور2شامل 1/عرض و 1/ارتفاع نقشه سایه است.
ما می توانیم نسخه 16 نمونه ای را در یک برنامه Fragment به صورت زیر پیاده سازی کنیم:
11. 4 استفاده از نمونه های کمتر
عملکرد روش بی رحمانه بهتر از آن چیزی است که انتظار می رود. بسیاری از واکشی های بافت در حافظه پنهان بافت قرار دارند زیرا تضمین می شود که نزدیک یکدیگر باشند. با این حال ، اگر الگوی نمونه برداری را در هر پیکسل تغییر دهیم ، می توانیم تنها با چهار نمونه در هر پیکسل نتایج مشابهی بدست آوریم.
تکنیک چهار نمونه ای نتایج مشابه با نتایج ایجاد شده توسط داده های سیاه و سفید را برای ارائه یک تصویر با مقیاس خاکستری ایجاد می کند. اندازه منطقه نمونه یکسان است ، اما ما فقط از چهار نمونه از 16 نمونه در هر پیکسل استفاده می کنیم. مجموعه چهار نمونه بسته به محل صفحه نمایش متفاوت است. شکل 11-4 الگوی نمونه برداری مورد استفاده در نسخه چهار نمونه ای از سایه بان را نشان می دهد تا چهار از 16 مکان نمونه ممکن را در هر پیکسل انتخاب کند.

شکل 11-4 الگوی نمونه گیری مورد استفاده برای نسخه چهار نمونه ای از سایه بان
ما می توانیم نسخه چهار نمونه ای را به شرح زیر پیاده سازی کنیم:
11. 5 چرا کار می کند
چگونه می توانیم سایه های آنتیایاس با یک منطقه نمونه با اندازه ثابت داشته باشیم حتی اگر طرح ریزی بافت بتواند نقشه سایه را تا حد زیادی بزرگنمایی کند؟پاسخ ساده است: وقتی یک بافت بزرگ می شود ، نمونه های نقشه بافت برای پیکسل های مجاور نزدیک به یکدیگر هستند. اگر نمونه ها به یکدیگر نزدیک باشند و منطقه نمونه برداری نسبتاً بزرگ باشد ، فقط می توان تفاوت بسیار کمی بین مقادیر سایه وجود داشت ، زیرا مناطق نمونه با هم همپوشانی زیادی دارند. شکل 11-5 نشان می دهد که چگونه مناطق نمونه برای پیکسل های مجاور هنگام بزرگ شدن نقشه سایه همپوشانی دارند.

شکل 11-5 مناطق نمونه گیری با هم همپوشانی برای پیکسل های مجاور
هرچه نقشه سایه بیشتر بزرگ شود ، تفاوت بین پیکسل های مجاور کوچکتر و انتقال بین مناطق سایه دار و غیرقابل توصیف کوچکتر است. این سخت افزار این درصد سایه را با هشت بیت دقت محاسبه می کند ، بنابراین حتی در مورد بزرگنمایی شدید و سایه های با کنتراست بالا ، همیشه یک انتقال سایه صاف و بدون باند وجود خواهد داشت. اگر مناطق سایه بسیار نزدیک به یکدیگر باشند ، مقدار سایه فقط با کمترین میزان قابل توجه برای خروجی هشت بیت در هر جزء متفاوت خواهد بود. این در شکل های 11-6 ، 11-7 و 11-8 نشان داده شده است که به ترتیب سایه هایی را برای یک مدل نینجا با نمونه 1 ، 4 و 16 نشان می دهد. شکل 11-9 بزرگنمایی سایه انگشت شست نینجا در هر یک از سه مورد را نشان می دهد. به کیفیت سایه بسیار بهبود یافته در مورد 16 نمونه توجه کنید.

شکل 11-6 سایه نینجا با یک نمونه در هر پیکسل

شکل 11-7 سایه نینجا با چهار نمونه از بین رفته در هر پیکسل

شکل 11-8 سایه نینجا با شانزده نمونه در هر پیکسل

شکل 11-9 سایه ها بزرگ شدند
11. 6 نتیجه گیری
نقشه برداری Shadow یک روش محبوب برای ارائه سایه ها است ، اما از آثار باستانی رنج می برد. ما می توانیم با میانگین مقادیر چند نقشه سایه ، نقشه سایه را به شدت کاهش دهیم. اگر از سخت افزار نقشه برداری سایه GPU استفاده کنیم و از تکنیک های نمونه برداری هوشمندانه استفاده کنیم ، می توانیم سایه های با لبه نرم و ضد آن را با نرخ فریم بالا ارائه دهیم.
11. 7 منابع
فرناندو ، رندیما و مارک کیلگارد. 2003. آموزش CG. آدیسون-وسلی. این مقدمه به زبان CG بخش خوبی در نقشه برداری سایه دارد.
Reeves ، W. T. ، D. H. Salesin و P. L. Cook. 1987. "ارائه سایه های ضدیاس با نقشه های عمق."گرافیک رایانه 21 (4) (مجموعه مقالات SIGGRAPH 87).
Stamminger ، Marc و George Drettakis. 2002. "نقشه های سایه چشم انداز."در مجموعه مقالات Siggraph 2002 ، صص 557-562.
کپی رایت
بسیاری از تعیین شده توسط تولید کنندگان و فروشندگان برای تمایز محصولات خود به عنوان علائم تجاری ادعا می شود. در جایی که این نام ها در این کتاب ظاهر می شوند ، و آدیسون وسلی از ادعای علامت تجاری آگاه بود ، این نام ها با حروف بزرگ اولیه یا در همه پایتخت ها چاپ شده است.
نویسندگان و ناشر در تهیه این کتاب مراقبت کرده اند ، اما هیچ گونه ضمانت بیان شده ای از هر نوع ارائه نمی دهند و هیچ مسئولیتی در قبال خطاها یا حذف ها ندارند. هیچ مسئولیتی در قبال خسارتهای حاد و حادثه ای در رابطه با یا ناشی از استفاده از اطلاعات یا برنامه های موجود در اینجا فرض نشده است.
ناشر در صورت سفارش برای خرید فله و فروش ویژه ، تخفیف هایی در این کتاب ارائه می دهد. برای اطلاعات بیشتر لطفا تماس بگیرید:
برای فروش خارج از ایالات متحده ، لطفا با آنها تماس بگیرید:
به آدیسون-وسلی در وب مراجعه کنید: www. awprofessional.com
شماره کنترل کتابخانه کنگره: 2004100582
GeForce ™ و NVIDIA Quadro ® علائم تجاری یا علائم تجاری ثبت شده شرکت NVIDIA هستند. Renderman ® یک علامت تجاری ثبت شده از استودیوهای انیمیشن پیکسار است."Antialiasing Map Shadow" © 2003 شرکت NVIDIA و استودیوهای انیمیشن پیکسار."نورپردازی سینمایی" © 2003 استودیوهای انیمیشن پیکسار. تصاویر سپیده دم © 2002 شرکت Nvidia. تصاویر ولکان © 2003 شرکت Nvidia.
کپی رایت © 2004 توسط شرکت NVIDIA.
کلیه حقوق محفوظ است. هیچ بخشی از این انتشار ممکن است در یک سیستم بازیابی ، ذخیره شود ، یا به هر شکلی یا به هر وسیله الکترونیکی ، مکانیکی ، فتوکپی ، ضبط یا در غیر این صورت منتقل شود ، بدون رضایت قبلی ناشر. چاپ شده در ایالات متحده آمریکا. به طور همزمان در کانادا منتشر شد.
برای کسب اطلاعات در مورد دریافت مجوز برای استفاده از مطالب از این کار ، لطفاً یک درخواست کتبی را به:
Pearson Education ، Inc. بخش حقوق و قراردادهای یک دریاچه خیابان فوقانی رودخانه زین ، نیویورک 07458
کتاب آموزش بورس...
ما را در سایت کتاب آموزش بورس دنبال می کنید
برچسب :
نویسنده : محسن زنجانچی
بازدید : <-PostHit->
تاريخ : جمعه
25 فروردين
1402 ساعت: 16:34