ใน three.js เราสามารถรวมรูปทรงเรขาคณิตเพื่อ จำกัด จำนวนการเรียกสายและเพิ่มประสิทธิภาพ ในการทดสอบอย่างง่าย ๆ ด้วยวัสดุชิ้นเดียวฉันสามารถวาด 50.000 คิวบ์ + เงา @ 60fps บน GPU GTX660 ของฉัน โดยไม่มีการผสานเรขาคณิต 5.000 ลูกบาศก์ทำให้เกิดปัญหาอยู่แล้ว
ฉันสงสัยว่าจะรักษาประโยชน์ของการเรนเดอร์แต่ละลูกบาศก์ด้วยตัวเองได้อย่างไร ตัวอย่างเช่นวิธีการเลือกตาข่ายลูกบาศก์เมื่อทุกอย่างถูกรวมเป็นหนึ่งเดียว โดยค่าเริ่มต้นนั้นเป็นไปไม่ได้แน่นอน
มีเทคนิคทั่วไปสำหรับปัญหานี้หรือไม่? หลังจากทั้งหมดฉันมีวัตถุตาข่าย unmerged ทั้งหมดแม้หลังจากการผสาน ดังนั้นจะต้องมีวิธีที่จะใช้พวกเขาสำหรับการเลือก?
สิ่งที่ฉันต้องการทำสั้น ๆ
- SimCity เช่นเกมเพื่อการเรียนรู้
- บ้านแต่ละหลังเป็นตาข่ายลูกบาศก์
- ต้องการสร้างบ้าน 50,000 หลังและสามารถเพิ่มและลบบ้านได้
- การเลือกเฮ้าส์ด้วยเคอร์เซอร์ของเมาส์ (การหยิบ) จะต้องเป็นไปได้