shu-vro / THREEjs-Projects

THREEjs Projects || HTML || CSS || JavaScript. A library of javascript 3d models.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

THREEjs-Projects

THREEjs Projects || HTML || CSS || JavaScript. A library of javascript 3d models. Support me on: facebook

Information Author:
First Name: Shirshen
Last Name: Das Gupta
Nick Name: Shuvro
Other Names: None

Common Codes:

// Import necessary packages
import * as THREE from "https://cdn.jsdelivr.net/npm/three@0.125.2/build/three.module.js";
import { OrbitControls } from "https://cdn.jsdelivr.net/npm/three@0.125.2/examples/jsm/controls/OrbitControls.js";

// MAKE SCENE AND CAMERA
const scene = new THREE.Scene();
const camera = new THREE.PerspectiveCamera(
    45,
    window.innerWidth / window.innerHeight,
    0.1,
    1000
);
// SET CAMERA POSITION
camera.position.set(0, 0, 10);
// SET RENDERER AND NECESSARY PROPERTIES
const renderer = new THREE.WebGL1Renderer({ antialias: true });
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);

// SET THE CONTROLS.
let controls = new OrbitControls(camera, renderer.domElement);
controls.minDistance = 35;		// MINIMUM FAR THE CAMERA CAN GO.
controls.maxDistance = 5000;	// MAXIMUM FAR THE CAMERA CAN GO.
controls.enableDamping = true;	// MAKING A SOFT MOTION EFFECT.
controls.dampingFactor = 0.05;	// SETTING IT'S VALUE
// controls.maxPolarAngle = Math.PI / 2;	// IF YOU WANT, YOU CAN FIX THE CAMERA ANGULAR MOVEMENT.
controls.update();	

function animate() {
    requestAnimationFrame(animate);
    renderer.render(scene, camera);
    controls.update();
}
animate();

// MAKING THE PAGE RESPONSIVE
window.addEventListener("resize", () => {
    let width = window.innerWidth;
    let height = window.innerHeight;
    renderer.setSize(width, height);    // UPDATING THE RENDERER SIZE.
    camera.aspect = width / height;     // UPDATING THE CAMERA ASPECT.
    camera.updateProjectionMatrix();
});

Links that I used:

About

THREEjs Projects || HTML || CSS || JavaScript. A library of javascript 3d models.


Languages

Language:JavaScript 68.1%Language:HTML 20.2%Language:CSS 11.7%