|
@@ -19,7 +19,7 @@
|
|
|
import Stats from './jsm/libs/stats.module.js';
|
|
|
|
|
|
import { OrbitControls } from './jsm/controls/OrbitControls.js';
|
|
|
- import { HDRCubeTextureLoader } from './jsm/loaders/HDRCubeTextureLoader.js';
|
|
|
+ import { RGBELoader } from './jsm/loaders/RGBELoader.js';
|
|
|
import { PMREMGenerator } from './jsm/pmrem/PMREMGenerator.js';
|
|
|
|
|
|
var container, stats;
|
|
@@ -43,20 +43,8 @@
|
|
|
camera = new THREE.PerspectiveCamera( 40, window.innerWidth / window.innerHeight, 1, 2000 );
|
|
|
camera.position.set( 0.0, 400, 400 * 3.5 );
|
|
|
|
|
|
- //
|
|
|
- var genCubeUrls = function ( prefix, postfix ) {
|
|
|
-
|
|
|
- return [
|
|
|
- prefix + 'px' + postfix, prefix + 'nx' + postfix,
|
|
|
- prefix + 'py' + postfix, prefix + 'ny' + postfix,
|
|
|
- prefix + 'pz' + postfix, prefix + 'nz' + postfix
|
|
|
- ];
|
|
|
-
|
|
|
- };
|
|
|
-
|
|
|
scene = new THREE.Scene();
|
|
|
|
|
|
- var hdrUrls = genCubeUrls( './textures/cube/pisaHDR/', '.hdr' );
|
|
|
var hdrCubeRenderTarget = null;
|
|
|
|
|
|
// Materials
|
|
@@ -66,12 +54,14 @@
|
|
|
imgTexture.anisotropy = 16;
|
|
|
imgTexture = null;
|
|
|
|
|
|
- new HDRCubeTextureLoader()
|
|
|
+ new RGBELoader()
|
|
|
.setDataType( THREE.UnsignedByteType )
|
|
|
- .load( hdrUrls, function ( hdrCubeMap ) {
|
|
|
+ .setPath( 'textures/equirectangular/' )
|
|
|
+ .load( 'pedestrian_overpass_1k.hdr', function ( hdrCubeMap ) {
|
|
|
|
|
|
var pmremGenerator = new PMREMGenerator( renderer );
|
|
|
hdrCubeRenderTarget = pmremGenerator.fromCubemap( hdrCubeMap );
|
|
|
+ hdrCubeMap.dispose();
|
|
|
pmremGenerator.dispose();
|
|
|
|
|
|
var bumpScale = 1;
|
|
@@ -121,9 +111,7 @@
|
|
|
|
|
|
}
|
|
|
|
|
|
- hdrCubeMap.magFilter = THREE.LinearFilter;
|
|
|
- hdrCubeMap.needsUpdate = true;
|
|
|
- scene.background = hdrCubeMap;
|
|
|
+ scene.background = hdrCubeRenderTarget.texture;
|
|
|
|
|
|
} );
|
|
|
|