Ideally, we want to draw the blue object first, then the red, then the green.
The yellow filter is behind the blue object and should have no effect. For this
first answer, since we aren't given the alpha values of the green and red
filters, we don't know how this affects our draw order. The red or green object
may draw first. We can also rule out this last answer for the same reason. We
don't know the intensity or even how intensity is defined so we can't use this
as a way to solve the problem. The second answer works well for the green and
red filter, but falls apart on the yellow filter. With the z-buffer off, the
yellow filter would be drawn on top of the blue object filtering it. This is
clearly incorrect. This leaves the third answer, which is correct. This answer
is similar to the second answer and that the Painter's algorithm also sorts
objects from back to front. However, this time, with the z-buffer on, the yellow
filter is properly hidden by the blue object. The red filter is rendered next
and blended, then the green is added in on top.
理想的な方法は青、赤、緑の順に描くことです
黄色のフィルタは青のオブジェクトの後ろなので
影響はありません
1つ目の答えでは緑と赤のアルファ値が分からず
描く順への影響も不明です
赤と緑が先に描かれることもあるでしょう
同じ理由で4つ目の答えも消去できます
明度の強さや定義の方法が分からなければ
解決策として使えません
2つ目の答えは緑と赤には効果的ですが
黄色のフィルタには機能しません
Zバッファを使わなければ黄のフィルタは
青の上に描かれてしまうでしょう
これも間違いです
正解は3つ目です
これは2つ目の答えに似ています
画家のアルゴリズムも後ろから順に描きます
しかしZバッファを使用するので
黄色のフィルタは青のオブジェクトに隠されます
次に描かれた赤がブレンドされて
一番手前に緑が描けます
理想上我們想先畫藍色物件、再畫紅、再畫綠
黃色過濾片在藍色物件後所以應該沒效果
第一個答案,因為我們不知道綠色跟紅色過濾片的 Alpha 值,所以無從比較起
這樣有可能是紅先畫也可能是綠先畫
同樣的理由可以排除最後一個答案
我們不知道亮度,甚至不知道亮度如何定義的,所以不能用來解決問題
第二個答案在紅色跟綠色過濾片有效,但在黃色過濾片上失效
關掉 Z 緩衝區時黃色過濾片會被畫在藍色上並過濾其顏色
明顯是錯的
這樣只剩下第三個是正確答案
這個答案跟跟第二個很像,畫家演算法也是由後往前排序物件
但這裡 Z 緩衝區是開啟的
黃色過濾片妥善地被藍色物件遮擋
紅色過濾片接著畫並混色,再來是加上綠色