ทำอย่างไรถึงจะได้เอฟเฟกต์แสงนีออน?


26

ฉันสงสัยว่าจะทำเอฟเฟกต์แสงนีออนได้อย่างไร ตัวอย่างเช่นในPac-Man Chamipnship Edition :

PacMan CE

หรือในสงครามเรขาคณิต :

สงครามเรขาคณิต

นั่นคือเอฟเฟ็กต์ Bloom หรือไม่? หรือเทคนิคใดที่ฉันจะต้องมองหา?


1
มีแบบฝึกหัดบลูมเอฟเฟ็กต์ที่ยอดเยี่ยมอยู่ที่นี่
bobobobo

คำตอบ:


13

ไปเลย :)

GPU Gems - เอฟเฟกต์เรืองแสง

ด้วยเอนทิตีจำนวนมากที่มีเอฟเฟกต์เรืองแสงบนหน้าจอ (โดยเฉพาะใน Geometry Wars) บ่อยกว่าเอฟเฟกต์ภาพเงาที่คล้ายกับภาพที่อธิบายไว้ในกระดาษนั้น


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

6

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

ขั้นแรกให้ลองแสดงสไปรท์ของคุณด้วยการผสมแบบเสริม - ด้วยสมการผสมเช่น:

(SRC_COLOUR * SRC_ALPHA) + (DST_COLOUR * ONE)

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

แน่นอนว่าวิธีการนี้มีข้อ จำกัด บางประการการเพิ่มสไปรต์ที่ทับซ้อนกันอาจไม่เป็นที่พึงปรารถนา


2

มีสองวิธีในการบรรลุเป้าหมายนี้

รูปด้านบน (เดา) ใช้ภาพกึ่งโปร่งใส

ด้านล่างที่ซับซ้อนมากขึ้น (เดาอีกครั้ง) เล่นกับบัฟเฟอร์เพื่อสร้างเอฟเฟกต์แสง (บาน)

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