gpt4 book ai didi

actionscript-3 - Stage3d 可以用于执行并行计算吗?

转载 作者:行者123 更新时间:2023-12-04 08:27:16 35 4
gpt4 key购买 nike

我曾经像你一样在 AS3 中编程 map ,但后来我在膝盖上安装了一个 Pixel Bender。从那时起,我一直在使用 Pixel Bender 对数组进行并行计算。 Stage3D 可以用于此吗?

使用 Pixel Bender 进行计算的示例:

http://wonderfl.net/c/eFp0/

我的目标是获得 [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 .我相信你已经大致了解了。

我们通常所说的 map 。这是一个彻底的解释。

http://en.wikipedia.org/wiki/Map_%28higher-order_function%29

我注意到使用 Pixel Bender,我可以将速度提升 10 倍来完成此任务。有没有办法用 Stage3D 做同样的事情。

最佳答案

与 c++ 等其他语言不同,我不知道有什么方法可以将汇编指令直接发送到 GPU 之外 Program3D Shaders with Adobe Graphics Assembly Language .

Program bytecode can be created using the Pixel Bender 3D offline tools. It can also be created dynamically. The AGALMiniAssembler class is a utility class that compiles AGAL assembly language programs to AGAL bytecode. The class is not part of the runtime. When you upload the shader programs, the bytecode is compiled into the native shader language for the current device (for example, OpenGL or Direct3D). The runtime validates the bytecode on upload.

The programs run whenever the Context3D drawTriangles() method is invoked. The vertex program is executed once for each vertex in the list of triangles to be drawn. The fragment program is executed once for each pixel on a triangle surface.



没有接近使用 Pixel Bender 获得的性能,应该注意的是,您可以利用 ActionScript Workers并行化你的仿函数。

A Worker object represents a worker, which is a virtual instance of the Flash runtime. Each Worker instance controls and provides access to the lifecycle and shared data of a single worker.

This capability of simultaneously executing multiple sets of code instructions is known as concurrency.



随着 Adob​​e 高级功能、Alchemy/FlasCC、XC API、Pixel Bender 和 ActionScript Next 的出现,对于快速发展的 Flash 平台来说,这是一个激动人心的时刻。

关于actionscript-3 - Stage3d 可以用于执行并行计算吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12877780/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com