JSFiddle - React, Tailwind, and code Playground
HTML
<div id="container">
</div>
JavaScript
import * as THREE from 'https://cdn.skypack.dev/three@0.135.0/build/three.module.js';
import Stats from 'https://cdn.skypack.dev/three@0.135.0/examples/jsm/libs/stats.module.js';
import { OrbitControls } from 'https://cdn.skypack.dev/three@0.135.0/examples/jsm/controls/OrbitControls.js';
import { GUI } from 'https://cdn.skypack.dev/three@0.135.0/examples/jsm/libs/lil-gui.module.min.js';
import { EffectComposer } from 'https://cdn.skypack.dev/three@0.135.0/examples/jsm/postprocessing/EffectComposer.js';
import { SSRPass } from 'https://cdn.skypack.dev/three@0.135.0/examples/jsm/postprocessing/SSRPass.js';
import { ShaderPass } from 'https://cdn.skypack.dev/three@0.135.0/examples/jsm/postprocessing/ShaderPass.js';
import { FXAAShader } from 'https://cdn.skypack.dev/three@0.135.0/examples/jsm/shaders/FXAAShader.js';
import { GammaCorrectionShader } from 'https://cdn.skypack.dev/three@0.135.0/examples/jsm/shaders/GammaCorrectionShader.js';
import { ReflectorForSSRPass } from 'https://cdn.skypack.dev/three@0.135.0/examples/jsm/objects/ReflectorForSSRPass.js';
import { DRACOLoader } from 'https://cdn.skypack.dev/three@0.135.0/examples/jsm/loaders/DRACOLoader.js';
const params = {
enableSSR: true,
autoRotate: true,
otherMeshes: true,
groundReflector: true,
};
let composer;
let ssrPass;
let gui;
let stats;
let controls;
let camera, scene, renderer;
const otherMeshes = [];
let groundReflector, fxaaPass;
const selects = [];
const container = document.querySelector( '#container' );
// Configure and create Draco decoder.
const dracoLoader = new DRACOLoader();
dracoLoader.setDecoderPath( 'https://threejs.org/examples/js/libs/draco/' );
dracoLoader.setDecoderConfig( { type: 'js' } );
init();
animate();
function init() {
camera = new THREE.PerspectiveCamera( 35, window.innerWidth / window.innerHeight, 0.1, 15 );
camera.position.set( 0.13271600513224902, 0.3489546826045913, 0.43921296427927076 );
scene = new THREE.Scene();
scene.background = new...