به بخش پرسش و پاسخ خوش آمدید. در این بخش می‌توانید پرسش‌ خود را بیان کرده و پاسخ آن را دریافت کنید. بهترین جواب را انتخاب کرده و به دیگران امتیاز دهید.

مطالعه‌ی پرسش‌های مشابه، کمک بزرگی در صرفه‌جویی در وقت شما است. بنابراین لطفاً قبل از پرسیدن، از موجود نبودن پرسش‌ مشابه اطمینان حاصل کنید. برای این کار، به کمک کادر جستجوی بالای صفحه، چند کلمه‌ی مهم از صورت پرسش‌ خود را جستجو نمایید.

با تشکر

ZBuffer چیست؟

0 امتیاز
405 بازدید
Z Buffer چیست؟
پرسیده شده دی 26, 1393 در گرافیک کامپیوتری بوسیله‌ی flfl512asuser رهگذر (210 امتیاز)
نمایش از نو دی 26, 1393 بوسیله‌ی flfl512asuser

1 پاسخ

0 امتیاز
 
بهترین پاسخ

سلام

به کمک Z-Buffer، که نام دیگر آن Depth-Buffer است، می‌توان در فضای سه‌بعدی مشخص نمود که چه قسمت‌هایی از چه اشیائی روی دیگر اشیاء قرار می‌گیرند.

در فضای دوبعدی، ترتیب ترسیم اشیاء مشخص می‌کند که چه شیئی جلوتر از دیگری قرار بگیرد. مثلاً فرض کنید که یک مربع ترسیم کنیم و پس از آن یک مثلث رسم شود. در قسمت‌هایی از صفحه که مربع و مثلث اشتراک دارند، مثلث جلوتر از مربع قرار گرفته و مانع از دیده‌شدن آن می‌گردد.

در فضای سه‌بعدی، یک دوربین مجازی داریم که صحنه را از دید آن ترسیم می‌کنیم. در اینجا دیگر ترتیب ترسیم، تعیین کننده‌ی عقب و جلو بودن نیست. مثلاً اگر دو صفحه‌ی متقاطع داشته باشیم، قسمتی از صفحه اول روی صفحه‌ی دوم و قسمتی از آن زیر صفحه‌ی دوم قرار دارد. مطمئناً نمی‌توان تنها با تعیین ترتیب رسم، این دو صفحه را به درستی نشان داد. اینجاست که بافر عمق به کمک ما خواهد آمد. به این صورت که آن را فعال کرده و سپس ترسیم خود را انجام می‌دهیم. در این حالت اینکه اول کدام صفحه را زودتر رسم کنیم تفاوتی در خروجی ایجاد نمی‌کند. امّا چه اتفاقی می‌افتد؟

زمانی که بافر عمق فعال شود، به ازای هر پیکسلی که ترسیم می‌گردد، علاوه بر رنگ پیکسل، یک مقدار عمق نیز محاسبه می‌شود. این مقدار متناسب با فاصله‌ی شیء تا دوربین مجازی ما است. هر چه شیء دورتر باشد، مقدار عمق بزرگتری محاسبه می‌شود. توجه کنید که مقدار عمق به بازه‌ی بین 0 (نزدیکترین) و 1(دورترین) نگاشت می‌گردد. زمانی که شیء دیگری را می‌خواهیم رسم کنیم، به ازای هر پیکسل که قرار است توسط ترسیم شیء ما روشن گردد، مقدار عمق محاسبه شده و اگر پیکسلی قبلاً در همان محل رسم شده که عمق کمتری دارد (نزدیک‌تر است)، مانع از ترسیم پیکسل جدید می‌گردد.

لازم به ذکر است که تمام پیکسل‌های بافر عمق، قبل از هر ترسیم کلی صحنه، یک‌بار مقدار 1 می‌گیرند. به این صورت تضمین می‌کنیم که تمام اجزای هر شیئی که برای ترسیم در نظر می‌گیریم، قابل ترسیم است مگر آنکه شیء دیگری بنابر نزدیک‌تر بودن، مانع از این عمل گردد.

پاسخ داده شده دی 26, 1393 بوسیله‌ی flfl512 مدیر (100,000,640 امتیاز)
انتخاب شده دی 26, 1393 بوسیله‌ی flfl512asuser

پرسش مشابهی یافت نشد

ZBuffer.ir
...