سلسلهمراتب حجم محدودکننده (BVH): رهگیری پرتو چگونه بدون رستر کردن صحنه، مسیر نور را محاسبه میکند؟
برای رندر کردن نورپردازی واقعگرایانه در لحظه، پردازندههای گرافیکی (GPU) به یک الگوریتم جعبههای تودرتو متکی هستند که به آنها اجازه میدهد در هر فریم، میلیونها چندضلعی را نادیده بگیرند.
به قلم نیما موسوی
این خبر را به اشتراک بگذارید
- مهندسان گرافیک
- تمرکز بر کارایی الگوریتمی و پیچیدگی زمانی رندرینگ.
- معماران سختافزار
- تمرکز بر طراحی سیلیکون اختصاصی برای شتاب بخشیدن به عملیاتهای ریاضی خاص.
- بازیکنان کنسول
- تمرکز بر تجربه کاربر نهایی از نرخ فریم بالا و کیفیت بصری.
دیدگاههایی که این گزارش پوشش نداده
- توسعهدهندگان موتورهای بازیسازی
- بررسیکنندگان مستقل سختافزار رایانههای شخصی
محدودیت اصلی رهگیری پرتو (Ray Tracing) این است که شبیهسازی نور به بررسی مسیر میلیونها پرتو مجزا در برابر هندسه یک صحنه سهبعدی نیاز دارد. اگر محیط یک بازی مدرن شامل ده میلیون چندضلعی باشد و دوربین برای هر پیکسل در یک نمایشگر 4K یک پرتو شلیک کند، بررسی هر پرتو در برابر هر چندضلعی به بیش از ۸۰ تریلیون تست تقاطع در هر فریم نیاز دارد. در نرخ ۶۰ فریم بر ثانیه، این رویکرد پردازش کورکورانه برای هر تراشهای که در یک کنسول یا رایانه شخصی جا میشود، از نظر ریاضی غیرممکن است.[1][3]
برای حل این مشکل، مهندسان گرافیک اصلاً سعی نمیکنند هر تقاطعی را محاسبه کنند. در عوض، آنها به یک میانبر الگوریتمی به نام سلسلهمراتب حجم محدودکننده (BVH) تکیه میکنند. الگوریتم BVH یک ساختار داده درختی است که اشیای هندسی یک صحنه را در جعبههای محدودکننده تودرتو و محافظهکارانه دستهبندی میکند. گره ریشه این درخت، یک جعبه عظیم و واحد است که کل دنیای رندر شده را در بر میگیرد. این جعبه به جعبههای کوچکتری تقسیم میشود و این تقسیمبندی بهصورت بازگشتی ادامه مییابد تا جایی که کوچکترین جعبهها - یعنی گرههای برگ - تنها شامل چند مثلث مجزا باشند.[1][2]
وقتی یک پردازنده گرافیکی یک پرتو نور را رهگیری میکند، آن را مستقیماً با هندسه صحنه آزمایش نمیکند. بلکه ابتدا پرتو را در برابر بزرگترین جعبههای محدودکننده میسنجد. اگر پرتو به یک جعبه برخورد نکند، سختافزار فوراً میفهمد که به هیچیک از اشیای داخل آن جعبه نیز برخورد نکرده است. با نادیده گرفتن شاخههای کامل این درخت، BVH پیچیدگی زمانی یافتن یک برخورد را از حالت خطی به لگاریتمی کاهش میدهد. به این ترتیب، میلیونها بررسی احتمالی چندضلعیها تنها در یک گام ریاضی دور ریخته میشوند.[1][2]
این فرآیند پیمایش آنقدر برای رندرینگ مدرن حیاتی است که سازندگان تراشه، سیلیکونهای اختصاصی برای اجرای آن ساختهاند. هستههای RT شرکت انویدیا و شتابدهندههای پرتو شرکت ایامدی، واحدهای سختافزاری تخصصی هستند که دقیقاً برای انجام دو کار طراحی شدهاند: پیمایش سریع درخت BVH و محاسبه تقاطع نهایی پرتو و مثلث در گرههای برگ. با واگذاری این بار کاری خاص و سنگین محاسباتی به این واحدها، هستههای سایهزن استاندارد آزاد میشوند تا نگاشت بافت و سایر وظایف سنتی رسترسازی را انجام دهند.[2]
این فرآیند پیمایش آنقدر برای رندرینگ مدرن حیاتی است که سازندگان تراشه، سیلیکونهای اختصاصی برای اجرای آن ساختهاند.
معماری خود درخت BVH نیز اکنون در حال تکامل است تا با قابلیتهای سختافزارهای جدیدتر همگام شود. پیادهسازیهای استاندارد معمولاً از ضریب انشعاب چهار استفاده میکنند که به BVH4 معروف است؛ به این معنی که هر جعبه والد تا چهار جعبه فرزند را در خود جای میدهد. با این حال، معماری سفارشی AMD RDNA که قدرتبخش پلیاستیشن ۵ پرو سونی است، پشتیبانی سختافزاری از یک سلسلهمراتب حجم محدودکننده ۸ مسیره یا BVH8 را معرفی میکند. ساختار BVH8 با دو برابر کردن تعداد گرههای فرزند در هر جعبه، درختی کمعمقتر و پهنتر ایجاد میکند.[3]
یک درخت کمعمقتر به مراحل کمتری برای پیمایش از ریشه تا گرههای برگ نیاز دارد. برای پردازنده گرافیکی، این امر مستقیماً به معنای فراخوانی کمتر از حافظه و پرسوجوهای سریعتر برای یافتن تقاطع است. زمانی که استودیوی سیدی پراجکت رد بهروزرسانی PS5 Pro بازی سایبرپانک ۲۰۷۷ را منتشر کرد، صراحتاً از پیادهسازی جدید BVH8 به عنوان مکانیزمی یاد کرد که به آنها اجازه داد بازتابها، سایهها و نورپردازیهای تابشی مبتنی بر رهگیری پرتو را فعال کنند، در حالی که نرخ فریم قابلبازی حفظ شود. در واقع، سختافزار زمان کمتری را صرف جستجو در ساختار داده میکند.
نتیجه عملی این کارایی الگوریتمی در معیارهای عملکرد جدیدترین عناوین کنسولی قابل مشاهده است. در آزمایشهای اخیر بازی ولورین مارول روی PS5 Pro، حالت پیشرفته رهگیری پرتو در مقایسه با حالت رندر استاندارد، تنها با افت عملکردی حدود ۳ تا ۴ فریم بر ثانیه همراه بود. این کنسول قادر است محاسبات پیچیده نورپردازی سراسری و بازتابها را با تأثیری ناچیز بر روانی کلی بازی مدیریت کند.
تلاش برای رسیدن به گرافیک واقعگرایانه در رسانههای تعاملی، صرفاً به معنای افزودن قدرت پردازشی خام بیشتر نیست؛ بلکه اصلاح مداوم نحوه سازماندهی و پرسوجوی دادههاست. در شرایطی که توسعهدهندگان به بهینهسازی ساختارهای BVH خود ادامه میدهند و معماران سختافزار مسیرهای پیمایش پهنتری میسازند، هزینه محاسباتی شبیهسازی نور فیزیکی همچنان کاهش مییابد و صنعت را از توهمات بصری رسترسازی دورتر میکند.[3]
نکات کلیدی
- رهگیری پرتو نیازمند بررسی مسیرهای نور در برابر میلیونها چندضلعی است که انجام مستقیم آن از نظر محاسباتی بسیار پرهزینه است.
- سلسلهمراتب حجم محدودکننده (BVH) هندسه یک صحنه را در جعبههای تودرتو گروهبندی میکند.
- اگر یک پرتو نور به یک جعبه محدودکننده برخورد نکند، پردازنده گرافیکی فوراً تمام چندضلعیهای داخل آن را نادیده میگیرد و میلیونها محاسبه را صرفهجویی میکند.
- پردازندههای گرافیکی مدرن دارای هستههای سختافزاری اختصاصی هستند که بهطور خاص برای پیمایش درخت BVH طراحی شدهاند.
- معماریهای جدیدتر مانند BVH8 در PS5 Pro، از درختهای کمعمقتر و پهنتر استفاده میکنند تا زمان لازم برای محاسبه تقاطع را بیشتر کاهش دهند.
اصطلاحات کلیدی
- سلسلهمراتب حجم محدودکننده (BVH)
- یک ساختار داده مبتنی بر درخت که اشیای سهبعدی را در جعبههای تودرتو دستهبندی میکند تا تستهای برخورد و تقاطع را تسریع بخشد.
- رهگیری پرتو
- یک تکنیک رندرینگ که رفتار فیزیکی نور را با ردیابی مسیر پرتوهای مجزا در حین بازتاب آنها در یک صحنه دیجیتال شبیهسازی میکند.
- پیچیدگی زمانی
- یک مفهوم در علوم کامپیوتر که توصیف میکند چگونه زمان اجرای یک الگوریتم با افزایش مقدار دادههای پردازشی آن افزایش مییابد.
- رسترسازی
- روش سنتی رندر کردن گرافیکهای سهبعدی با تصویر کردن مدلهای سهبعدی روی یک صفحه دوبعدی و پر کردن پیکسلها، بدون شبیهسازی مسیرهای واقعی نور.
- گره برگ
- پایینترین سطح یک ساختار داده درختی؛ در یک BVH، گرههای برگ شامل مثلثهای هندسی واقعی مدلهای سهبعدی هستند.
منابع
[1]Physically Based Renderingمهندسان گرافیکBounding Volume Hierarchies
مطالعه در Physically Based Rendering →
[2]Wikipediaمعماران سختافزارBounding volume hierarchy
مطالعه در Wikipedia →
[3]تیم سردبیری کوهستانتحلیل تیم سردبیری کوهستان
مطالعه در تیم سردبیری کوهستان →
نظرات
بیشتر در فناوری
مشاهده همه →مجوز نرمافزار
نرمافزار آزاد در برابر متنباز: تفاوت تعریفی و شکاف فلسفی
7 منبع
امنیت خانه هوشمند
سازوکار رمزنگاری سرتاسری در ویدیوی خانههای هوشمند: E2EE واقعاً چگونه کار میکند
10 منبع
فناوری پوشیدنی
چگونگی عملکرد واقعی حسگرهای ضربان قلب ساعتهای هوشمند (و چرا هنوز هم خطا میکنند)
6 منبع
فیزیک پیشران
معیار تکانه ویژه: سرعت خروج گازها چگونه بدهبستان میان نیروی پیشران و بهرهوری سوخت را تعیین میکند
9 منبع
هر زاویه. هر روز.
دریافت فناوری اخبار همراه با پوشش کامل منابع و تحلیل دیدگاهها، مستقیم در صندوق ورودی شما.





