import Three, { OctahedronGeometry } from "three"; // const scene=new Three.Scene(); // const camera=new Three.PerspectiveCamera(); // const odemetry=new OctahedronGeometry(); // document.body.append(new Element(`

index.js

`)) var canvas=document.getElementById("canvas"); canvas.width=window.innerWidth; canvas.heigt=window.innerHeight; var gl=canvas.getContext("webgl"); gl.viewport(0,0,canvas.width,canvas.heigt); // import * as Three from "three"; console.log("Three",Three); const scene=new Three.Scene(); const camera=new Three.PerspectiveCamera( 75, window.innerWidth/window.innerHeight, 0.1, 1000 ); camera.position.set(0,0,10); scene.add(camera); const geometry = new Three.BoxGeometry( 1, 3, 2 ); const material = new Three.MeshBasicMaterial( {color: 0xffffff} ); const cube = new Three.Mesh( geometry, material ); scene.add( cube ); console.log("cube",cube); console.log("cube.position",cube.position); const geometry_buffer=new Three.BufferGeometry(); const vertices=new Float32Array([ -1.0,-1.0,1.0, 1.0,-1.0,1.0, 1.0,1.0,1.0, 1.0,1.0,1.0 -1.0,1.0,1.0, -1.0,-1.0,1.0 ]); geometry_buffer.setAttribute("position",new Three.BufferAttribute(vertices,3)); const material_buffer=new Three.MeshBasicMaterial({color: 0xffff00}); const geometry_buffer_mesh=new Three.Mesh(geometry_buffer,material_buffer); scene.add(geometry_buffer_mesh); geometry_buffer_mesh.position.set(-10,-2,0); // geometry_buffer_mesh.position.x=-10; // geometry_buffer_mesh.position.y=-2; import path from "path"; const cube_geometry=new Three.BoxGeometry(2,2,2); const textureloader=new Three.TextureLoader(); path.resolve(path.dirname.toString()); console.log("path",path); const texture_object=textureloader.load("../media/texture/shazi.png"); const textureLoader = new Three.TextureLoader(); const textureFlare0 = textureLoader.load( "../media//texture/envolope.jpg" ); console.log("textureFlare0",texture_object); const basic_material=new Three.MeshBasicMaterial({ // color:0xf012f0, map:texture_object, }); const cube_geometry_object=new Three.Mesh(cube_geometry,basic_material); scene.add(cube_geometry_object); cube_geometry_object.position.set(8,-3,0); const renderer=new Three.WebGLRenderer(); renderer.setSize(window.innerWidth*0.95,window.innerHeight*0.95); window.addEventListener("resize",(EventTarget)=>{ console.log("resize_______________"); camera.aspect=window.innerWidth*0.95,window.innerHeight*0.95; camera.updateProjectionMatrix(); renderer.setSize(window.innerWidth*0.95,window.innerHeight*0.95); renderer.setPixelRatio(window.devicePixelRatio); }); import { OrbitControls } from "three-orbitcontrols-ts"; const controls=new OrbitControls(camera,renderer.domElement); controls.enableDamping=true; // renderer.render(scene,camera); let rare_positionx= cube.position.x-2; let rare_positiony= cube.position.y-2; let step=0.02, range=400,mark=0; function render_each_second(){ // renderer.render(scene,camera); controls.update(); if(mark<= range){ cube.position.x+=step; cube.position.y+=step; cube.rotateZ(0.02); cube.rotateY(0.015); cube_geometry_object.rotateX(0.01); cube_geometry_object.rotateY(0.01); cube_geometry_object.rotateZ(0.01); geometry_buffer_mesh.rotateY(0.05); mark=mark + 1; }else{ // cube.position.x=(step*range); cube.position.x=(rare_positionx); cube.position.y=(rare_positiony); mark=0; } // (times < n)?cube.position.x+=times:cube.position.x=rare_position; // console.log("cube.position",cube.position); renderer.render(scene,camera); requestAnimationFrame(render_each_second); }; render_each_second(); console.log("renderer",renderer); document.body.appendChild(renderer.domElement); // import {OrbitControls} from 'three';//three/examples/jsm/controls/OrbitControls // import { OrbitControls } from "three/addons/controls/OrbitControls.js"; // import { OrbitControls } from "three-orbitcontrols-ts"; // const controls=new Three.OrbitControls(camera,renderer.domElement); // import { OrbitControls } from 'three-orbitcontrols-ts'; // const controls=new Three.OrbitControls(camera,renderer.domElement); // const controls=new OrbitControls(camera,renderer.domElement); // setTimeout(() => { // console.log("cube.position",cube.position); // cube.position.set(10,1000,500); // console.log("cube.position",cube.position); // }, 1500);