|
@@ -19,7 +19,9 @@
|
|
|
|
|
|
import * as THREE from '../build/three.module.js';
|
|
import * as THREE from '../build/three.module.js';
|
|
|
|
|
|
- let camera, scene, renderer;
|
|
|
|
|
|
+ import Stats from './jsm/libs/stats.module.js';
|
|
|
|
+
|
|
|
|
+ let camera, scene, renderer, stats;
|
|
let cube, sphere, torus, material;
|
|
let cube, sphere, torus, material;
|
|
|
|
|
|
let count = 0, cubeCamera1, cubeCamera2, cubeRenderTarget1, cubeRenderTarget2;
|
|
let count = 0, cubeCamera1, cubeCamera2, cubeRenderTarget1, cubeRenderTarget2;
|
|
@@ -49,6 +51,9 @@
|
|
renderer.outputEncoding = THREE.sRGBEncoding;
|
|
renderer.outputEncoding = THREE.sRGBEncoding;
|
|
document.body.appendChild( renderer.domElement );
|
|
document.body.appendChild( renderer.domElement );
|
|
|
|
|
|
|
|
+ stats = new Stats();
|
|
|
|
+ document.body.appendChild( stats.dom );
|
|
|
|
+
|
|
scene = new THREE.Scene();
|
|
scene = new THREE.Scene();
|
|
scene.background = texture;
|
|
scene.background = texture;
|
|
|
|
|
|
@@ -56,28 +61,20 @@
|
|
|
|
|
|
//
|
|
//
|
|
|
|
|
|
- cubeRenderTarget1 = new THREE.WebGLCubeRenderTarget( 256, {
|
|
|
|
- format: THREE.RGBFormat,
|
|
|
|
- generateMipmaps: true,
|
|
|
|
- minFilter: THREE.LinearMipmapLinearFilter
|
|
|
|
- } );
|
|
|
|
|
|
+ cubeRenderTarget1 = new THREE.WebGLCubeRenderTarget( 256 );
|
|
|
|
|
|
cubeCamera1 = new THREE.CubeCamera( 1, 1000, cubeRenderTarget1 );
|
|
cubeCamera1 = new THREE.CubeCamera( 1, 1000, cubeRenderTarget1 );
|
|
|
|
|
|
- cubeRenderTarget2 = new THREE.WebGLCubeRenderTarget( 256, {
|
|
|
|
- format: THREE.RGBFormat,
|
|
|
|
- generateMipmaps: true,
|
|
|
|
- minFilter: THREE.LinearMipmapLinearFilter
|
|
|
|
- } );
|
|
|
|
|
|
+ cubeRenderTarget2 = new THREE.WebGLCubeRenderTarget( 256 );
|
|
|
|
|
|
cubeCamera2 = new THREE.CubeCamera( 1, 1000, cubeRenderTarget2 );
|
|
cubeCamera2 = new THREE.CubeCamera( 1, 1000, cubeRenderTarget2 );
|
|
|
|
|
|
//
|
|
//
|
|
|
|
|
|
- material = new THREE.MeshBasicMaterial( {
|
|
|
|
|
|
+ material = new THREE.MeshStandardMaterial( {
|
|
envMap: cubeRenderTarget2.texture,
|
|
envMap: cubeRenderTarget2.texture,
|
|
- combine: THREE.MultiplyOperation,
|
|
|
|
- reflectivity: 1
|
|
|
|
|
|
+ roughness: 0,
|
|
|
|
+ metalness: 1
|
|
} );
|
|
} );
|
|
|
|
|
|
sphere = new THREE.Mesh( new THREE.IcosahedronGeometry( 20, 8 ), material );
|
|
sphere = new THREE.Mesh( new THREE.IcosahedronGeometry( 20, 8 ), material );
|
|
@@ -201,6 +198,8 @@
|
|
|
|
|
|
renderer.render( scene, camera );
|
|
renderer.render( scene, camera );
|
|
|
|
|
|
|
|
+ stats.update();
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
</script>
|
|
</script>
|