Three.js 有没有一种简单的方法可以在片段着色器中处理纹理,并使用GPUComputionRenderer在javascript代码中获取纹理?

Three.js 有没有一种简单的方法可以在片段着色器中处理纹理,并使用GPUComputionRenderer在javascript代码中获取纹理?,three.js,gpu,textures,fragment-shader,fbo,Three.js,Gpu,Textures,Fragment Shader,Fbo,我需要在着色器中按程序生成纹理,并将其返回到javascript代码中,以便将其应用于对象。 由于这种纹理不意味着随着时间的推移而改变,我只想处理它一次 我认为GPUComputionRenderer可以做到这一点,但我不知道如何以及什么是可以实现这一点的最小代码 我需要在着色器中按程序生成纹理,并将其返回到javascript代码中,以便将其应用于对象 听起来您只是想执行基本的RTT。在这种情况下,我建议您使用。其思想是设置一个简单的场景,其中包含一个全屏四边形和一个自定义实例,其中包含生成纹

我需要在着色器中按程序生成纹理,并将其返回到javascript代码中,以便将其应用于对象。 由于这种纹理不意味着随着时间的推移而改变,我只想处理它一次

我认为GPUComputionRenderer可以做到这一点,但我不知道如何以及什么是可以实现这一点的最小代码

我需要在着色器中按程序生成纹理,并将其返回到javascript代码中,以便将其应用于对象

听起来您只是想执行基本的RTT。在这种情况下,我建议您使用。其思想是设置一个简单的场景,其中包含一个全屏四边形和一个自定义实例,其中包含生成纹理的着色器代码。渲染到渲染目标,而不是渲染到屏幕(或默认帧缓冲区)。在下一步中,可以将该渲染目标用作实际场景中的纹理

查看下面演示此工作流的示例

GPUComputionRenderer
实际上是为GPGPU设计的,我认为这对于您的用例来说是不必要的

我需要在着色器中按程序生成纹理,并将其返回到javascript代码中,以便将其应用于对象

听起来您只是想执行基本的RTT。在这种情况下,我建议您使用。其思想是设置一个简单的场景,其中包含一个全屏四边形和一个自定义实例,其中包含生成纹理的着色器代码。渲染到渲染目标,而不是渲染到屏幕(或默认帧缓冲区)。在下一步中,可以将该渲染目标用作实际场景中的纹理

查看下面演示此工作流的示例


GPUComputionRenderer
实际上是为GPGPU设计的,我认为这在您的用例中是不必要的。

欢迎使用堆栈溢出。请花点时间访问,特别是和。欢迎来到堆栈溢出。请花一点时间参观,尤其是和。感谢洛特·穆根,我会试试的。谢谢洛特·穆根,我会试试的