![見出し画像](https://assets.st-note.com/production/uploads/images/100732516/rectangle_large_type_2_fcb24708a8888b492df98c48b11f0f6c.png?width=800)
家を作ってもらう
function createHouse(){
const house = new THREE.Group();
// 壁天井床
const wallGeometry = new THREE.BoxGeometry(10, 6, 10);
const wallMaterial = new THREE.MeshStandardMaterial({ color: 0xffccaa });
const walls = new THREE.Mesh(wallGeometry, wallMaterial);
walls.position.set(0, 3, 0);
walls.castShadow = true;
walls.receiveShadow = true;
house.add(walls);
// 屋根
const roofGeometry = new THREE.ConeGeometry(8, 5, 4);
const roofMaterial = new THREE.MeshStandardMaterial({ color: 0xff4444 });
const roof = new THREE.Mesh(roofGeometry, roofMaterial);
roof.position.set(0, 8, 0);
roof.rotation.y = Math.PI / 4; // 45度回転
scene.add(roof);
// 窓
const windowGeometry = new THREE.BoxGeometry(2, 2, 0.1);
const windowMaterial = new THREE.MeshStandardMaterial({ color: 0xffffff });
const window1 = new THREE.Mesh(windowGeometry, windowMaterial);
const window2 = new THREE.Mesh(windowGeometry, windowMaterial);
const window3 = new THREE.Mesh(windowGeometry, windowMaterial);
//const window4 = new THREE.Mesh(windowGeometry, windowMaterial);
window1.position.set(-3, 3, 5.01);
window2.position.set(3, 3, 5.01);
window3.position.set(0, 3, -5.01);
//window4.position.set(0, 3, 5.01);
window1.castShadow = true;
window2.castShadow = true;
window3.castShadow = true;
//window4.castShadow = true;
house.add(window1);
house.add(window2);
house.add(window3);
//house.add(window4);
// ドア
const doorGeometry = new THREE.BoxGeometry(2, 4, 0.1);
const doorMaterial = new THREE.MeshStandardMaterial({ color: 0x663300 });
const door = new THREE.Mesh(doorGeometry, doorMaterial);
door.position.set(0, 2, 5.0);
door.castShadow = true;
house.add(door);
return house;
}
この記事が気に入ったらサポートをしてみませんか?