ฉันได้เห็นตัวอย่างมากมายเกี่ยวกับวิธีแสดงสไปรต์จาก spritesheet แต่ฉันไม่เข้าใจเลยว่าทำไมมันเป็นวิธีที่พบได้บ่อยที่สุดในการจัดการกับสไปรต์ในเกม 2d
ฉันเริ่มด้วยการเรนเดอร์เรนเดอร์แบบ 2d ในแอปพลิเคชั่นตัวอย่างไม่กี่ตัวที่ฉันทำโดยจัดการกับเฟรมภาพเคลื่อนไหวแต่ละประเภทสำหรับสไปรต์ประเภทใดก็ตามที่เป็นพื้นผิวของตัวเอง - และ ดูเหมือนว่าจะเหมาะกับฉันและเหมาะสมกับขั้นตอนการทำงานของฉันเพราะฉันมักจะทำแอนิเมชั่นเป็นไฟล์ gif / mng แล้วแยกเฟรมไปที่ pngs แต่ละอัน
มีความได้เปรียบด้านประสิทธิภาพที่เห็นได้ชัดเจนในการแสดงผลจากแผ่นงานเดียวมากกว่าจากพื้นผิวแต่ละรายการหรือไม่? ด้วยฮาร์ดแวร์ที่ทันสมัยที่สามารถวาดรูปหลายเหลี่ยมหลายล้านหน้าจอได้ร้อยครั้งต่อวินาทีมันจะสำคัญสำหรับเกม 2d ของฉันที่เพิ่งจัดการสี่เหลี่ยมขนาด 50x100px สักสองสามโหลหรือไม่?
รายละเอียดการนำไปใช้ของการโหลดเท็กซ์เจอร์ลงในหน่วยความจำกราฟิกและการแสดงใน XNA นั้นค่อนข้างเป็นนามธรรม สิ่งที่ฉันรู้คือพื้นผิวถูกผูกไว้กับอุปกรณ์กราฟิกเมื่อพวกเขาถูกโหลดจากนั้นในระหว่างวนรอบเกมพื้นผิวจะแสดงเป็นชุด ดังนั้นจึงไม่ชัดเจนว่าตัวเลือกของฉันมีผลต่อประสิทธิภาพหรือไม่
ฉันสงสัยว่ามีเหตุผลที่ดีมากที่นักพัฒนาเกม 2d ส่วนใหญ่ดูเหมือนจะใช้พวกเขาฉันไม่เข้าใจว่าทำไม