私は Three.js を使用した最初のプロジェクトに取り組んでおり、現在壁にぶつかっています。
Three.js 内でアニメーション化された (低ポリ) 海を作成する最良の方法を知りたいです。(本当 ?)
var faceGeo = new THREE.PlaneGeometry(200,200,subdivisions,subdivisions);
var faceMat = new THREE.MeshPhongMaterial({color: 0xeeeeee, side: THREE.DoubleSide,transparent: true,opacity: .3,specular: 0x333333,shading: THREE.FlatShading})
var face1 = new THREE.Mesh(faceGeo,faceMat);
face1.rotation.x = -(Math.PI /2);
face1.position.y = -30
face1.position.z = -90
textureDiff.load("_textures/dispmap_sea.png",function(image){
image.wrapS = THREE.RepeatWrapping;
image.wrapT = THREE.RepeatWrapping;
image.repeat = new THREE.Vector2(1,1);
image.anisotropy = renderer.getMaxAnisotropy();
face1.material.displacementMap = image;
face1.material.displacementScale = 10;
});
更新中
displacementPos++;
face1.material.displacementMap.offset = new THREE.Vector2(displacementPos,displacementPos);
face1.material.needsUpdate = true;
face1.material.displacementMap.needsUpdate = true;
それが最も簡単な方法ですが、それが不可能な場合、他にどのような選択肢があるかわかりません。
ご協力ありがとうございました。Three.js のアマチュアであり愛好家です。