【问题标题】:Clip a video texture into two将视频纹理一分为二
【发布时间】:2019-01-12 03:03:04
【问题描述】:

我有一个视频纹理,我必须将其剪辑为 2 个部分,即纹理的大小为 1920 * 1080,我必须将此视频纹理剪辑为 1920 * 540,将剩余的纹理剪辑为另一个纹理并将它们输入到两个部分不同的着色器。我不确定是否应该使用着色器或threejs 进行剪辑。如何剪辑此视频纹理?

【问题讨论】:

标签: three.js glsl


【解决方案1】:

我会在两个平面模型上使用相同的纹理,但更改平面的 UV 坐标以显示您想要的纹理的任何部分。

基本上得到平面的几何形状,遍历它的 faceVertexUVs 并将每个的 x 乘以 0.5,然后在第二个对象上,将 x 也加 0.5。

第一个平面会缩短视频的左半边,而右脸将显示右半边。

一个可能效率较低但可能可行的解决方案是 .clone() 视频纹理..设置其 .offset 和 .scale 以将映射转移到您想要的位置...并将第一个纹理应用于左平面,第二个在右半边……但我不推荐这种方法。

【讨论】:

  • 如果我应该将高度为 1502 的纹理剪裁到 1000 和 502,我可以在这些场景中精确地剪裁纹理吗?
  • 是的,您可以将 UV 缩放到要显示的图像的任意部分。它甚至不必是方形的:D
猜你喜欢
  • 1970-01-01
  • 2014-05-31
  • 1970-01-01
  • 2014-10-05
  • 2012-04-14
  • 1970-01-01
  • 1970-01-01
  • 2010-12-15
  • 1970-01-01
相关资源
最近更新 更多