提交 e9ad7508 编写于 作者: M Mugen87

Examples: Clean up.

上级 1e17676c
......@@ -24,34 +24,34 @@ THREE.DDSLoader.prototype = Object.assign( Object.create( THREE.CompressedTextur
var DDS_MAGIC = 0x20534444;
var DDSD_CAPS = 0x1,
DDSD_HEIGHT = 0x2,
DDSD_WIDTH = 0x4,
DDSD_PITCH = 0x8,
DDSD_PIXELFORMAT = 0x1000,
DDSD_MIPMAPCOUNT = 0x20000,
DDSD_LINEARSIZE = 0x80000,
DDSD_DEPTH = 0x800000;
var DDSCAPS_COMPLEX = 0x8,
DDSCAPS_MIPMAP = 0x400000,
DDSCAPS_TEXTURE = 0x1000;
var DDSCAPS2_CUBEMAP = 0x200,
DDSCAPS2_CUBEMAP_POSITIVEX = 0x400,
DDSCAPS2_CUBEMAP_NEGATIVEX = 0x800,
DDSCAPS2_CUBEMAP_POSITIVEY = 0x1000,
DDSCAPS2_CUBEMAP_NEGATIVEY = 0x2000,
DDSCAPS2_CUBEMAP_POSITIVEZ = 0x4000,
DDSCAPS2_CUBEMAP_NEGATIVEZ = 0x8000,
DDSCAPS2_VOLUME = 0x200000;
var DDPF_ALPHAPIXELS = 0x1,
DDPF_ALPHA = 0x2,
DDPF_FOURCC = 0x4,
DDPF_RGB = 0x40,
DDPF_YUV = 0x200,
DDPF_LUMINANCE = 0x20000;
// var DDSD_CAPS = 0x1;
// var DDSD_HEIGHT = 0x2;
// var DDSD_WIDTH = 0x4;
// var DDSD_PITCH = 0x8;
// var DDSD_PIXELFORMAT = 0x1000;
var DDSD_MIPMAPCOUNT = 0x20000;
// var DDSD_LINEARSIZE = 0x80000;
// var DDSD_DEPTH = 0x800000;
// var DDSCAPS_COMPLEX = 0x8;
// var DDSCAPS_MIPMAP = 0x400000;
// var DDSCAPS_TEXTURE = 0x1000;
var DDSCAPS2_CUBEMAP = 0x200;
var DDSCAPS2_CUBEMAP_POSITIVEX = 0x400;
var DDSCAPS2_CUBEMAP_NEGATIVEX = 0x800;
var DDSCAPS2_CUBEMAP_POSITIVEY = 0x1000;
var DDSCAPS2_CUBEMAP_NEGATIVEY = 0x2000;
var DDSCAPS2_CUBEMAP_POSITIVEZ = 0x4000;
var DDSCAPS2_CUBEMAP_NEGATIVEZ = 0x8000;
// var DDSCAPS2_VOLUME = 0x200000;
// var DDPF_ALPHAPIXELS = 0x1;
// var DDPF_ALPHA = 0x2;
var DDPF_FOURCC = 0x4;
// var DDPF_RGB = 0x40;
// var DDPF_YUV = 0x200;
// var DDPF_LUMINANCE = 0x20000;
function fourCCToInt32( value ) {
......@@ -126,10 +126,10 @@ THREE.DDSLoader.prototype = Object.assign( Object.create( THREE.CompressedTextur
var off_BBitMask = 25;
var off_ABitMask = 26;
var off_caps = 27;
// var off_caps = 27;
var off_caps2 = 28;
var off_caps3 = 29;
var off_caps4 = 30;
// var off_caps3 = 29;
// var off_caps4 = 30;
// Parse header
......
......@@ -33,34 +33,34 @@ DDSLoader.prototype = Object.assign( Object.create( CompressedTextureLoader.prot
var DDS_MAGIC = 0x20534444;
var DDSD_CAPS = 0x1,
DDSD_HEIGHT = 0x2,
DDSD_WIDTH = 0x4,
DDSD_PITCH = 0x8,
DDSD_PIXELFORMAT = 0x1000,
DDSD_MIPMAPCOUNT = 0x20000,
DDSD_LINEARSIZE = 0x80000,
DDSD_DEPTH = 0x800000;
var DDSCAPS_COMPLEX = 0x8,
DDSCAPS_MIPMAP = 0x400000,
DDSCAPS_TEXTURE = 0x1000;
var DDSCAPS2_CUBEMAP = 0x200,
DDSCAPS2_CUBEMAP_POSITIVEX = 0x400,
DDSCAPS2_CUBEMAP_NEGATIVEX = 0x800,
DDSCAPS2_CUBEMAP_POSITIVEY = 0x1000,
DDSCAPS2_CUBEMAP_NEGATIVEY = 0x2000,
DDSCAPS2_CUBEMAP_POSITIVEZ = 0x4000,
DDSCAPS2_CUBEMAP_NEGATIVEZ = 0x8000,
DDSCAPS2_VOLUME = 0x200000;
var DDPF_ALPHAPIXELS = 0x1,
DDPF_ALPHA = 0x2,
DDPF_FOURCC = 0x4,
DDPF_RGB = 0x40,
DDPF_YUV = 0x200,
DDPF_LUMINANCE = 0x20000;
// var DDSD_CAPS = 0x1;
// var DDSD_HEIGHT = 0x2;
// var DDSD_WIDTH = 0x4;
// var DDSD_PITCH = 0x8;
// var DDSD_PIXELFORMAT = 0x1000;
var DDSD_MIPMAPCOUNT = 0x20000;
// var DDSD_LINEARSIZE = 0x80000;
// var DDSD_DEPTH = 0x800000;
// var DDSCAPS_COMPLEX = 0x8;
// var DDSCAPS_MIPMAP = 0x400000;
// var DDSCAPS_TEXTURE = 0x1000;
var DDSCAPS2_CUBEMAP = 0x200;
var DDSCAPS2_CUBEMAP_POSITIVEX = 0x400;
var DDSCAPS2_CUBEMAP_NEGATIVEX = 0x800;
var DDSCAPS2_CUBEMAP_POSITIVEY = 0x1000;
var DDSCAPS2_CUBEMAP_NEGATIVEY = 0x2000;
var DDSCAPS2_CUBEMAP_POSITIVEZ = 0x4000;
var DDSCAPS2_CUBEMAP_NEGATIVEZ = 0x8000;
// var DDSCAPS2_VOLUME = 0x200000;
// var DDPF_ALPHAPIXELS = 0x1;
// var DDPF_ALPHA = 0x2;
var DDPF_FOURCC = 0x4;
// var DDPF_RGB = 0x40;
// var DDPF_YUV = 0x200;
// var DDPF_LUMINANCE = 0x20000;
function fourCCToInt32( value ) {
......@@ -135,10 +135,10 @@ DDSLoader.prototype = Object.assign( Object.create( CompressedTextureLoader.prot
var off_BBitMask = 25;
var off_ABitMask = 26;
var off_caps = 27;
// var off_caps = 27;
var off_caps2 = 28;
var off_caps3 = 29;
var off_caps4 = 30;
// var off_caps3 = 29;
// var off_caps4 = 30;
// Parse header
......
......@@ -17,21 +17,21 @@ var obj_verify = {
materials: []
};
obj_verify.vertices.push( [ -1, 1, 1 ] );
obj_verify.vertices.push( [ -1, -1, 1 ] );
obj_verify.vertices.push( [ 1, -1, 1 ] );
obj_verify.vertices.push( [ 1, 1, 1 ] );
obj_verify.vertices.push( [ -1, 1, -1 ] );
obj_verify.vertices.push( [ -1, -1, -1 ] );
obj_verify.vertices.push( [ 1, -1, -1 ] );
obj_verify.vertices.push( [ 1, 1, -1 ] );
obj_verify.normals.push( [ 0, 0, 1 ] );
obj_verify.normals.push( [ 0, 0, -1 ] );
obj_verify.normals.push( [ 0, 1, 0 ] );
obj_verify.normals.push( [ 0, -1, 0 ] );
obj_verify.normals.push( [ 1, 0, 0 ] );
obj_verify.normals.push( [ -1, 0, 0 ] );
obj_verify.vertices.push( [ - 1, 1, 1 ] );
obj_verify.vertices.push( [ - 1, - 1, 1 ] );
obj_verify.vertices.push( [ 1, - 1, 1 ] );
obj_verify.vertices.push( [ 1, 1, 1 ] );
obj_verify.vertices.push( [ - 1, 1, - 1 ] );
obj_verify.vertices.push( [ - 1, - 1, - 1 ] );
obj_verify.vertices.push( [ 1, - 1, - 1 ] );
obj_verify.vertices.push( [ 1, 1, - 1 ] );
obj_verify.normals.push( [ 0, 0, 1 ] );
obj_verify.normals.push( [ 0, 0, - 1 ] );
obj_verify.normals.push( [ 0, 1, 0 ] );
obj_verify.normals.push( [ 0, - 1, 0 ] );
obj_verify.normals.push( [ 1, 0, 0 ] );
obj_verify.normals.push( [ - 1, 0, 0 ] );
obj_verify.uvs.push( [ 0, 1 ] );
obj_verify.uvs.push( [ 1, 1 ] );
......@@ -68,42 +68,56 @@ obj_verify.materials.push( 'usemtl purple' );
function vobjCreateVertices( factor, offsets ) {
var output = '\n';
for ( var x, y, z, i = 0, v = obj_verify.vertices, length = v.length; i < length; i++ ) {
for ( var x, y, z, i = 0, v = obj_verify.vertices, length = v.length; i < length; i ++ ) {
x = v[ i ][ 0 ] * factor + offsets[ 0 ];
y = v[ i ][ 1 ] * factor + offsets[ 1 ];
z = v[ i ][ 2 ] * factor + offsets[ 2 ];
output += 'v ' + x + ' ' + y + ' ' + z + '\n';
}
return output;
};
}
function vobjCreateUvs() {
var output = '\n';
for ( var x, y, z, i = 0, vn = obj_verify.uvs, length = vn.length; i < length; i++ ) {
for ( var x, y, i = 0, vn = obj_verify.uvs, length = vn.length; i < length; i ++ ) {
x = vn[ i ][ 0 ];
y = vn[ i ][ 1 ];
output += 'vt ' + x + ' ' + y + '\n';
}
return output;
};
}
function vobjCreateNormals() {
var output = '\n';
for ( var x, y, z, i = 0, vn = obj_verify.normals, length = vn.length; i < length; i++ ) {
for ( var x, y, z, i = 0, vn = obj_verify.normals, length = vn.length; i < length; i ++ ) {
x = vn[ i ][ 0 ];
y = vn[ i ][ 1 ];
z = vn[ i ][ 2 ];
output += 'vn ' + x + ' ' + y + ' ' + z + '\n';
}
return output;
};
}
function vobjCreateCubeV( offsets, groups, usemtls ) {
var output = '\n';
if ( groups === null || groups.length === 0 ) groups = [ null, null, null, null, null, null ];
if ( usemtls === null || usemtls.length === 0 ) usemtls = [ null, null, null, null, null, null ];
for ( var group, usemtl, f0, f1, f2, f3, i = 0, facesV = obj_verify.facesV, length = facesV.length; i < length; i++ ) {
for ( var group, usemtl, f0, f1, f2, f3, i = 0, facesV = obj_verify.facesV, length = facesV.length; i < length; i ++ ) {
f0 = facesV[ i ][ 0 ] + offsets[ 0 ];
f1 = facesV[ i ][ 1 ] + offsets[ 0 ];
f2 = facesV[ i ][ 2 ] + offsets[ 0 ];
......@@ -114,15 +128,18 @@ function vobjCreateCubeV( offsets, groups, usemtls ) {
if ( group ) output += 'g ' + group + '\n';
if ( usemtl ) output += 'usemtl ' + usemtl + '\n';
output += 'f ' + f0 + ' ' + f1 + ' ' + f2 + ' ' + f3 + '\n';
}
return output;
};
}
function vobjCreateCubeVVn( offsets, groups, usemtls ) {
var output = '\n';
if ( groups === null || groups.length === 0 ) groups = [ null, null, null, null, null, null ];
if ( usemtls === null || usemtls.length === 0 ) usemtls = [ null, null, null, null, null, null ];
for ( var group, usemtl, f0, f1, f2, f3, i = 0, facesV = obj_verify.facesV, facesVn = obj_verify.facesVn; i < 6; i++ ) {
for ( var group, usemtl, f0, f1, f2, f3, i = 0, facesV = obj_verify.facesV, facesVn = obj_verify.facesVn; i < 6; i ++ ) {
f0 = facesV[ i ][ 0 ] + offsets[ 0 ] + '//' + ( facesVn[ i ][ 0 ] + offsets[ 1 ] );
f1 = facesV[ i ][ 1 ] + offsets[ 0 ] + '//' + ( facesVn[ i ][ 1 ] + offsets[ 1 ] );
......@@ -137,13 +154,15 @@ function vobjCreateCubeVVn( offsets, groups, usemtls ) {
}
return output;
};
}
function vobjCreateCubeVVt( offsets, groups, usemtls ) {
var output = '\n';
if ( groups === null || groups.length === 0 ) groups = [ null, null, null, null, null, null ];
if ( usemtls === null || usemtls.length === 0 ) usemtls = [ null, null, null, null, null, null ];
for ( var group, usemtl, f0, f1, f2, f3, i = 0, facesV = obj_verify.facesV, facesVt = obj_verify.facesVt; i < 6; i++ ) {
for ( var group, usemtl, f0, f1, f2, f3, i = 0, facesV = obj_verify.facesV, facesVt = obj_verify.facesVt; i < 6; i ++ ) {
f0 = facesV[ i ][ 0 ] + offsets[ 0 ] + '/' + ( facesVt[ i ][ 0 ] + offsets[ 1 ] );
f1 = facesV[ i ][ 1 ] + offsets[ 0 ] + '/' + ( facesVt[ i ][ 1 ] + offsets[ 1 ] );
......@@ -158,13 +177,15 @@ function vobjCreateCubeVVt( offsets, groups, usemtls ) {
}
return output;
};
}
function vobjCreateCubeVVnVt( offsets, groups, usemtls ) {
var output = '\n';
if ( groups === null || groups.length === 0 ) groups = [ null, null, null, null, null, null ];
if ( usemtls === null || usemtls.length === 0 ) usemtls = [ null, null, null, null, null, null ];
for ( var group, usemtl, f0, f1, f2, f3, i = 0, facesV = obj_verify.facesV, facesVt = obj_verify.facesVt, facesVn = obj_verify.facesVn; i < 6; i++ ) {
for ( var group, usemtl, f0, f1, f2, f3, i = 0, facesV = obj_verify.facesV, facesVt = obj_verify.facesVt, facesVn = obj_verify.facesVn; i < 6; i ++ ) {
f0 = facesV[ i ][ 0 ] + offsets[ 0 ] + '/' + ( facesVt[ i ][ 0 ] + offsets[ 1 ] ) + '/' + ( facesVn[ i ][ 0 ] + offsets[ 2 ] );
f1 = facesV[ i ][ 1 ] + offsets[ 0 ] + '/' + ( facesVt[ i ][ 1 ] + offsets[ 1 ] ) + '/' + ( facesVn[ i ][ 1 ] + offsets[ 2 ] );
......@@ -179,12 +200,14 @@ function vobjCreateCubeVVnVt( offsets, groups, usemtls ) {
}
return output;
};
gulp.task( 'default', function( cb ){
}
gulp.task( 'default', function () {
gutil.log( 'Building: verify.obj' );
var offsets = [ 0, 0, 0 ];
var pos = [ -150, 50, 0 ];
var pos = [ - 150, 50, 0 ];
fs.writeFileSync( './verify.obj', '# Verification OBJ created with gulp\n\n' );
fs.appendFileSync( './verify.obj', 'mtllib verify.mtl\n\n# Cube no materials. Translated x:' + pos[ 0 ] );
fs.appendFileSync( './verify.obj', vobjCreateVertices( 10, pos ) );
......@@ -223,7 +246,7 @@ gulp.task( 'default', function( cb ){
fs.appendFileSync( './verify.obj', '\n\n# cube with uvs and normals and two materials and group for every quad. Translated x:' + pos[ 0 ] );
fs.appendFileSync( './verify.obj', vobjCreateVertices( 10, pos ) );
fs.appendFileSync( './verify.obj', vobjCreateNormals() );
fs.appendFileSync( './verify.obj', vobjCreateCubeVVnVt( [ -9, offsets[ 1 ], offsets[ 2 ] ],
fs.appendFileSync( './verify.obj', vobjCreateCubeVVnVt( [ - 9, offsets[ 1 ], offsets[ 2 ] ],
[ 'cube6a', 'cube6b', 'cube6c', 'cube6d', 'cube6e', 'cube6f' ],
[ 'green', null, null, 'orange', null, null ] ) );
......@@ -255,4 +278,4 @@ gulp.task( 'default', function( cb ){
});
\ No newline at end of file
} );
......@@ -49,7 +49,11 @@
var surface = new THREE.Mesh( surfaceGeometry, surfaceMaterial );
// Source: https://gist.github.com/gre/1650294
var easeOutCubic = function ( t ) { return ( -- t ) * t * t + 1; };
var easeOutCubic = function ( t ) {
return ( -- t ) * t * t + 1;
};
// Scaling curve causes particles to grow quickly, ease gradually into full scale, then
// disappear quickly. More of the particle's lifetime is spent around full scale.
......@@ -63,8 +67,8 @@
loader.load( './models/gltf/Flower/Flower.glb', function ( gltf ) {
var _stemMesh = gltf.scene.getObjectByName('Stem');
var _blossomMesh = gltf.scene.getObjectByName('Blossom');
var _stemMesh = gltf.scene.getObjectByName( 'Stem' );
var _blossomMesh = gltf.scene.getObjectByName( 'Blossom' );
stemGeometry = new THREE.InstancedBufferGeometry();
blossomGeometry = new THREE.InstancedBufferGeometry();
......@@ -74,7 +78,7 @@
var defaultTransform = new THREE.Matrix4()
.makeRotationX( Math.PI )
.multiply( new THREE.Matrix4().makeScale( 7, 7, 7 ) )
.multiply( new THREE.Matrix4().makeScale( 7, 7, 7 ) );
stemGeometry.applyMatrix4( defaultTransform );
blossomGeometry.applyMatrix4( defaultTransform );
......@@ -123,7 +127,7 @@
scene.background = new THREE.Color( api.backgroundColor );
var pointLight = new THREE.PointLight( 0xAA8899, 0.75 );
pointLight.position.set( 50, -25, 75 );
pointLight.position.set( 50, - 25, 75 );
scene.add( pointLight );
scene.add( new THREE.HemisphereLight() );
......@@ -214,7 +218,7 @@
}
function resampleParticle ( i ) {
function resampleParticle( i ) {
sampler.sample( _position, _normal );
_normal.add( _position );
......@@ -229,7 +233,7 @@
}
function updateParticle ( i ) {
function updateParticle( i ) {
// Update lifecycle.
......
......@@ -97,7 +97,7 @@
controls = new OrbitControls( camera, renderer.domElement );
controls.addEventListener( 'change', render ); // use if there is no animation loop
controls.minDistance = 2;
controls.maxDistance = 10
controls.maxDistance = 10;
controls.target.set( 0, 0, - 0.2 );
controls.update();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册