Skip to content

Commit 2cff147

Browse files
committed
Examples: Improved UnrealBloomPass examples.
1 parent 057d341 commit 2cff147

File tree

4 files changed

+12
-7
lines changed

4 files changed

+12
-7
lines changed
45.2 KB
Loading
39.2 KB
Loading

examples/webgl_postprocessing_unreal_bloom.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
const params = {
5454
threshold: 0,
5555
strength: 1,
56-
radius: 0,
56+
radius: 0.5,
5757
exposure: 1
5858
};
5959

@@ -92,7 +92,7 @@
9292
renderer.setPixelRatio( window.devicePixelRatio );
9393
renderer.setSize( window.innerWidth, window.innerHeight );
9494
renderer.setAnimationLoop( animate );
95-
renderer.toneMapping = THREE.ReinhardToneMapping;
95+
renderer.toneMapping = THREE.ACESFilmicToneMapping;
9696
container.appendChild( renderer.domElement );
9797

9898
//

examples/webgl_postprocessing_unreal_bloom_selective.html

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@
6262
import { ShaderPass } from 'three/addons/postprocessing/ShaderPass.js';
6363
import { UnrealBloomPass } from 'three/addons/postprocessing/UnrealBloomPass.js';
6464
import { OutputPass } from 'three/addons/postprocessing/OutputPass.js';
65+
import { RoomEnvironment } from 'three/addons/environments/RoomEnvironment.js';
6566

6667
const BLOOM_SCENE = 1;
6768

@@ -78,13 +79,15 @@
7879
const darkMaterial = new THREE.MeshBasicMaterial( { color: 'black' } );
7980
const materials = {};
8081

81-
const renderer = new THREE.WebGLRenderer( { antialias: true } );
82+
const renderer = new THREE.WebGLRenderer( { antialias: false } );
8283
renderer.setPixelRatio( window.devicePixelRatio );
8384
renderer.setSize( window.innerWidth, window.innerHeight );
84-
renderer.toneMapping = THREE.ReinhardToneMapping;
85+
renderer.toneMapping = THREE.NeutralToneMapping;
8586
document.body.appendChild( renderer.domElement );
8687

8788
const scene = new THREE.Scene();
89+
const pmremGenerator = new THREE.PMREMGenerator( renderer );
90+
scene.environment = pmremGenerator.fromScene( new RoomEnvironment(), 0.04 ).texture;
8891

8992
const camera = new THREE.PerspectiveCamera( 40, window.innerWidth / window.innerHeight, 1, 200 );
9093
camera.position.set( 0, 0, 20 );
@@ -103,7 +106,8 @@
103106
bloomPass.strength = params.strength;
104107
bloomPass.radius = params.radius;
105108

106-
const bloomComposer = new EffectComposer( renderer );
109+
const bloomRenderTarget = new THREE.WebGLRenderTarget( window.innerWidth, window.innerHeight, { type: THREE.HalfFloatType } );
110+
const bloomComposer = new EffectComposer( renderer, bloomRenderTarget );
107111
bloomComposer.renderToScreen = false;
108112
bloomComposer.addPass( renderScene );
109113
bloomComposer.addPass( bloomPass );
@@ -123,7 +127,8 @@
123127

124128
const outputPass = new OutputPass();
125129

126-
const finalComposer = new EffectComposer( renderer );
130+
const finalRenderTarget = new THREE.WebGLRenderTarget( window.innerWidth, window.innerHeight, { type: THREE.HalfFloatType, samples: 4 } );
131+
const finalComposer = new EffectComposer( renderer, finalRenderTarget );
127132
finalComposer.addPass( renderScene );
128133
finalComposer.addPass( mixPass );
129134
finalComposer.addPass( outputPass );
@@ -216,7 +221,7 @@
216221
const color = new THREE.Color();
217222
color.setHSL( Math.random(), 0.7, Math.random() * 0.2 + 0.05 );
218223

219-
const material = new THREE.MeshBasicMaterial( { color: color } );
224+
const material = new THREE.MeshStandardMaterial( { color: color, roughness: 1, metalness: 1 } );
220225
const sphere = new THREE.Mesh( geometry, material );
221226
sphere.position.x = Math.random() * 10 - 5;
222227
sphere.position.y = Math.random() * 10 - 5;

0 commit comments

Comments
 (0)