Actionscript 3 阶段3d可以用于执行并行计算吗?

Actionscript 3 阶段3d可以用于执行并行计算吗?,actionscript-3,stage3d,pixel-bender,Actionscript 3,Stage3d,Pixel Bender,我曾经像你一样在AS3中编程地图,但后来我在膝盖上做了一个像素弯曲器。从那以后,我一直在使用Pixel Bender对阵列进行并行计算。阶段3d可以用于此吗 使用像素弯曲器进行计算的示例: 我的目标是得到一个向量[x1,y1,x2,y,2,…,xn,yn]并返回一个向量[f(x1),f(y1),f(x2),f(y2),…,f(xn),f(yn)]。更像是f(x1,y1).x,f(x1,y1).y。我相信你已经大致了解了 我们通常称之为地图的东西。这里有一个详尽的解释 我注意到,使用Pixel

我曾经像你一样在AS3中编程地图,但后来我在膝盖上做了一个像素弯曲器。从那以后,我一直在使用Pixel Bender对阵列进行并行计算。阶段3d可以用于此吗

使用像素弯曲器进行计算的示例:

我的目标是得到一个向量
[x1,y1,x2,y,2,…,xn,yn]
并返回一个向量
[f(x1),f(y1),f(x2),f(y2),…,f(xn),f(yn)]
。更像是
f(x1,y1).x,f(x1,y1).y
。我相信你已经大致了解了

我们通常称之为地图的东西。这里有一个详尽的解释


我注意到,使用Pixel Bender,我可以以10倍的速度完成这项任务。是否有任何方法可以对Stage3D做同样的事情

< P>不同于其他语言,如C++,我不知道如何将汇编指令直接引导到GPU之外。

程序字节码可以使用Pixel Bender 3D离线创建 工具。它也可以动态创建。AgalMini汇编类 是一个实用程序类,它编译AGAL汇编语言程序以 AGAL字节码。该类不是运行时的一部分。当你上传 在着色器程序中,字节码被编译到本机着色器中 当前设备的语言(例如,OpenGL或Direct3D)。这个 运行时在上传时验证字节码

只要使用Context3D drawTriangles()方法,程序就会运行 调用。“顶点”程序对图形中的每个顶点执行一次 要绘制的三角形列表。片段程序执行一次 对于三角形曲面上的每个像素

由于没有达到使用Pixel Bender所获得的性能,应该注意的是,您可以利用ActionScript来并行化functor

Worker对象表示Worker,它是的虚拟实例 Flash运行时。每个Worker实例控制并提供访问权限 到单个工作人员的生命周期和共享数据

这种同时执行多组代码的能力 指令称为并发


凭借Adobe Premium功能、Alchemy/FlasCC、XC API、Pixel Bender和ActionScript,对于快速发展的Flash平台来说,这是一个激动人心的时刻。

嗨,Jason,Pixel Bender 3D是我所需要的。我想真诚地感谢你。我测试了pixel bender 3d,但我似乎找不到一种快速的方法将数据从舞台上恢复到向量中?你知道有什么方法可以做到这一点吗?@ArthurWulfWhite我不确定,但也许(以前的炼金术)更符合你想要完成的事情。pixel bender 3d旨在使编写AGAL着色器内核更容易。这些内核的唯一输出是帧缓冲区。在调用Context3D::drawTriangles之前,可以将位图数据作为帧缓冲区提供,然后以颜色形式访问像素,但这只能获得整数精度。。。