- 25 11月, 2010 1 次提交
-
-
由 alteredq 提交于
Turns out it is working better over the real web than on localhost (where it seems loading is too fast for Chrome to pick up UI changes, so it queues them and shows them all just after loading is already finished). Still not working properly - getting length of full content, this seems to be unreliable across browser / server combination. Instead passing to callback JSON object with both total and loaded bytes, so this can be handled in the application layer: { total: bytes_total, loaded: bytes_loaded } To be used e.g. like this: loader.loadBinary( url, function( geometry ) { createScene( geometry ) }, path, updateProgress ); function updateProgress( progress ) { var message = "Loaded "; if ( progress.total ) { message += ( 100 * progress.loaded / progress.total ).toFixed(0) + "%"; } else { message += ( progress.loaded / 1000 ).toFixed(2) + " KB"; } $( "status" ).innerHTML = message; }
-
- 24 11月, 2010 8 次提交
-
-
由 alteredq 提交于
-
由 alteredq 提交于
Not anymore automatic, but also much less wasteful. Has to be called in tandem with scene object removal: scene.removeObject( object ); webglRenderer.removeObject( scene, object );
-
由 Mr.doob 提交于
-
由 Mr.doob 提交于
-
由 alteredq 提交于
-
由 alteredq 提交于
-
由 alteredq 提交于
In WebGLRenderer transparent materials are now handled in the same pass as blended materials (resulting in better fake transparency ;) The order of render passes is now following: 1. opaque materials with normal blending 2. opaque materials with additive blending 3. opaque materials with subtractive blending 4. transparent materials with additive blending 5. transparent materials with subtractive blending 6. transparent materials with normal blending With growing number of passes it's possible it may be worth to do some pre-sorting, though it would have to be tested. Current way is fairly cheap as if there are no corresponding materials in the pass, for loops just blast through (potentially many very cheap operations). Pre-sorting would mean creating arrays on the fly in each frame (one expensive operation with effect on garbage collection, which especially Firefox is currently very bad at).
-
由 alteredq 提交于
Added option to OBJ converter allowing to invert material transparency (some models interpret 0 as opaque and 1 as transparent).
-
- 23 11月, 2010 11 次提交
- 22 11月, 2010 11 次提交
-
-
由 alteredq 提交于
Wrapping options follow WebGL specs: ClampToEdge [default], Repeat, MirroredRepeat.
-
由 alteredq 提交于
Changed title tags in cube mapping demos (so that it's easier to tell them apart in bookmarks / history).
-
由 alteredq 提交于
All cube mapping examples should work and be consistent between MeshCubeMaterial and 6 texture versions.
-
由 alteredq 提交于
This version is inconsistent. Will follow with another merge.
-
由 Mr.doob 提交于
-
由 Mr.doob 提交于
Made up MeshCubeMaterial (missing from alteredq branch)
-
由 Mr.doob 提交于
-
由 Mr.doob 提交于
-
由 Mr.doob 提交于
Removed a loop at line projection time.
-
由 alteredq 提交于
Added MeshCubeMaterial: WebGLRenderer specific material for more efficient rendering of panoramas when doing cube mapping. Also moved loadImageArray utility function from examples into TextureCube.js To be used like this: var urls = [ "px.jpg", "nx.jpg", "py.jpg", "ny.jpg", "pz.jpg", "nz.jpg" ]; var images = THREE.loadImageArray( urls ); var textureCube = new THREE.TextureCube( images ); // create scene var objectMaterial = new THREE.MeshBasicMaterial( { color: 0xffffff, env_map: textureCube } ) createScene( objectMaterial ); // create panorama var size = 100000; var panoMaterial = new THREE.MeshCubeMaterial( { env_map: textureCube } ); var mesh = new THREE.Mesh( new Cube( size, size, size, 1, 1, null, true ), panoMaterial ); sceneCube.addObject( mesh ); Warning: this functionality is currently changing a lot, expect things to get broken before stabilization.
-
由 Mr.doob 提交于
I can't see any other WebGL example being affected by this change (for bad).
-
- 21 11月, 2010 4 次提交
- 20 11月, 2010 5 次提交