ฉันรู้ว่าคำถามนี้อาจฟังดูง่ายที่จะตอบ แต่มันทำให้ฉันบ้า มีสถานการณ์ที่เป็นไปได้มากเกินไปที่กลไกการผสมอัลฟาที่ดีควรจัดการและสำหรับอัลกอริทึมแต่ละอันที่ฉันคิดว่ามีบางอย่างขาดหายไป
นี่เป็นวิธีการที่ฉันคิดมาจนถึงตอนนี้:
ครั้งแรกของฉันแม้ว่าเกี่ยวกับการจัดเรียงวัตถุตามความลึก แต่สิ่งนี้ล้มเหลวเนื่องจากวัตถุไม่ใช่รูปร่างที่เรียบง่ายพวกเขาอาจมีส่วนโค้งและอาจวนซ้ำภายในกัน ดังนั้นฉันจึงไม่สามารถบอกได้เสมอว่ากล้องตัวไหนอยู่ใกล้กล้องมากขึ้น
จากนั้นฉันคิดเกี่ยวกับการเรียงลำดับสามเหลี่ยม แต่อันนี้ก็อาจล้มเหลวด้วยฉันคิดว่าฉันไม่แน่ใจว่าจะใช้งานได้อย่างไรมีกรณีที่หายากซึ่งอาจทำให้เกิดปัญหาอีกครั้งซึ่งสามเหลี่ยมสองรูปผ่านกัน ไม่มีใครสามารถบอกได้ว่าใครอยู่ใกล้
สิ่งต่อไปคือการใช้บัฟเฟอร์ความลึกอย่างน้อยเหตุผลหลักที่เรามีบัฟเฟอร์ความลึกเป็นเพราะปัญหาเกี่ยวกับการเรียงลำดับที่ฉันกล่าวถึง แต่ตอนนี้เราได้รับปัญหาอื่น เนื่องจากวัตถุที่อาจจะมีความโปร่งใสใน pixel เดียวอาจจะมีมากขึ้นกว่าหนึ่งในวัตถุที่มองเห็น ดังนั้นวัตถุใดที่ฉันควรเก็บความลึกของพิกเซล?
ฉันคิดว่าบางทีฉันสามารถเก็บความลึกของวัตถุด้านหน้าได้มากที่สุดเท่านั้นและการใช้นั้นเป็นตัวกำหนดว่าฉันควรผสมผสานการโทรในครั้งต่อไปที่พิกเซลนั้นได้อย่างไร แต่อีกครั้งมีปัญหาลองคิดถึงระนาบกึ่งโปร่งใสสองระนาบโดยมีระนาบทึบอยู่ตรงกลาง ฉันจะแสดงระนาบที่เป็นของแข็งในตอนท้ายเราสามารถเห็นระนาบที่ห่างไกลที่สุด โปรดทราบว่าฉันจะรวมทุก ๆ สองระนาบจนกว่าจะเหลือเพียงสีเดียวสำหรับพิกเซลนั้น เห็นได้ชัดว่าฉันสามารถใช้วิธีการเรียงลำดับเช่นกันเพราะเหตุผลเดียวกันกับที่ฉันอธิบายไว้ข้างต้น
ในที่สุดสิ่งเดียวที่ฉันจินตนาการได้ว่าสามารถทำงานได้คือการแสดงวัตถุทั้งหมดเป็นเป้าหมายการแสดงผลที่แตกต่างกันจากนั้นเรียงลำดับเลเยอร์เหล่านั้นและแสดงผลลัพธ์สุดท้าย แต่ครั้งนี้ฉันไม่รู้ว่าฉันจะใช้อัลกอริทึมนี้ได้อย่างไร