2013-05-02 14 views
7

Quale sarebbe il modo migliore per creare un pavimento continuo in ogni direzione nella scena three.js sulla tela?Piano infinito in scena THREE.JS

Sarebbe preferibile collegare THREE.PlaneGeometry alla posizione della telecamera, in modo che viaggi con la fotocamera.

Oppure c'è un altro modo di strutturare il pavimento della scena con una trama.

Ho qualche problema con la visibilità del mio PlaneGeometry, per qualche ragione devo essere ad una certa distanza da esso per vederlo.

/* Floor */  
var geometry = new THREE.PlaneGeometry(1000, 1000, 1, 1); 
var material = new THREE.MeshBasicMaterial({ color: 0x0000ff }); 
var floor = new THREE.Mesh(geometry, material); 
floor.material.side = THREE.DoubleSide; 
floor.rotation.x = de2ra(90); 
scene.add(floor); 

Aperto a tutte le tecniche!

+0

Lo collego alla fotocamera solo se non è strutturato –

risposta

10

Ho un fondo oceanico infinito nel mio gioco top-down. Lo riposiziono sulle coordinate xy della fotocamera (mantenendo una distanza con z). Ho quindi modify the texture's offset property in modo che appaia che il pavimento si sta muovendo anche se è incollato alla fotocamera.

Per quanto riguarda "problemi con la visibilità della mia PlaneGeometry", probabilmente ha colpito piani di proiezione vicini o lontani della fotocamera (distanze) - qualcosa di più vicino di quanto near o oltre far è ritagliato, vale a dire abbattuti, cioè invisibile. Puoi configurarlo nel costruttore della fotocamera.

Problemi correlati