【问题标题】:Dynamically(at some time intervals) change textures on a plane/cube in three.js?动态(在某些时间间隔)在three.js中更改平面/立方体上的纹理?
【发布时间】:2013-03-13 06:08:50
【问题描述】:

我知道它在渲染时与 texture.needsUpdate() 有关,但我不知道如何实际实现它。也许有人知道一个链接,我可以在其中看到一个工作示例或发布一些代码?干杯。

【问题讨论】:

  • 你试过什么?您在间隔部分(与三个.js 无关)或更新纹理有问题吗?后者见github.com/mrdoob/three.js/wiki/Updates
  • 我认为两者兼而有之。我想在飞机上构建某种图像滑块(使用three.js)。这样例如在几秒钟后纹理更改为不同的图像等等(在一个循环中)。现在我认为我可能对使用 texture.needsUpdate() 有误。
  • Stack Overflow 无法为您编写代码。我建议你开始做这个项目(你可以使用示例文件夹中的几乎任何文件作为模板),然后当你有更具体的问题时回来。
  • ...但是您可以使用渲染循环中的某种计时器或 window.setTimeout() 或 window.setInterval() 来完成,任何事情都可以。更改纹理图像后,您需要调用 texture.needsUpdate = true; 让 Three.js 知道它已更改(它是布尔值,而不是函数)。

标签: time three.js textures intervals


【解决方案1】:

一个很好的问题;我创建了一些示例代码来做到这一点——使用 spritesheet 在平面和立方体上做一些 2D 动画,这需要定期更新。这是一个文档示例的链接,该示例特别包含一个功能,可以完全满足您的需求。

http://stemkoski.github.com/Three.js/Texture-Animation.html

希望对你有帮助!

【讨论】:

    猜你喜欢
    • 2013-02-23
    • 2012-09-08
    • 2015-09-01
    • 2021-01-08
    • 1970-01-01
    • 2017-01-18
    • 2012-11-19
    • 2013-01-22
    • 1970-01-01
    相关资源
    最近更新 更多