Flash 使用顶点着色器在MoleHill中变形

Flash 使用顶点着色器在MoleHill中变形,flash,actionscript-3,apache-flex,shader,molehill,Flash,Actionscript 3,Apache Flex,Shader,Molehill,使用Molehill with Flash,我希望创建一个vertiex着色器,将一个网格转换为另一个网格,我已经看到Flare是可行的,但是我不确定是否使用Stage3D, 有人能给我一些关于如何在AGAL中使用着色器的建议吗。 感谢下一版本的pixel bender应该支持创建3d顶点和片段着色器。预览版应该是(可能太晚了) 变形“简单地”是两组位置之间的线性插值 假设第一个vertexBuffer VA0表示起点,第二个vertexBuffer VA1表示目的地。您可以将它们存储在临时寄存

使用Molehill with Flash,我希望创建一个vertiex着色器,将一个网格转换为另一个网格,我已经看到Flare是可行的,但是我不确定是否使用Stage3D, 有人能给我一些关于如何在AGAL中使用着色器的建议吗。
感谢

下一版本的pixel bender应该支持创建3d顶点和片段着色器。预览版应该是

(可能太晚了)

变形“简单地”是两组位置之间的线性插值

假设第一个vertexBuffer VA0表示起点,第二个vertexBuffer VA1表示目的地。您可以将它们存储在临时寄存器中:

"mov vt0 va0                \n" +//temp var, will hold the result
"mov vt1 va0                \n" +//start position
"mov vt2 va1                \n" +//destination
然后需要一个T值,可以作为常数传递,如下所示:

context.setProgramConstantsFromVector( Context3DProgramType.VERTEX, id, constant );
如果你通过了类似的考试

Vector.<Number>([ T, 0,0, 1 ])

然后您需要投影VT0以获得正确的输出。

Brilliant,这正是我需要知道的。
//lerp
"sub vt0 vt2 vt1            \n" +
"mul vt0 vt0 vc0.x          \n" +
"add vt0 vt0 va1            \n" +