我有一个PNG图像作为Three.js planeGeometry上的纹理,并且它被拉伸以适合大于原始图像大小的几何体。有没有办法自动调整几何图形纹理的大小 - 或者至少允许图像不在超大几何图形上拉伸?
一种解决方案是在加载时保存图像的大小,并使用这些测量来创建几何图形,但我想知道是否有比这更直接或更有效的解决方案?谢谢!
答案 0 :(得分:4)
诀窍是创建几何1x1尺寸,然后缩放:
var geometry = new THREE.PlaneGeometry( 1, 1 );
var mesh = new THREE.Mesh( geometry, material );
mesh.scale.x = image.width;
mesh.scale.y = image.height;