From 8e3ff4ba0d8372fd14ba190e650d903cc4ca597e Mon Sep 17 00:00:00 2001 From: Squareys Date: Tue, 22 Oct 2019 11:13:38 +0200 Subject: [PATCH 1/3] Upgrade three.js for WebXR support --- package.json | 2 +- src/javascripts/three/OBJLoader.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index f36df69..3b192ca 100644 --- a/package.json +++ b/package.json @@ -117,7 +117,7 @@ "object.values": "^1.0.3", "randomstring": "^1.1.5", "screenfull": "^3.0.2", - "three": "^0.84.0", + "three": "^0.109.0", "webvr-polyfill": "^0.9.20", "wordwrap": "^1.0.0", "worker-loader": "^0.7.1", diff --git a/src/javascripts/three/OBJLoader.js b/src/javascripts/three/OBJLoader.js index 7843ef3..5baec49 100644 --- a/src/javascripts/three/OBJLoader.js +++ b/src/javascripts/three/OBJLoader.js @@ -712,7 +712,7 @@ OBJLoader.prototype = { } - material.shading = sourceMaterial.smooth ? SmoothShading : FlatShading; + material.flatShading = sourceMaterial.smooth ? SmoothShading : FlatShading; createdMaterials.push(material); From 0787c3e9b806a6dd5d4fa19789d16a30ff709fb4 Mon Sep 17 00:00:00 2001 From: Squareys Date: Tue, 22 Oct 2019 11:14:23 +0200 Subject: [PATCH 2/3] Revert (some of) "replace setup vr button with webvr/webxr info text" This reverts parts of commit df876b18312d6dae6391c8dc51a978c4c1c07688. --- src/html/index.html | 4 ++-- src/javascripts/app.js | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/html/index.html b/src/html/index.html index 5be203e..2243b60 100644 --- a/src/html/index.html +++ b/src/html/index.html @@ -109,9 +109,9 @@

Konterball

+
-

We're updating WebVR to WebXR. In the meantime, check out this experiment in 360. -

+

Try it without a headset or get set up in VR.

diff --git a/src/javascripts/app.js b/src/javascripts/app.js index 505588b..968da53 100644 --- a/src/javascripts/app.js +++ b/src/javascripts/app.js @@ -101,6 +101,7 @@ class PingPong { this.loadModeChooserAnimation(), this.loadingAnimation(), ]).then(() => { + this.setupVRButton(); this.introAnimation(); }).catch(e => { console.warn(e); From 5792105e5d8d5ad4114585e9a8e6f4dfed9faa12 Mon Sep 17 00:00:00 2001 From: Squareys Date: Tue, 17 Dec 2019 08:59:13 +0100 Subject: [PATCH 3/3] Upgrade three.js to r111 for stable WebXR support Signed-off-by: Squareys --- package.json | 2 +- src/javascripts/three/OBJLoader.js | 6 +++--- src/javascripts/three/VREffect.js | 5 +++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 3b192ca..cc26177 100644 --- a/package.json +++ b/package.json @@ -117,7 +117,7 @@ "object.values": "^1.0.3", "randomstring": "^1.1.5", "screenfull": "^3.0.2", - "three": "^0.109.0", + "three": "^0.111.0", "webvr-polyfill": "^0.9.20", "wordwrap": "^1.0.0", "worker-loader": "^0.7.1", diff --git a/src/javascripts/three/OBJLoader.js b/src/javascripts/three/OBJLoader.js index 5baec49..7e03c73 100644 --- a/src/javascripts/three/OBJLoader.js +++ b/src/javascripts/three/OBJLoader.js @@ -663,11 +663,11 @@ OBJLoader.prototype = { var buffergeometry = new BufferGeometry(); - buffergeometry.addAttribute( 'position', new BufferAttribute( new Float32Array( geometry.vertices ), 3 ) ); + buffergeometry.setAttribute( 'position', new BufferAttribute( new Float32Array( geometry.vertices ), 3 ) ); if ( geometry.normals.length > 0 ) { - buffergeometry.addAttribute( 'normal', new BufferAttribute( new Float32Array( geometry.normals ), 3 ) ); + buffergeometry.setAttribute( 'normal', new BufferAttribute( new Float32Array( geometry.normals ), 3 ) ); } else { @@ -677,7 +677,7 @@ OBJLoader.prototype = { if ( geometry.uvs.length > 0 ) { - buffergeometry.addAttribute( 'uv', new BufferAttribute( new Float32Array( geometry.uvs ), 2 ) ); + buffergeometry.setAttribute( 'uv', new BufferAttribute( new Float32Array( geometry.uvs ), 2 ) ); } diff --git a/src/javascripts/three/VREffect.js b/src/javascripts/three/VREffect.js index c419f1b..f8f70e6 100644 --- a/src/javascripts/three/VREffect.js +++ b/src/javascripts/three/VREffect.js @@ -9,7 +9,7 @@ * */ -import {Vector3, PerspectiveCamera} from 'three'; +import {Vector2, Vector3, PerspectiveCamera} from 'three'; const VREffect = function ( renderer, onError ) { @@ -59,7 +59,8 @@ const VREffect = function ( renderer, onError ) { var scope = this; - var rendererSize = renderer.getSize(); + var rendererSize = new Vector2(); + renderer.getSize(rendererSize); var rendererUpdateStyle = false; var rendererPixelRatio = renderer.getPixelRatio();