topical media & game development
mobile-query-three-plugins-buffergeometry-examples-manual-square.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.createTorus().addTo(world);
var triangles = 2;
var vertexIdxArray = new Int16Array(triangles * 3);
var i = 0;
vertexIdxArray[i+0] = 0;
vertexIdxArray[i+1] = 1;
vertexIdxArray[i+2] = 2;
i += 3;
vertexIdxArray[i+0] = 3;
vertexIdxArray[i+1] = 4;
vertexIdxArray[i+2] = 5;
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;
vertexPosArray[i+0] = 0;
vertexPosArray[i+1] = 1;
vertexPosArray[i+2] = 0;
i += 3;
vertexPosArray[i+0] = 1;
vertexPosArray[i+1] = 0;
vertexPosArray[i+2] = 0;
i += 3;
vertexPosArray[i+0] = 1;
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;
uvArray[i+0] = 0;
uvArray[i+1] = 1;
i += 2;
uvArray[i+0] = 1;
uvArray[i+1] = 0;
i += 2;
uvArray[i+0] = 1;
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.MeshBasicMaterial({
color : 0xffffff,
map : THREE.ImageUtils.loadTexture( "../../assets/images/ash_uvgrid01.jpg" ),
// wireframe: true,
});
//var material = new THREE.MeshNormalMaterial();
var tMesh = new THREE.Mesh(geometry, material);
world.add(tMesh);
world.loop().hook(function(delta, now){
var angle = 0.1 * now * Math.PI * 2;
//tMesh.rotation.y = angle;
})
</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.