แบบอัลฟ่ามีหลายวิชาใช่แล้วหรือเปล่า?


10

ฉันควรจะใช้อัลฟ่าก่อนกำหนดหรือไม่? อ่านบทความของทอมฟอร์ซิ ธดูเหมือนว่าเป็นขุนนาง อัลฟา premultiplied (การผสมสารเติมแต่ง AKA) เป็นเลิศในทุกความรู้สึก
อย่างไรก็ตามอัลฟาที่ไม่ผ่านการทดสอบมีข้อเสียเปรียบหลักอย่างหนึ่ง แต่ก็ยังไม่รองรับเครื่องมือ

คุณ / คุณเคยใช้อัลฟ่าก่อนวัยเรียนหรือไม่?

เครื่องมือรองรับได้อย่างไร?

โดยเฉพาะอย่างยิ่งฉันไม่คิดว่า gimp จะแก้ไขภาพอัลฟ่าได้ดีก่อนกำหนด มีปลั๊กอิน gimp ใด ๆ ในการส่งออกอัลฟ่าก่อนกำหนดหรือไม่ เครื่องมือภายนอกเป็นอย่างไร?


ฉันอยู่ในตำแหน่งเดียวกับคุณ - ฉันต้องการใช้งานได้ทุกที่ แต่ไม่แน่ใจว่าฉันสามารถแก้ไขเนื้อหาของฉันได้อย่างง่ายดายหากฉันต้องการพัฒนาเครื่องมือพิเศษสำหรับมัน
Kylotan

คำตอบ:


4

ฉันใช้ XNA 3.1 ในขณะนี้ด้วยอัลฟ่าก่อนกำหนด (การสนับสนุนอัลฟ่า Premultiplied ดั้งเดิมถูกเพิ่มใน 4.0)

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

XNA มีไพพ์ไลน์เนื้อหาซึ่งทำให้การเพิ่มอัลฟาก่อนการประมวลผลล่วงหน้าทำได้ง่ายมาก

ลิงค์นั้นมีรหัสสำหรับทำการแปลง สำหรับทุกพิกเซล:

c.R = (byte)(c.R * c.A / 255);
c.G = (byte)(c.G * c.A / 255);
c.B = (byte)(c.B * c.A / 255);

มีจำนวนมากที่จะกล่าวว่ามีท่อส่งเนื้อหา หากคุณไม่ได้ใช้ XNA แต่กำลังใช้งาน Visual Studio อยู่คุณสามารถรวมเข้าด้วยกันได้ กระบวนการ IDE / build อื่น ๆ ควรมีความสามารถเช่นกัน

และสุดท้ายถ้าคุณไม่มีขั้นตอนการประมวลผลเนื้อหาในงานสร้างของคุณ (และราคาต่อรองคือคุณไม่มีเนื้อหาจำนวนมากอยู่แล้ว) คุณสามารถดำเนินการก่อนกำหนดได้อย่างง่ายดายเมื่อรันไทม์เมื่อคุณโหลดพื้นผิวของคุณ มันจะเพิ่มปัจจัยคงที่บางอย่างให้กับความเร็วในการโหลดพื้นผิวของคุณ

(หากความหมายไม่ชัดเจนคุณอาจไม่ควรแก้ไขภาพอัลฟ่าก่อนกำหนดส่งออกภาพก่อนกำหนดหากทำได้หรือดีกว่ายังประมวลผลล่วงหน้า)


ขอบคุณ มันควรเป็นเช่นอัลฟาก่อนวัยอันควรได้รับการสนับสนุนอย่างเพียงพอใน XNA (หรือเร็ว ๆ นี้จะเป็น) ฉันยังคงมองหาเครื่องมือที่ไม่ใช่ XNA เพื่อสร้างไปป์ไลน์ด้วย
deft_code

3

หากคุณกำลังใช้ XNA อยู่มีการสนับสนุนเล็กน้อยสำหรับอัลฟาที่ถูกคูณล่วงหน้า โดยทั่วไปแล้วการแปลงจะทำในขั้นตอนการทำงานของเนื้อหา แต่ไม่มีสิ่งใดที่ห้ามไม่ให้คุณทำเอง


1

ฉันใช้อัลฟ่าก่อนกำหนดโดยค่าเริ่มต้นในเครื่องมือของฉัน (ศิลปินสามารถบังคับให้ไม่มีการกำหนดล่วงหน้าในไฟล์ข้อกำหนดวัสดุหากจำเป็นต้องมีเอฟเฟกต์พิเศษสำหรับการจัดเรียงบางอย่าง)

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.