NOTA! Questo sito utilizza i cookie e tecnologie simili.

Se non si modificano le impostazioni del browser, l'utente accetta. Per saperne di piu'

Approvo

Guida Java 3D - 28: il Clipping e il Viewing Frustum

Guida Java 3D, corso di base 

 

Java 3D non renderizza, a video, tutti gli oggetti che si trovano tra l'image plate (il 'piano' del rendering) e l'infinito, ma solo gli oggetti che si trovano all'interno di un determinato volume, detto Viewing Frustum, definito dalla distanza tra due piani, il front clip plane e il back clip plane, e l'ampiezza dell'angolo di visuale.

 

Java 3D Clip

 

Gli oggetti posizionati fuori dal Frustum vengono quindi 'tagliati' (clipped) o non vengono renderizzati affatto.

 

 

Ciò ovviamente può portare ad effetti indesiderati, come visibile in figura...

Java 3D Clipping

Quello che succede è mostrato schematicamente nella figura seguente, che illustra appunto il 'funzionamento' del clipping.

 

 

Java 3D esempio funzionamento del clipping

E' l'oggetto View che si occupa di gestire i valori di clipping.

Per modificare tali valori è necessario scrivere le seguenti righe di codice (sia 'simpleU' il nostro oggetto SimpleUniverse):

 

  • simpleU.getViewer().getView().setBackClipDistance([VALORE]);

  • simpleU.getViewer().getView().setFrontClipDistance([VALORE]);

 

dove '[VALORE]' è un double.

 

Un rapporto tra back clip distance e front clip distance considerato 'ragionevole' è, ad esempio, un valore compreso tra 100 e 1000, o comunque inferiore a 3000, ma a seconda delle scene da visualizzare potrebbe essere possibile utilizzare rapporti più grandi anche di qualche ordine di grandezza senza riscontrare particolari rallentamenti nell'esecuzione del programma.

 

 

Per un elenco completo (lista) dei tutorial e videotutorial su Java, Java 2D, Java 3D e J2ME, clicca qui


 
Libri e eBook sul linguaggio di programmazione Java:
 
 
ebook PDF "Java 3D: guida di base" di Francesco Milanese
 
 
 
 
 

 

Pagina di Francesco Milanese (redbaron85) su Facebook   Pagina di Francesco Milanese (redbaron85) su Google Plus   Profilo di Francesco Milanese (redbaron85) su LinkedIn   Pagina di Francesco Milanese (redbaron85) su Twitter   Canale Youtube di Francesco Milanese (redbaron85ct)

Vai all'inizio della pagina