La mia applicazione è simile a un programma CAD molto semplice. L'utente può creare e modificare un database di diverse migliaia di oggetti 3D semplici (ad esempio cubi e sfere). Ogni oggetto ha una posizione, un orientamento e una dimensione. Prevedo di avere questi oggetti serializzati nel database.
Voglio rendere oggetti nel database in viste 3D. Le viste 3D potrebbero essere l'intero database o una particolare query (ad esempio oggetti di una certa dimensione). Le viste dovrebbero sempre riflettere lo stato corrente del database man mano che gli oggetti vengono aggiunti / rimossi.
Quindi la mia domanda è: come posso avere il ciclo di rendering in modo efficiente per accedere al database? Queste sono le opzioni a cui posso pensare:
- Fornisce l'accesso diretto al ciclo di rendering al database. Deserializzare oggetti e renderizzare ad ogni ciclo. Sembra inefficiente, ma forse non così male come temo.
- Dai al ciclo di rendering l'accesso diretto al database, ma prova a memorizzare i dati in modo tale da non dover essere serializzati.
- Crea un'altra struttura dati che rispecchia sempre il database, ma è più semplice da eseguire.