【发布时间】:2023-03-13 04:15:01
【问题描述】:
我在 Three.js planeGeometry 上有一个 PNG 图像作为纹理,它被拉伸以适应大于原始图像大小的几何图形。有没有办法根据图像纹理自动调整几何体的大小 - 或者至少允许图像不会在过大的几何体上拉伸?
一种解决方案是在加载时保存图像的大小并使用这些测量值来创建几何图形,但我想知道是否有比这更直接或更有效的解决方案?谢谢!
【问题讨论】:
标签: javascript three.js textures
我在 Three.js planeGeometry 上有一个 PNG 图像作为纹理,它被拉伸以适应大于原始图像大小的几何图形。有没有办法根据图像纹理自动调整几何体的大小 - 或者至少允许图像不会在过大的几何体上拉伸?
一种解决方案是在加载时保存图像的大小并使用这些测量值来创建几何图形,但我想知道是否有比这更直接或更有效的解决方案?谢谢!
【问题讨论】:
标签: javascript three.js textures
诀窍是创建几何 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;
【讨论】: