1
Shader เพื่อดูเงาผ่านสไปรต์อัลฟ่า
ฉันต้องการที่จะบรรลุในเอกภาพเห็นผ่านผลเหมือนในตัวอย่างเหล่านี้: ในสถานการณ์เฉพาะของฉันมีข้อกำหนดสองสามข้อ: สไปรท์กำลังใช้การผสมแอลฟาและสไปรท์มีพื้นที่โปร่งใส มีองค์ประกอบ 2 ชนิดที่ปิดอักขระ หนึ่งควรสร้างเอฟเฟกต์ภาพเงาและอีกภาพหนึ่งควรทำงานเหมือนปกติ สำหรับการปิดองค์ประกอบที่สร้างภาพเงาฉันเปิดใช้งาน ZWrite และปิดการใช้งานองค์ประกอบที่ไม่มี สำหรับตัวละครฉันพยายามตั้งค่าคิวของ shader เป็น transparent + 1 และเพิ่มรหัสผ่านนี้: Pass { ZTest Greater Lighting Off Color [_Color] } และผลงานบางส่วน: ภาพเงาถูกดึงดูดไปทั่วตัวละครแม้กระทั่งส่วนที่โปร่งใส ส่วนที่โปร่งใสไม่ควรสร้างภาพเงา ภาพเงาถูกสร้างขึ้นเมื่อตัวละครอยู่ด้านหลังเทพดาแม้ว่าส่วนหนึ่งของผีสางนั้นจะโปร่งใส การอยู่ด้านหลังของสไปรต์ไม่ควรสร้างภาพเงา ตัวละครจะปรากฏต่อหน้าองค์ประกอบที่เหลือแม้ว่ามันจะอยู่ข้างหลังก็ตาม ฉันเดาว่าเป็นเพราะการตั้งค่าคิวเป็น Transparent + 1 แต่ถ้าฉันปล่อยให้มันเป็นแบบโปร่งใสตัวละครจะถูกวาดตามลำดับที่ถูกต้อง แต่ภาพเงานั้นไม่เคยเห็น ฉันพยายามปฏิบัติตามคำแนะนำเหล่านี้ที่มีคนให้ แต่ฉันไม่สามารถใช้งานได้: 1) ออกบัตรผ่านที่แสดงผลสไปรต์ตามที่เป็นอยู่ 2) เพิ่มรหัสผ่านที่เขียนไปยังบัฟเฟอร์ z แต่มี shader ที่ใช้คลิป () เพื่อทิ้งพิกเซลตามอัลฟา …