Dividi i tuoi oggetti in cubi 1 × 1 × 1, assegnando a ciascun cubo un'immagine delle parti dell'oggetto che si troverebbero fisicamente in quel cubo.
Questo è facile se inizi con oggetti 3D reali e li riduci in 2D. Se disegni i tuoi oggetti direttamente in 2D (o se hai opere d'arte che devi dividere), ci vuole un po 'di sforzo manuale. Fortunatamente, la divisione non deve essere esatta, purché si assicuri che nessuna delle parti dell'immagine assegnate a un dato cubo fuoriesca dall'area esagonale coperta da un cubo solido 1 × 1 × 1 in quella posizione. Può essere utile creare un overlay che mostri i contorni di ciascun cubo come un livello aggiuntivo nell'editor grafico.
Quindi assegni una priorità a ciascun cubo come p = x + y + z (supponendo che tutte e tre le coordinate aumentino verso la telecamera) e renda i cubi in ordine crescente per priorità.
Ecco un breve esempio basato su questa immagine di Wikimedia Commons (di Phasmatinox / Allefant , utilizzata con la licenza CC-By-SA 3.0 ):
La cassettiera nella foto occupa due tessere e su di essa ho tracciato i contorni di quelle tessere (gli esagoni rossi). Le parti dell'immagine che giacciono all'interno di ciascun esagono dovrebbero essere assegnate alla tessera corrispondente; la parte in cui gli esagoni si sovrappongono può essere assegnata a una delle tessere (o anche a entrambe, se lo si desidera), poiché la scelta non influirà sul risultato finale.
Nota che potresti dover elaborare questo semplice algoritmo se puoi avere più oggetti in una tessera, pareti / pavimenti tra le tessere o oggetti (come le persone) che si muovono senza problemi tra le tessere. Le pareti e i pavimenti sono piuttosto semplici da gestire: possono essere disegnati in qualsiasi momento dopo il contenuto della piastrella di fronte (dal punto di vista della telecamera) e prima della piastrella dietro. Questa è anche un'utile regola empirica per gli oggetti che si muovono tra le tessere; trattali come faresti con un muro tra quelle tessere.
Per quanto riguarda più oggetti in una tessera, a volte quelli sono piuttosto semplici: ad esempio, se nella foto ci fosse un libro sul petto, dovrebbe ovviamente essere disegnato dopo la superficie su cui giace. Tuttavia, le cose possono diventare più complicate se, ad esempio, hai oggetti su cui le persone possono sedersi. Ad esempio, se una persona era seduta su una panchina, di fronte alla telecamera, il corpo della persona dovrebbe essere disegnato dopo la panchina ma le gambe (che sono dietro la panchina dalla telecamera) devono essere disegnate prima di essa. Una soluzione, in questo caso, sarebbe quella di dividere le gambe di una persona seduta in un componente separato con la propria posizione (nella tessera adiacente o tra le tessere).