การเรนเดอร์แผนที่ 2D สกปรก


10

ฉันได้ยินคนพูดถึง "การเรนเดอร์สกปรก" เมื่อพูดถึงการเรนเดอร์แผนที่สำหรับ HTML5 ฉัน Googled และค้นหา GameDev เกี่ยวกับเรื่องนี้ แต่ก็มีไม่มาก

  • มันคืออะไรกันแน่?
  • วิธีการใช้อย่างถูกต้อง?

คำตอบ:


12

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

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


6

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

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

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

ฉันไม่รู้ว่ามีวิธีพิเศษสำหรับคุณที่จะใช้สิ่งนี้ใน HTML5 แต่ฉันพบทรัพยากรนี้ซึ่งอาจให้ความคิดกับคุณ

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