Skip to content

Commit

Permalink
Merge pull request #509 from pmndrs/dev
Browse files Browse the repository at this point in the history
Version 6.32.2
  • Loading branch information
vanruesc authored Jul 1, 2023
2 parents c3ce388 + 04b4e38 commit 3fbe7b7
Show file tree
Hide file tree
Showing 65 changed files with 820 additions and 604 deletions.
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,12 @@ const composer = new EffectComposer(renderer, {
});
```

## Tone Mapping

Tone mapping is the process of converting HDR colors to LDR output colors. When using postprocessing, the `toneMapping` setting on the renderer should be set to `NoToneMapping` (default) and high precision frame buffers should be enabled. Otherwise, colors will be mapped to `[0.0, 1.0]` at the start of the pipeline. To enable tone mapping, use a `ToneMappingEffect` at the end of the pipeline.

Note that tone mapping is not applied to the clear color when using only the renderer because clearing doesn't involve shaders. Postprocessing applies to the full input image which means that tone mapping will also be applied uniformly. Consequently, the results of tone mapping a clear color background with and without postprocessing will be different, with the postprocessing approach being correct.

## Performance

This library provides an [EffectPass](https://pmndrs.github.io/postprocessing/public/docs/class/src/passes/EffectPass.js~EffectPass.html) which automatically organizes and merges any given combination of effects. This minimizes the amount of render operations and makes it possible to combine many effects without the performance penalties of traditional pass chaining. Additionally, every effect can choose its own [blend function](https://pmndrs.github.io/postprocessing/public/docs/variable/index.html#static-variable-BlendFunction).
Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/AntialiasingDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -157,11 +157,11 @@ export class AntialiasingDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(4, 8, 0.75);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(4, 8, 0.75);
controls.lookAt(-0.5, 6.5, -0.25);
this.controls = controls;

Expand Down
12 changes: 6 additions & 6 deletions demo/src/demos/BloomDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -218,12 +218,12 @@ export class BloomDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.general.setMode(ControlMode.THIRD_PERSON);
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setEnabled(false);
settings.zoom.setSensitivity(1.0);
controls.setPosition(-10, 6, 15);
settings.general.mode = ControlMode.THIRD_PERSON;
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.enabled = false;
settings.zoom.sensitivity = 1.0;
controls.position.set(-10, 6, 15);
this.controls = controls;

// Sky
Expand Down
12 changes: 6 additions & 6 deletions demo/src/demos/BlurDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -146,12 +146,12 @@ export class BlurDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.general.setMode(ControlMode.THIRD_PERSON);
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setEnabled(false);
settings.zoom.setSensitivity(1.0);
controls.setPosition(-15, 0, -15);
settings.general.mode = ControlMode.THIRD_PERSON;
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.enabled = false;
settings.zoom.sensitivity = 1.0;
controls.position.set(-15, 0, -15);
this.controls = controls;

// Sky
Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/ColorDepthDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -103,11 +103,11 @@ export class ColorDepthDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(-9, 0.5, 0);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(-9, 0.5, 0);
controls.lookAt(0, 3, -3.5);
this.controls = controls;

Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/ColorGradingDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -228,11 +228,11 @@ export class ColorGradingDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(-9, 0.5, 0);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(-9, 0.5, 0);
controls.lookAt(0, 3, -3.5);
this.controls = controls;

Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/DepthOfFieldDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -151,11 +151,11 @@ export class DepthOfFieldDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(-2.3684, 0.5964, -1.3052);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(-2.3684, 0.5964, -1.3052);
controls.lookAt(-1.4265, 0.6513, -1.6365);
this.controls = controls;

Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/GlitchDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -143,11 +143,11 @@ export class GlitchDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(-9, 0.5, 0);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(-9, 0.5, 0);
controls.lookAt(0, 3, -3.5);
this.controls = controls;

Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/GodRaysDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -138,11 +138,11 @@ export class GodRaysDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(9.25, 2.4, 1);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(9.25, 2.4, 1);
controls.lookAt(8.4, 2.15, 0.5);
this.controls = controls;

Expand Down
17 changes: 10 additions & 7 deletions demo/src/demos/OutlineDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -255,13 +255,13 @@ export class OutlineDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.general.setMode(ControlMode.THIRD_PERSON);
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setEnabled(false);
settings.zoom.setSensitivity(1.0);
settings.zoom.setDamping(0.05);
controls.setPosition(-4, 1.25, -5);
settings.general.mode = ControlMode.THIRD_PERSON;
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.enabled = false;
settings.zoom.sensitivity = 1.0;
settings.zoom.damping = 0.05;
controls.position.set(-4, 1.25, -5);
this.controls = controls;

// Sky
Expand Down Expand Up @@ -383,6 +383,7 @@ export class OutlineDemo extends PostProcessingDemo {

const outlineEffect = new OutlineEffect(scene, camera, {
blendFunction: BlendFunction.SCREEN,
multisampling: Math.min(4, renderer.capabilities.maxSamples),
edgeStrength: 2.5,
pulseSpeed: 0.0,
visibleEdgeColor: 0xffffff,
Expand Down Expand Up @@ -440,6 +441,8 @@ export class OutlineDemo extends PostProcessingDemo {

});

menu.add(effect, "multisampling", [0, 2, 4]);

menu.add(params, "blurriness",
KernelSize.VERY_SMALL, KernelSize.HUGE + 1, 1).onChange((value) => {

Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/PatternDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -119,11 +119,11 @@ export class PatternDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(-9, 0.5, 0);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(-9, 0.5, 0);
controls.lookAt(0, 3, -3.5);
this.controls = controls;

Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/PixelationDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -98,11 +98,11 @@ export class PixelationDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(-9, 0.5, 0);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(-9, 0.5, 0);
controls.lookAt(0, 3, -3.5);
this.controls = controls;

Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/SSAODemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -131,11 +131,11 @@ export class SSAODemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(9.5, 1.65, -0.25);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(9.5, 1.65, -0.25);
controls.lookAt(8.5, 1.65, -0.25);
this.controls = controls;

Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/ShockWaveDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -203,11 +203,11 @@ export class ShockWaveDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(-8, 1, -0.25);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(-8, 1, -0.25);
controls.lookAt(target);
this.controls = controls;

Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/TextureDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -115,11 +115,11 @@ export class TextureDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(-9, 0.5, 0);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(-9, 0.5, 0);
controls.lookAt(0, 3, -3.5);
this.controls = controls;

Expand Down
10 changes: 5 additions & 5 deletions demo/src/demos/ToneMappingDemo.js
Original file line number Diff line number Diff line change
Expand Up @@ -109,11 +109,11 @@ export class ToneMappingDemo extends PostProcessingDemo {
const { position, quaternion } = camera;
const controls = new SpatialControls(position, quaternion, domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setSensitivity(3.0);
settings.translation.setDamping(0.1);
controls.setPosition(-5.15, 8.1, -0.95);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.sensitivity = 3.0;
settings.translation.damping = 0.1;
controls.position.set(-5.15, 8.1, -0.95);
controls.lookAt(-4.4, 8.6, -0.5);
this.controls = controls;

Expand Down
2 changes: 1 addition & 1 deletion manual/assets/css/src/themes/_highlight-dark.scss
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
/* KeywordType */ .chroma .kt { color: #66D9EF; }
/* Name */ .chroma .n { color: #F8F8F2; }
/* NameAttribute */ .chroma .na { color: #A6E22E; }
/* NameBuiltin */ .chroma .nb { }
/* NameBuiltin */ .chroma .nb { color: #F8F8F2; }
/* NameBuiltinPseudo */ .chroma .bp { }
/* NameClass */ .chroma .nc { color: #A6E22E; }
/* NameConstant */ .chroma .no { color: #66D9EF; }
Expand Down
12 changes: 6 additions & 6 deletions manual/assets/js/src/demos/bloom.js
Original file line number Diff line number Diff line change
Expand Up @@ -77,10 +77,10 @@ window.addEventListener("load", () => load().then((assets) => {
const camera = new PerspectiveCamera();
const controls = new SpatialControls(camera.position, camera.quaternion, renderer.domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setDamping(0.1);
controls.setPosition(0, 0, 1);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.damping = 0.1;
controls.position.set(0, 0, 1);
controls.lookAt(0, 0, 0);

// Scene, Lights, Objects
Expand Down Expand Up @@ -125,8 +125,8 @@ window.addEventListener("load", () => load().then((assets) => {
});

const effect = new SelectiveBloomEffect(scene, camera, {
luminanceThreshold: 0.1,
luminanceSmoothing: 0.3,
luminanceThreshold: 0.3,
luminanceSmoothing: 0.2,
mipmapBlur: true,
intensity: 4.0
});
Expand Down
12 changes: 6 additions & 6 deletions manual/assets/js/src/demos/blur.js
Original file line number Diff line number Diff line change
Expand Up @@ -76,12 +76,12 @@ window.addEventListener("load", () => load().then((assets) => {
const camera = new PerspectiveCamera();
const controls = new SpatialControls(camera.position, camera.quaternion, renderer.domElement);
const settings = controls.settings;
settings.general.setMode(ControlMode.THIRD_PERSON);
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.zoom.setDamping(0.1);
settings.translation.setEnabled(false);
controls.setPosition(0, 0, 5);
settings.general.mode = ControlMode.THIRD_PERSON;
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.zoom.damping = 0.1;
settings.translation.enabled = false;
controls.position.set(0, 0, 5);

// Scene, Lights, Objects

Expand Down
12 changes: 6 additions & 6 deletions manual/assets/js/src/demos/brightness-contrast.js
Original file line number Diff line number Diff line change
Expand Up @@ -66,12 +66,12 @@ window.addEventListener("load", () => load().then((assets) => {
const camera = new PerspectiveCamera();
const controls = new SpatialControls(camera.position, camera.quaternion, renderer.domElement);
const settings = controls.settings;
settings.general.setMode(ControlMode.THIRD_PERSON);
settings.zoom.setSensitivity(0.05);
settings.zoom.setDamping(0.1);
settings.rotation.setSensitivity(0);
settings.translation.setEnabled(false);
controls.setPosition(0, 0, 1.4);
settings.general.mode = ControlMode.THIRD_PERSON;
settings.zoom.sensitivity = 0.05;
settings.zoom.damping = 0.1;
settings.rotation.enabled = false;
settings.translation.enabled = false;
controls.position.set(0, 0, 1.4);

// Scene & Objects

Expand Down
8 changes: 4 additions & 4 deletions manual/assets/js/src/demos/chromatic-aberration.js
Original file line number Diff line number Diff line change
Expand Up @@ -71,10 +71,10 @@ window.addEventListener("load", () => load().then((assets) => {
const camera = new PerspectiveCamera();
const controls = new SpatialControls(camera.position, camera.quaternion, renderer.domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setDamping(0.1);
controls.setPosition(0, 0, 1);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.damping = 0.1;
controls.position.set(0, 0, 1);
controls.lookAt(0, 0, 0);

// Scene, Lights, Objects
Expand Down
8 changes: 4 additions & 4 deletions manual/assets/js/src/demos/color-depth.js
Original file line number Diff line number Diff line change
Expand Up @@ -71,10 +71,10 @@ window.addEventListener("load", () => load().then((assets) => {
const camera = new PerspectiveCamera();
const controls = new SpatialControls(camera.position, camera.quaternion, renderer.domElement);
const settings = controls.settings;
settings.rotation.setSensitivity(2.2);
settings.rotation.setDamping(0.05);
settings.translation.setDamping(0.1);
controls.setPosition(0, 0, 1);
settings.rotation.sensitivity = 2.2;
settings.rotation.damping = 0.05;
settings.translation.damping = 0.1;
controls.position.set(0, 0, 1);
controls.lookAt(0, 0, 0);

// Scene, Lights, Objects
Expand Down
Loading

0 comments on commit 3fbe7b7

Please sign in to comment.