Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Three.js 三、js—;将纹理拟合到缩放平面_Three.js_Textures_Texture Mapping - Fatal编程技术网

Three.js 三、js—;将纹理拟合到缩放平面

Three.js 三、js—;将纹理拟合到缩放平面,three.js,textures,texture-mapping,Three.js,Textures,Texture Mapping,我正在尝试创建一个平面,它可以调整大小并显示网络摄像头的视频流 我有这个: const video = document.createElement('video'), mesh = new THREE.Mesh( new THREE.PlaneGeometry(1, 1), new THREE.MeshBasicMaterial() ) ; let stream = null; mesh.material.map = this.materia

我正在尝试创建一个平面,它可以调整大小并显示网络摄像头的视频流

我有这个:

 const
   video = document.createElement('video'), 
   mesh = new THREE.Mesh(
     new THREE.PlaneGeometry(1, 1),
     new THREE.MeshBasicMaterial()
   )
 ;

 let stream = null;

 mesh.material.map = this.material.map = new THREE.VideoTexture(video);

 async startStream () {
   const
    { x:width, y:height } = this.scale, 
    stream = await navigator.mediaDevices.getUserMedia({
    video: {
        width: { ideal: width },
        height: { ideal: height }
      }
    });

    video.srcObject = stream;
    video.play();
    return stream;
 }

 async stopStream () { ... }

 function onResize(width, height) {
   stopStream();
   mesh.scale.set(width, height, 1);
   stream = await startStream();
 }

在飞机上可以看到网络摄像头,但视频缩放不正确。我想这是因为网格是缩放的。那么,如何在缩放平面上调整视频/纹理?

此线程是否回答了您的问题?看起来不错,我去看看。。。