topical media & game development
mobile-query-three-plugins-buffergeometry-examples-manual-triangle.htm / htm
<!doctype html><title>Minimal tQuery Page</title>
<script src="../../../build/tquery-bundle.js"></script>
<body><script>
var world = tQuery.createWorld().boilerplate().start();
// var object = tQuery.createAxis().addTo(world);
world.removeCameraControls();
var triangles = 1;
var vertexIdxArray = new Int16Array(triangles * 3);
var i = 0;
vertexIdxArray[i+0] = 0;
vertexIdxArray[i+1] = 1;
vertexIdxArray[i+2] = 2;
i += 3;
var vertexPosArray = new Float32Array(triangles * 3 * 3);
var i = 0;
vertexPosArray[i+0] = 0;
vertexPosArray[i+1] = 0;
vertexPosArray[i+2] = 0;
i += 3;
vertexPosArray[i+0] = 1;
vertexPosArray[i+1] = 0;
vertexPosArray[i+2] = 0;
i += 3;
vertexPosArray[i+0] = 0;
vertexPosArray[i+1] = 1;
vertexPosArray[i+2] = 0;
i += 3;
var uvArray = new Float32Array(triangles * 3 * 2);
var i = 0;
uvArray[i+0] = 0;
uvArray[i+1] = 0;
i += 2;
uvArray[i+0] = 1;
uvArray[i+1] = 0;
i += 2;
uvArray[i+0] = 0;
uvArray[i+1] = 1;
i += 2;
var attributes = {
position : {
itemSize: 3,
array : vertexPosArray,
numItems: vertexPosArray.length
},
index : {
itemSize: 1,
array : vertexIdxArray,
numItems: vertexIdxArray.length
},
uv : {
itemSize: 2,
array : uvArray,
numItems: uvArray.length
}
};
var geometry = new THREE.BufferGeometry();
geometry.attributes = attributes;
geometry.offsets = [{
start : 0,
count : vertexIdxArray.length,
index : 0
}];
geometry.computeBoundingBox();
geometry.computeBoundingSphere();
geometry.computeVertexNormals();
//var material = new THREE.MeshNormalMaterial();
geometry.dynamic= true;
var bufferGeo = geometry;
console.log('bufferGeo', bufferGeo)
var texture = THREE.ImageUtils.loadTexture( "../../assets/images/ash_uvgrid01.jpg" );
// texture.repeat.set( 1, 1 );
// texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
var tMaterial = new THREE.MeshBasicMaterial({
color : 0xffffff,
map : texture
});
var mesh = new THREE.Mesh(geometry, tMaterial);
world.add(mesh);
if( true ){
var geometry = new THREE.Geometry();
geometry.vertices.push( new THREE.Vector3( 0, 1, 0 ) );
geometry.vertices.push( new THREE.Vector3( 0, 0, 0 ) );
geometry.vertices.push( new THREE.Vector3( 1, 0, 0 ) );
geometry.faces.push( new THREE.Face3(0,1,2) );
geometry.faceVertexUvs[0].push([
new THREE.UV(0, 1),
new THREE.UV(0, 0),
new THREE.UV(1, 0)
]);
geometry.computeBoundingBox();
geometry.computeFaceNormals();
geometry.computeCentroids();
geometry.computeVertexNormals();
geometry.computeMorphNormals();
//geometry.computeTangents();
geometry.computeBoundingSphere();
var mesh = new THREE.Mesh(geometry, material);
mesh.position.x = -1;
var normalGeo = geometry;
world.add(mesh);
}
</script></body>
(C) Æliens
04/09/2009
You may not copy or print any of this material without explicit permission of the author or the publisher.
In case of other copyright issues, contact the author.