前提・実現したいこと
WebGLの技術を使用し、動く街を作りたいと思っています。
発生している問題・エラーメッセージ
以下のコードを自作しました。 真ん中にある長方形のものを地面と同じ高さにしたい→モデルが表示される高さを変更したい と思ったのですが、どうすれば良いかわかりません。 Googleで検索をしてみたのですが、日本語のWebGLに関する資料が少な過ぎて解決しませんでした。
該当のソースコード
HTML
1 2<html> 3 <head> 4 <meta charset="utf-8" /> 5 <script src="https://unpkg.com/three@0.131.3/build/three.min.js"></script> 6 <script src="https://unpkg.com/three@0.131.3/examples/js/controls/OrbitControls.js"></script> 7 <script> 8 // ページの読み込みを待つ 9 window.addEventListener('load', init); 10 11 function init() { 12 // サイズを指定 13 const width = 960; 14 const height = 540; 15 16 const canvasElement = document.querySelector('#myCanvas'); 17 // レンダラーを作成 18 const renderer = new THREE.WebGLRenderer({ 19 canvas: canvasElement, 20 }); 21 renderer.setSize(width, height); 22 23 // シーンを作成 24 const scene = new THREE.Scene(); 25 26 // カメラを作成 27 const camera = new THREE.PerspectiveCamera(45, width / height); 28 // カメラの初期座標を設定 29 camera.position.set(0, 0, 1000); 30 31 // カメラコントローラーを作成 32 const controls = new THREE.OrbitControls(camera, canvasElement); 33 34 // 滑らかにカメラコントローラーを制御する 35 controls.enableDamping = true; 36 controls.dampingFactor = 0.2; 37 38 // 平行光源を作成 39 const directionalLight = new THREE.DirectionalLight(0xffffff); 40 directionalLight.position.set(1, 1, 1); 41 scene.add(directionalLight); 42 43 //いじった。 44 // 地面を作成 45 const floor1 = new THREE.GridHelper(600,1000,900); 46 scene.add(floor1); 47 //const floor2 = new THREE.AxesHelper(300); 48 //scene.add(floor2); 49 50 const group = new THREE.Group(); 51 scene.add(group); 52 //ここまで 53 54 // 形状とマテリアルからメッシュを作成します 55 const mesh = new THREE.Mesh(new THREE.BoxGeometry(60, 60, 300 ,20), new THREE.MeshNormalMaterial()); 56 scene.add(mesh); 57 58 59 tick(); 60 61 // 毎フレーム時に実行されるループイベントです 62 function tick() { 63 //mesh.rotation.y += 0.01; 64 65 //ZZ++ 66 mesh.translateZ(0.5); 67 //mesh.translateX(0.1); 68 69 // カメラコントローラーを更新 70 controls.update(); 71 72 // レンダリング 73 renderer.render(scene, camera); 74 75 requestAnimationFrame(tick); 76 } 77 } 78 </script> 79 </head> 80 <body> 81 <canvas id="myCanvas"></canvas> 82 </body> 83</html> 84
試したこと
色々なウェブサイトを確認した。
https://ics.media/tutorial-three/quickstart/
補足情報(FW/ツールのバージョンなど)
文章がわかりにくかったり、質問内容に不備がある場合は教えてください。訂正させていただきます。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/05 13:11
2021/09/05 13:47
2021/09/05 14:39