<div id="3d_container" style="width:100%;height:1000px;"></div> <!-- [et_pb_line_break_holder] --><script><!-- [et_pb_line_break_holder] --> if (!Detector.webgl) {<!-- [et_pb_line_break_holder] --> Detector.addGetWebGLMessage();<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> var container;<!-- [et_pb_line_break_holder] --> var camera, controls, scene, renderer;<!-- [et_pb_line_break_holder] --> var lighting, ambient, keyLight, fillLight, backLight;<!-- [et_pb_line_break_holder] -->/*<!-- [et_pb_line_break_holder] --> var windowHalfX = window.innerWidth / 2;<!-- [et_pb_line_break_holder] --> var windowHalfY = window.innerHeight / 2;<!-- [et_pb_line_break_holder] -->*/<!-- [et_pb_line_break_holder] --> var windowWidth = 800;<!-- [et_pb_line_break_holder] --> var windowHeight = 800;<!-- [et_pb_line_break_holder] --> var windowHalfX = windowWidth / 2;<!-- [et_pb_line_break_holder] --> var windowHalfY = windowHeight / 2;<!-- [et_pb_line_break_holder] --> init();<!-- [et_pb_line_break_holder] --> animate();<!-- [et_pb_line_break_holder] --> function init() {<!-- [et_pb_line_break_holder] --> /*<!-- [et_pb_line_break_holder] --> container = document.createElement('div');<!-- [et_pb_line_break_holder] --> document.body.appendChild(container);<!-- [et_pb_line_break_holder] --> */<!-- [et_pb_line_break_holder] --> container = document.getElementById('3d_container');<!-- [et_pb_line_break_holder] --> /* Camera */<!-- [et_pb_line_break_holder] --> camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 1, 1000);<!-- [et_pb_line_break_holder] --> camera.position.z = 3;<!-- [et_pb_line_break_holder] --> /* Scene */<!-- [et_pb_line_break_holder] --> scene = new THREE.Scene();<!-- [et_pb_line_break_holder] --> lighting = false;<!-- [et_pb_line_break_holder] --> ambient = new THREE.AmbientLight(0xffffff, 1.0);<!-- [et_pb_line_break_holder] --> scene.add(ambient);<!-- [et_pb_line_break_holder] --> keyLight = new THREE.DirectionalLight(new THREE.Color('hsl(30, 100%, 75%)'), 1.0);<!-- [et_pb_line_break_holder] --> keyLight.position.set(-100, 0, 100);<!-- [et_pb_line_break_holder] --> fillLight = new THREE.DirectionalLight(new THREE.Color('hsl(240, 100%, 75%)'), 0.75);<!-- [et_pb_line_break_holder] --> fillLight.position.set(100, 0, 100);<!-- [et_pb_line_break_holder] --> backLight = new THREE.DirectionalLight(0xffffff, 1.0);<!-- [et_pb_line_break_holder] --> backLight.position.set(100, 0, -100).normalize();<!-- [et_pb_line_break_holder] --> /* Model */<!-- [et_pb_line_break_holder] --> var mtlLoader = new THREE.MTLLoader();<!-- [et_pb_line_break_holder] --> mtlLoader.setBaseUrl('https://4101drycreekrd.build/wp-content/themes/4101drycreekrd/3d_model/cat/');<!-- [et_pb_line_break_holder] --> mtlLoader.setPath('https://4101drycreekrd.build/wp-content/themes/4101drycreekrd/3d_model/cat/');<!-- [et_pb_line_break_holder] --> mtlLoader.load('cat.mtl', function (materials) {<!-- [et_pb_line_break_holder] --> materials.preload();<!-- [et_pb_line_break_holder] -->/*<!-- [et_pb_line_break_holder] --> materials.materials.default.map.magFilter = THREE.NearestFilter;<!-- [et_pb_line_break_holder] --> materials.materials.default.map.minFilter = THREE.LinearFilter;<!-- [et_pb_line_break_holder] -->*/<!-- [et_pb_line_break_holder] --> var objLoader = new THREE.OBJLoader();<!-- [et_pb_line_break_holder] --> objLoader.setMaterials(materials);<!-- [et_pb_line_break_holder] --> objLoader.setPath('https://4101drycreekrd.build/wp-content/themes/4101drycreekrd/3d_model/cat/');<!-- [et_pb_line_break_holder] --> objLoader.load('cat.obj', function (object) {<!-- [et_pb_line_break_holder] --> scene.add(object);<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> /* Renderer */<!-- [et_pb_line_break_holder] --> renderer = new THREE.WebGLRenderer();<!-- [et_pb_line_break_holder] --> renderer.setPixelRatio(window.devicePixelRatio);<!-- [et_pb_line_break_holder] --> renderer.setSize(windowWidth, windowHeight);<!-- [et_pb_line_break_holder] --> renderer.setClearColor(new THREE.Color("hsl(0, 0%, 10%)"));<!-- [et_pb_line_break_holder] --> container.appendChild(renderer.domElement);<!-- [et_pb_line_break_holder] --> /* Controls */<!-- [et_pb_line_break_holder] --> controls = new THREE.OrbitControls(camera, renderer.domElement);<!-- [et_pb_line_break_holder] --> controls.enableDamping = true;<!-- [et_pb_line_break_holder] --> controls.dampingFactor = 0.25;<!-- [et_pb_line_break_holder] --> controls.enableZoom = true;<!-- [et_pb_line_break_holder] --> /* Events */<!-- [et_pb_line_break_holder] --> window.addEventListener('resize', onWindowResize, false);<!-- [et_pb_line_break_holder] --> window.addEventListener('keydown', onKeyboardEvent, false);<!-- [et_pb_line_break_holder] -->/*<!-- [et_pb_line_break_holder] --> ambient.intensity = 0.25;<!-- [et_pb_line_break_holder] --> scene.add(keyLight);<!-- [et_pb_line_break_holder] --> scene.add(fillLight);<!-- [et_pb_line_break_holder] --> scene.add(backLight);<!-- [et_pb_line_break_holder] -->*/<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> function onWindowResize() {<!-- [et_pb_line_break_holder] -->/*<!-- [et_pb_line_break_holder] --> windowHalfX = window.innerWidth / 2;<!-- [et_pb_line_break_holder] --> windowHalfY = window.innerHeight / 2;<!-- [et_pb_line_break_holder] --> camera.aspect = window.innerWidth / window.innerHeight;<!-- [et_pb_line_break_holder] --> camera.updateProjectionMatrix();<!-- [et_pb_line_break_holder] --> renderer.setSize(windowWidth, windowHeight);<!-- [et_pb_line_break_holder] -->*/<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> function onKeyboardEvent(e) {<!-- [et_pb_line_break_holder] --> if (e.code === 'KeyL') {<!-- [et_pb_line_break_holder] --> lighting = !lighting;<!-- [et_pb_line_break_holder] --> if (lighting) {<!-- [et_pb_line_break_holder] --> ambient.intensity = 0.25;<!-- [et_pb_line_break_holder] --> scene.add(keyLight);<!-- [et_pb_line_break_holder] --> scene.add(fillLight);<!-- [et_pb_line_break_holder] --> scene.add(backLight);<!-- [et_pb_line_break_holder] --> } else {<!-- [et_pb_line_break_holder] --> ambient.intensity = 1.0;<!-- [et_pb_line_break_holder] --> scene.remove(keyLight);<!-- [et_pb_line_break_holder] --> scene.remove(fillLight);<!-- [et_pb_line_break_holder] --> scene.remove(backLight);<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> function animate() {<!-- [et_pb_line_break_holder] --> requestAnimationFrame(animate);<!-- [et_pb_line_break_holder] --> controls.update();<!-- [et_pb_line_break_holder] --> render();<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> function render() {<!-- [et_pb_line_break_holder] --> renderer.render(scene, camera);<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> </script><!-- [et_pb_line_break_holder] -->