From 027250dededfd9a07ac67d2eeb9295e6601dba65 Mon Sep 17 00:00:00 2001 From: "Mr.doob" Date: Fri, 5 Sep 2014 18:26:28 -0400 Subject: [PATCH] Terrain examples now using PlaneBufferGeometry. --- examples/webgl_geometry_terrain.html | 8 +++++--- examples/webgl_geometry_terrain_fog.html | 8 +++++--- examples/webgl_geometry_terrain_raycast.html | 8 +++++--- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/examples/webgl_geometry_terrain.html b/examples/webgl_geometry_terrain.html index c4fb7abe26..bce9b08b8f 100644 --- a/examples/webgl_geometry_terrain.html +++ b/examples/webgl_geometry_terrain.html @@ -81,12 +81,14 @@ camera.position.y = data[ worldHalfWidth + worldHalfDepth * worldWidth ] * 10 + 500; - var geometry = new THREE.PlaneGeometry( 7500, 7500, worldWidth - 1, worldDepth - 1 ); + var geometry = new THREE.PlaneBufferGeometry( 7500, 7500, worldWidth - 1, worldDepth - 1 ); geometry.applyMatrix( new THREE.Matrix4().makeRotationX( - Math.PI / 2 ) ); - for ( var i = 0, l = geometry.vertices.length; i < l; i ++ ) { + var vertices = geometry.attributes.position.array; - geometry.vertices[ i ].y = data[ i ] * 10; + for ( var i = 0, j = 0, l = vertices.length; i < l; i ++, j += 3 ) { + + vertices[ j + 1 ] = data[ i ] * 10; } diff --git a/examples/webgl_geometry_terrain_fog.html b/examples/webgl_geometry_terrain_fog.html index ffaf5d5f64..9c0d33b011 100644 --- a/examples/webgl_geometry_terrain_fog.html +++ b/examples/webgl_geometry_terrain_fog.html @@ -83,12 +83,14 @@ camera.position.y = data[ worldHalfWidth + worldHalfDepth * worldWidth ] * 10 + 500; - var geometry = new THREE.PlaneGeometry( 7500, 7500, worldWidth - 1, worldDepth - 1 ); + var geometry = new THREE.PlaneBufferGeometry( 7500, 7500, worldWidth - 1, worldDepth - 1 ); geometry.applyMatrix( new THREE.Matrix4().makeRotationX( - Math.PI / 2 ) ); - for ( var i = 0, l = geometry.vertices.length; i < l; i ++ ) { + var vertices = geometry.attributes.position.array; - geometry.vertices[ i ].y = data[ i ] * 10; + for ( var i = 0, j = 0, l = vertices.length; i < l; i ++, j += 3 ) { + + vertices[ j + 1 ] = data[ i ] * 10; } diff --git a/examples/webgl_geometry_terrain_raycast.html b/examples/webgl_geometry_terrain_raycast.html index 5b7698c729..5e21c00688 100644 --- a/examples/webgl_geometry_terrain_raycast.html +++ b/examples/webgl_geometry_terrain_raycast.html @@ -86,12 +86,14 @@ camera.position.y = controls.center.y + 2000; camera.position.x = 2000; - var geometry = new THREE.PlaneGeometry( 7500, 7500, worldWidth - 1, worldDepth - 1 ); + var geometry = new THREE.PlaneBufferGeometry( 7500, 7500, worldWidth - 1, worldDepth - 1 ); geometry.applyMatrix( new THREE.Matrix4().makeRotationX( - Math.PI / 2 ) ); - for ( var i = 0, l = geometry.vertices.length; i < l; i ++ ) { + var vertices = geometry.attributes.position.array; - geometry.vertices[ i ].y = data[ i ] * 10; + for ( var i = 0, j = 0, l = vertices.length; i < l; i ++, j += 3 ) { + + vertices[ j + 1 ] = data[ i ] * 10; } -- GitLab