tutorial three sphere raycaster examples javascript three.js texture2d

javascript - sphere - generar textura desde array en threejs



three.js rotation (1)

Intento generar una textura a partir de una matriz en tres JS y no está funcionando como esperaba.

Parece que la forma en que genero la textura no es correcta.

Si utilizo la siguiente textura, funciona como se esperaba. http://www.html5canvastutorials.com/demos/assets/crate.jpg

crateTex = THREE.ImageUtils.loadTexture(''data/crate.jpg'');

Si genero una textura ficticia y trato de mostrarla, todo es negro ...

var dummyRGBA = new Uint8Array(4 * 4 * 4); for(var i=0; i< 4 * 4; i++){ // RGB from 0 to 255 dummyRGBA[4*i] = dummyRGBA[4*i + 1] = dummyRGBA[4*i + 2] = 255*i/(4*4); // OPACITY dummyRGBA[4*i + 3] = 255; } dummyDataTex = new THREE.DataTexture( dummyRGBA, 4, 4, THREE.RGBAFormat ); dummyDataTex.needsUpdate = true; dummyTex = new THREE.Texture(dummyDataTex);


Creo que tu error está en el hecho de que haces una textura de una textura.

Cuando tu lo hagas:

dummyDataTex = new THREE.DataTexture( dummyRGBA, 4, 4, THREE.RGBAFormat );

el objeto dummyDataTex que creas aquí ya es de tipo THREE.Texture .

Entonces tu próximo paso:

dummyTex = new THREE.Texture(dummyDataTex);

no es necesario. En su lugar, debería utilizar inmediatamente dummyDataTex .