<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feed.feedsky.com/styles/temp01.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link href="http://feed.feedsky.com/pixelbender" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feed.feedsky.com/pixelbender" type="application/rss+xml"></fs:self_link><lastBuildDate>Sat, 24 Sep 2011 11:29:47 GMT</lastBuildDate><title>Pixel Bender</title><description>Discuss with Adobe Pixel Bender.</description><image><url>http://www.feedsky.com/feed/pixelbender/sc/gif</url><title>Pixel Bender</title><link>http://www.pixelbender.cn</link></image><link>http://www.pixelbender.cn</link><sy:updatePeriod>hourly</sy:updatePeriod><sy:updateFrequency>1</sy:updateFrequency><language>en</language><pubDate>Sun, 27 Nov 2011 07:00:43 GMT</pubDate><item><title>Adobe Pixel Bender 3D Preview 3</title><link>http://www.pixelbender.cn/?p=394</link><content:encoded>&lt;p&gt;&lt;img title=&quot;Pixel Bender Logo&quot; src=&quot;http://www.adobe.com/devnet/images/160x160/pixel_bender.jpg&quot; alt=&quot;Pixel Bender Logo&quot; width=&quot;160&quot; height=&quot;160&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Adobe Pixel Bender 3D Preview 3 版本修复了一些 bug ，修改了一些公开接口。在发布页里有详细的信息：&lt;a title=&quot;Pixel bender&quot; href=&quot;http://labs.adobe.com/technologies/pixelbender3d/releasenotes.html&quot; target=&quot;_blank&quot;&gt;http://labs.adobe.com/technologies/pixelbender3d/releasenotes.html&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;在Adobe实验室上的首页：&lt;a href=&quot;http://labs.adobe.com/technologies/pixelbender3d/&quot;&gt;http://labs.adobe.com/technologies/pixelbender3d/&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/581491040/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=394&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><wfw:commentRss>http://www.pixelbender.cn/?feed=rss2&amp;p=394</wfw:commentRss><slash:comments>226</slash:comments><description>Adobe Pixel Bender 3D Preview 3 版本修复了一些 bug ，修改了一些公开接口。在发布页里有详细的信息：http://labs.adobe.com/technologies/pixelbender3d/releasenotes.html。 在Adobe实验室上的首页：http://labs.adobe.com/technologies/pixelbender3d/&lt;img src=&quot;http://www1.feedsky.com/t1/581491040/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=394&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</description><category>Pixel Bender 3D Preview 3</category><category>业界资讯</category><pubDate>Sat, 24 Sep 2011 19:29:47 +0800</pubDate><author>Y.Boy</author><comments>http://www.pixelbender.cn/?p=394#comments</comments><guid isPermaLink="false">http://www.pixelbender.cn/?p=394</guid><dc:creator>Y.Boy</dc:creator><fs:srclink>http://www.pixelbender.cn/?p=394</fs:srclink><fs:srcfeed>http://www.pixelbender.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/pixelbender/~7269152/581491040/5378678</fs:itemid></item><item><title>Adobe Pixel Bender Plug-in for Adobe Photoshop CS5</title><link>http://www.pixelbender.cn/?p=388</link><content:encoded>&lt;h2&gt;Image processing of Pixel Bender filters opened in Photoshop CS5&lt;/h2&gt;
&lt;p&gt;The Adobe® Pixel Bender® Plug-in for Adobe Photoshop® CS5 supports image processing of Pixel Bender filters opened in Photoshop CS5. These filters can be executed on the graphics card (GPU) or CPU of a computer. Pixel Bender customers as well as members of the Adobe Pixel Bender team have authored the filters that are included in this download.&lt;/p&gt;
&lt;p&gt;For more informations: &lt;a href=&quot;http://labs.adobe.com/technologies/pixelbenderplugin/&quot;&gt;http://labs.adobe.com/technologies/pixelbenderplugin/&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/581491041/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=388&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><wfw:commentRss>http://www.pixelbender.cn/?feed=rss2&amp;p=388</wfw:commentRss><slash:comments>1</slash:comments><description>Image processing of Pixel Bender filters opened in Photoshop CS5 The Adobe® Pixel Bender® Plug-in for Adobe Photoshop® CS5 supports image processing of Pixel Bender filters opened in Photoshop CS5. These filters can be executed on the graphics card (GPU) or CPU of a computer. Pixel Bender customers as well as members of the Adobe [...]&lt;img src=&quot;http://www1.feedsky.com/t1/581491041/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=388&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</description><category>Adobe Photoshop CS5</category><category>Pixel Bender Plug-in</category><category>业界资讯</category><pubDate>Wed, 29 Jun 2011 23:13:33 +0800</pubDate><author>Y.Boy</author><comments>http://www.pixelbender.cn/?p=388#comments</comments><guid isPermaLink="false">http://www.pixelbender.cn/?p=388</guid><dc:creator>Y.Boy</dc:creator><fs:srclink>http://www.pixelbender.cn/?p=388</fs:srclink><fs:srcfeed>http://www.pixelbender.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/pixelbender/~7269152/581491041/5378678</fs:itemid></item><item><title>Pixel Bender 3D预览版第二版已提供下载</title><link>http://www.pixelbender.cn/?p=386</link><content:encoded>&lt;p&gt;&lt;img title=&quot;Pixel Bender Logo&quot; src=&quot;http://www.adobe.com/devnet/images/160x160/pixel_bender.jpg&quot; alt=&quot;Pixel Bender Logo&quot; width=&quot;160&quot; height=&quot;160&quot; /&gt;&lt;br /&gt;
Pixel Bender 3D 预览版第二版现在已经可以下载。Pixel Bender 3D预览版第二版修复了包括用户在论坛中提交的那些 bug。还实现了附加函数和类，以及提供了附加的事例项目。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a title=&quot;Pixel Bender 3D&quot; href=&quot;http://labs.adobe.com/technologies/pixelbender3d/&quot; target=&quot;_blank&quot;&gt;Adobe Labs 上的 Pixel Bender 3D&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a title=&quot;Adobe Pixel Bender 3D Preview Release Notes&quot; href=&quot;http://labs.adobe.com/technologies/pixelbender3d/releasenotes.html&quot; target=&quot;_blank&quot;&gt;发行说明&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a title=&quot;Pixel Bender 3D Preview&quot; href=&quot;http://labs.adobe.com/downloads/pixelbender3d.html&quot; target=&quot;_blank&quot;&gt;下载Pixel Bender 3D预览版第二版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/581491042/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=386&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><wfw:commentRss>http://www.pixelbender.cn/?feed=rss2&amp;p=386</wfw:commentRss><slash:comments>0</slash:comments><description>Pixel Bender 3D 预览版第二版现在已经可以下载。Pixel Bender 3D预览版第二版修复了包括用户在论坛中提交的那些 bug。还实现了附加函数和类，以及提供了附加的事例项目。 Adobe Labs 上的 Pixel Bender 3D 发行说明 下载Pixel Bender 3D预览版第二版&lt;img src=&quot;http://www1.feedsky.com/t1/581491042/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=386&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</description><category>在线教程</category><category>3D</category><category>Molehill</category><category>业界资讯</category><category>pixelbender 3D</category><pubDate>Thu, 02 Jun 2011 09:48:22 +0800</pubDate><author>Y.Boy</author><comments>http://www.pixelbender.cn/?p=386#comments</comments><guid isPermaLink="false">http://www.pixelbender.cn/?p=386</guid><dc:creator>Y.Boy</dc:creator><fs:srclink>http://www.pixelbender.cn/?p=386</fs:srclink><fs:srcfeed>http://www.pixelbender.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/pixelbender/~7269152/581491042/5378678</fs:itemid></item><item><title>Flash Molehill 简单例子</title><link>http://www.pixelbender.cn/?p=381</link><content:encoded>&lt;p&gt;这几天 Flash Player 11 Incubator 公开测试版放出，最大的功能特色就是 Molehill Low Level 3D API 。Molehill Low Level 3D API 其实非常底层，而且写起来很麻烦又缺乏参考文件。假如单纯只是要做 3D 应用，可以直接用现成的 3D 引擎(Away 3D)等等。我是抱著研究的精神来测试的，顺便作笔记。毕竟Molehill 不光是做 3D 应用，也能作 2D 图像加速或是其它利用 GPU 的运算等等。相信日后一定有很大帮助！&lt;/p&gt;
&lt;p&gt;最初参考的例子是从这里来的 &lt;a title=&quot;Simple 2D Molehill Example&quot; href=&quot;http://lab.polygonal.de/2011/02/27/simple-2d-molehill-example/&quot; target=&quot;_blank&quot;&gt;polygonal labs &amp;#8211; Simple 2D Molehill Example&lt;/a&gt;。它的源码里也提供了 AGALMiniAssembler &amp;#8211; AGAL (Adobe Graphics Assembly Language) 编译器。这对于测试 Molehill 底层 API 还挺重要的，因為除了需要写 AS3 之外，还需要写 AGAL 用 AGALMiniAssembler 动态编译為 Bytecode 才能执行。&lt;span id=&quot;more-381&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;span style=&quot;font-size: 13px; font-weight: normal;&quot;&gt;以下是一更简单的 Molehill 2D 绘图的例子：&lt;/span&gt;&lt;/h3&gt;
&lt;div&gt;
&lt;pre class=&quot;as3:showcolumns:contentHeight[400px]&quot; style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;package {
 import com.adobe.utils.AGALMiniAssembler;

 import flash.display.Sprite;
 import flash.display.Stage3D;
 import flash.display.StageAlign;
 import flash.display.StageScaleMode;
 import flash.display3D.Context3D;
 import flash.display3D.Context3DProgramType;
 import flash.display3D.Context3DRenderMode;
 import flash.display3D.Context3DVertexBufferFormat;
 import flash.display3D.IndexBuffer3D;
 import flash.display3D.Program3D;
 import flash.display3D.VertexBuffer3D;
 import flash.display3D.textures.Texture;
 import flash.events.Event;
 import flash.geom.Matrix3D;
 import flash.geom.Rectangle;
 import flash.utils.getTimer;

 public class MolehillExample01 extends Sprite {

  public var stage3D:Stage3D;
  public var cxt3D:Context3D;

  public var shaderProgram:Program3D;
  public var indexBuffer:IndexBuffer3D;
  public var texture:Texture;
  public var vertexBuffer:VertexBuffer3D;

  public function MolehillExample01() {
   addEventListener(Event.ADDED_TO_STAGE, onAddStage);
  }

  public function onAddStage(e:Event):void{
   stage.align = StageAlign.TOP_LEFT;
   stage.scaleMode = StageScaleMode.NO_SCALE;
   stage.frameRate = 30;

   stage3D = stage.stage3Ds[0];
   stage3D.addEventListener(Event.CONTEXT3D_CREATE, onContext3DCreate);
   stage3D.requestContext3D(Context3DRenderMode.AUTO);
  }

  public function onContext3DCreate(e:Event):void{
   cxt3D = stage3D.context3D;
   if (!cxt3D) return;
   cxt3D.enableErrorChecking = true;

   // index buffer
   indexBuffer = cxt3D.createIndexBuffer(6);
   indexBuffer.uploadFromVector(Vector.&amp;lt;uint&amp;gt;([0, 1, 2, 0, 2, 3]), 0, 6);

   // vertex buffer
   vertexBuffer = cxt3D.createVertexBuffer(4, 5); // x , y , r , g , b
   vertexBuffer.uploadFromVector(Vector.&amp;lt;Number&amp;gt;([
     -1  , 1  ,     0     ,  0  ,     0     ,
     -1  , -1 , 255 / 255 ,  0  ,     0     ,
      1  , -1 , 255 / 255 ,  0  , 255 / 255 ,
      1  , 1  ,     0     ,  0  , 255 / 255
    ]), 0, 4);

   // 設定 va0 為 x , y
   cxt3D.setVertexBufferAt(0, vertexBuffer, 0, Context3DVertexBufferFormat.FLOAT_2);
   // 設定 va1 為 r , g , b
   cxt3D.setVertexBufferAt(1, vertexBuffer, 2, Context3DVertexBufferFormat.FLOAT_3);

   // compile vertex shader
   var vertexShader:Array = [
     &quot;m44 op, va0, vc&quot;, // 4x4 matrix transform from va0 and vc0 to output position
     &quot;mov v0, va1&quot; // copy rgb color from va1 to v0
    ];

   var vertexAssembler:AGALMiniAssembler = new AGALMiniAssembler();
   vertexAssembler.assemble(Context3DProgramType.VERTEX, vertexShader.join(&quot;\n&quot;));

   // compile fragment shader
   var fragmentShader:Array = [&quot;mov oc, v0&quot;];

   var fragmentAssembler:AGALMiniAssembler = new AGALMiniAssembler();
   fragmentAssembler.assemble(flash.display3D.Context3DProgramType.FRAGMENT, fragmentShader.join(&quot;\n&quot;));

   shaderProgram = cxt3D.createProgram();
   shaderProgram.upload(vertexAssembler.agalcode, fragmentAssembler.agalcode);
   cxt3D.setProgram(shaderProgram);

   addEventListener(Event.ENTER_FRAME, onRenderFrame);
   stage.addEventListener(Event.RESIZE, onResizeHandler);
   onResizeHandler();
  }

  public function onResizeHandler(e:Event = null):void{
   try {
    cxt3D.configureBackBuffer(stage.stageWidth, stage.stageHeight, 2);
   } catch (e:Error) {
    trace(e);
    return;
   }
   stage3D.viewPort = new Rectangle(0, 0, stage.stageWidth, stage.stageHeight);
   onRenderFrame();
  }

  public function onRenderFrame(e:Event = null):void{
   cxt3D.clear(1, 1, 1, 1);

   var viewMatrix:Matrix3D = new Matrix3D();
   // 設定 vc0-3，要轉置矩陣 transposedMatrix = true or viewMatrix.transpose();
   cxt3D.setProgramConstantsFromMatrix(Context3DProgramType.VERTEX, 0, viewMatrix, true);
   cxt3D.drawTriangles(indexBuffer, 0, 2);
   cxt3D.present();
  }
 }
}&lt;/pre&gt;
&lt;h3&gt;以下开始逐步介绍 Molehill 绘图步骤&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Stage3D&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt; &lt;/strong&gt;Stage3D 是 Molehill 主要用来表现到画面上的物件，与 StageVideo 有点类似，一般只能画在 Display List 最底层 Stage 上。无法自行建立 Stage3D 物件，只能透过 stage.stage3Ds 取用固定数量的实体。一般好像只有四个可用。&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333; font-family: sans-serif; line-height: 18px;&quot;&gt; &lt;/span&gt;&lt;/p&gt;
&lt;pre style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;stage3D = stage.stage3Ds[0];&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Context3D&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt; &lt;/strong&gt;拿到 Stage3D 之後再藉由它請求 Context3D 物件&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333; font-family: sans-serif; line-height: 18px;&quot;&gt; &lt;/span&gt;&lt;/p&gt;
&lt;pre style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;stage3D.addEventListener(Event.CONTEXT3D_CREATE, onContext3DCreate);
stage3D.requestContext3D(Context3DRenderMode.AUTO);&lt;/pre&gt;
&lt;p&gt;请求成功之后，才正式开始用 Context3D 物件绘图。它的基本绘图方式也是跟 AS3 Graphics.drawTriangles 三角形绘图模式类似的，必须要自己準备好顶点座标阵列、索引阵列。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Index Buffer 顶点索引阵列&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt; &lt;/strong&gt;本范例仅仅只是画两个三角型组成的矩形，所以建立 index buffer 如下：&lt;/p&gt;
&lt;pre style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;indexBuffer = cxt3D.createIndexBuffer(6);
indexBuffer.uploadFromVector(Vector.&amp;lt;uint&amp;gt;([0, 1, 2, 0, 2, 3]), 0, 6);&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Vertex Buffer 顶点资料阵列&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt; &lt;/strong&gt;而 vertex buffer 每个顶点包含 x , y 座标以及用来填色的 r , g , b 值。假如是用材质图片就不需要 r , g , b。所以每个顶点包含五个数值，矩形共有四个顶点，有两个点是藉由 index buffer 索引值重复利用的。vertex buffer 设定方式如下：&lt;/p&gt;
&lt;pre style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;vertexBuffer = cxt3D.createVertexBuffer(4, 5); // 四個頂點，各五個數值
vertexBuffer.uploadFromVector(Vector.&amp;lt;Number&amp;gt;([
     -1  , 1  ,     0     ,  0  ,     0     ,
     -1  , -1 , 255 / 255 ,  0  ,     0     ,
      1  , -1 , 255 / 255 ,  0  , 255 / 255 ,
      1  , 1  ,     0     ,  0  , 255 / 255
 ]), 0, 4);

// 設定 va0 為 x , y
cxt3D.setVertexBufferAt(0, vertexBuffer, 0, Context3DVertexBufferFormat.FLOAT_2);
// 設定 va1 為 r , g , b
cxt3D.setVertexBufferAt(1, vertexBuffer, 2, Context3DVertexBufferFormat.FLOAT_3);&lt;/pre&gt;
&lt;p&gt;r , g , b 范围是从 0 ~ 1 。x , y 范围是从 -1 ~ 1。这裡 -1 ~ 1 表示的就是整个 Stage3D 单位大小，并非实际表现在画面的绝对大小。之后还要再利用stage3D.viewPort 设定表现范围。譬如本范例就是从座标 (-1, -1) 到 (1, 1) 绘製矩形，stage3D.viewPort 设為与 stage 一样大，那麼实际看到的矩形就会填满整个舞台。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Vertex Shader 顶点著色器&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt; &lt;/strong&gt;需要撰写 AGAL 语法。虽然名字叫“著色器”不过实际上主要是用来作座标点的矩阵变形运算，将算出来的座标输出到 op 配合片段著色器最后算出来的色彩值就可以画出来了。以下例子只有将所有的座标点作一次矩阵变形运算就直接输出，然后将内插色值指定到 v0 暂存器，準备给 Fragment Shader 使用：&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333; font-family: sans-serif; line-height: 18px;&quot;&gt; &lt;/span&gt;&lt;/p&gt;
&lt;pre style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;var vertexShader:Array = [
  &quot;m44 op, va0, vc&quot;, // 4x4 matrix transform from va0 and vc0 to output position
  &quot;mov v0, va1&quot; // copy rgb color from va1 to v0
 ];

var vertexAssembler:AGALMiniAssembler = new AGALMiniAssembler();
vertexAssembler.assemble(Context3DProgramType.VERTEX, vertexShader.join(&quot;\n&quot;));&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Fragment Shader 片段著色器&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt; &lt;/strong&gt;也是 AGAL 语法。以下例子中没有做什麼运算，仅仅只是把 Vertex Shader 传来的内插色值直接输出到 oc 而已：&lt;/p&gt;
&lt;pre style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;ar fragmentShader:Array = [&quot;mov oc, v0&quot;];

var fragmentAssembler:AGALMiniAssembler = new AGALMiniAssembler();
fragmentAssembler.assemble(flash.display3D.Context3DProgramType.FRAGMENT, fragmentShader.join(&quot;\n&quot;));&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Program3D&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt; &lt;/strong&gt;将编译好的 Vertex Shader, Fragment Shader 组合成 Program3D：&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333; font-family: sans-serif; line-height: 18px;&quot;&gt; &lt;/span&gt;&lt;/p&gt;
&lt;pre style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;shaderProgram = cxt3D.createProgram();
shaderProgram.upload(vertexAssembler.agalcode, fragmentAssembler.agalcode);
cxt3D.setProgram(shaderProgram);&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Back Buffer 背景缓衝区&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt; &lt;/strong&gt;在背景中用来暂存点阵资料的，需要预先用 Context3D.configureBackBuffer 设定它的尺寸。假如 Back Buffer 尺寸比 Stage3D.viewPort 小，那麼看起来可能就会出现锯齿状。在网路上看到 Molehill 范例几乎都是配置固定大小的 Back Buffer, viewPort。我特别用 Stage Resize 事件，把这个范例改成自动 resize Stage3D 跟 stage 一样大，并且维持 1:1 解析度&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Render Frame&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt; &lt;/strong&gt;最后是渲染画面的部分，每次渲染之前都要把画面清掉：&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333; font-family: sans-serif; line-height: 18px;&quot;&gt; &lt;/span&gt;&lt;/p&gt;
&lt;pre style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;cxt3D.clear(1, 1, 1, 1); // 清掉畫面用白色填滿&lt;/pre&gt;
&lt;p&gt;然后传入一个 3D 矩阵，通常是用来作 Camera 视角的变化用。一定要转置矩阵，否则刚刚写的 Vertex Shader 矩阵乘法就会出错了：&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333; font-family: sans-serif; line-height: 18px;&quot;&gt; &lt;/span&gt;&lt;/p&gt;
&lt;pre style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;var viewMatrix:Matrix3D = new Matrix3D();
cxt3D.setProgramConstantsFromMatrix(Context3DProgramType.VERTEX, 0, viewMatrix, true);&lt;/pre&gt;
&lt;p&gt;用一开始建立的 indexBuffer 画三角形到背景缓衝区：&lt;/p&gt;
&lt;pre style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;cxt3D.drawTriangles(indexBuffer, 0, 2);&lt;/pre&gt;
&lt;p&gt;最后才是将背景缓衝区资料表现出来：&lt;/p&gt;
&lt;pre style=&quot;display: block; overflow-x: auto; white-space: pre; font-size: 0.9em; font-family: Consolas, 'Courier New', Courier, mono, serif; padding: 0.78em; border: 1px dotted #666666;&quot;&gt;cxt3D.present();&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;实际执行的结果：&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img class=&quot;alignnone size-full wp-image-382&quot; title=&quot;MoleHillExample01&quot; src=&quot;http://www.pixelbender.cn/wp-content/uploads/2011/03/MoleHillExample01.png&quot; alt=&quot;&quot; width=&quot;320&quot; height=&quot;185&quot; /&gt;&lt;/p&gt;
&lt;p&gt;可能会发现到与之前设定的座标顏色值上下颠倒，好像是由於座标系 y 轴与一般 2D y 轴定义是相反的。只要用 viewMatrix.appendScale(1, -1, 1); 就可以翻正了。&lt;/p&gt;
&lt;p&gt;原文是繁体，大陆用户需要翻墙：http://ticore.blogspot.com/2011/03/flash-molehill-example.html&lt;/p&gt;
&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/581491043/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=381&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><wfw:commentRss>http://www.pixelbender.cn/?feed=rss2&amp;p=381</wfw:commentRss><slash:comments>35</slash:comments><description>这几天 Flash Player 11 Incubator 公开测试版放出，最大的功能特色就是 Molehill Low Level 3D API 。Molehill Low Level 3D API 其实非常底层，而且写起来很麻烦又缺乏参考文件。假如单纯只是要做 3D 应用，可以直接用现成的 3D 引擎(Away 3D)等等。我是抱著研究的精神来测试的，顺便作笔记。毕竟Molehill 不光是做 3D 应用，也能作 2D 图像加速或是其它利用 GPU 的运算等等。相信日后一定有很大帮助！ 最初参考的例子是从这里来的 polygonal labs &amp;#8211; Simple 2D Molehill Example。它的源码里也提供了 AGALMiniAssembler &amp;#8211; AGAL (Adobe Graphics Assembly Language) 编译器。这对于测试 Molehill 底层 API 还挺重要的，因為除了需要写 AS3 之外，还需要写 AGAL 用 AGALMiniAssembler 动态编译為 [...]&lt;img src=&quot;http://www1.feedsky.com/t1/581491043/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=381&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</description><category>在线教程</category><category>Adobe Graphics Assembly Language</category><category>Molehill</category><pubDate>Fri, 04 Mar 2011 14:33:12 +0800</pubDate><author>Y.Boy</author><comments>http://www.pixelbender.cn/?p=381#comments</comments><guid isPermaLink="false">http://www.pixelbender.cn/?p=381</guid><dc:creator>Y.Boy</dc:creator><fs:srclink>http://www.pixelbender.cn/?p=381</fs:srclink><fs:srcfeed>http://www.pixelbender.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/pixelbender/~7269152/581491043/5378678</fs:itemid></item><item><title>Pixel Bender 3D 诞生了</title><link>http://www.pixelbender.cn/?p=378</link><content:encoded>&lt;p&gt;Flash 的 3D API (Molehill) 诞生后，Pixel Bender 3D 应运而生。Pixel Bender 3D 是 pixelbender 语言的另一个版本，你可以使用它来创建顶点(vertex)和片段(fragment)着色器(shader)，这种着色器是运行于支持3D硬件加速的机器上。Pixel Bender 3D 是Pixel Bender 2D 的扩展，如果你对Pixel Bender 2D比较熟悉，那么你会很快上手Pixel Bender 3D的。&lt;/p&gt;
&lt;p&gt;在Adobe实验室上查看更多：&lt;a href=&quot;http://labs.adobe.com/technologies/pixelbender3d/&quot;&gt;http://labs.adobe.com/technologies/pixelbender3d/&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/581491044/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=378&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><wfw:commentRss>http://www.pixelbender.cn/?feed=rss2&amp;p=378</wfw:commentRss><slash:comments>0</slash:comments><description>Flash 的 3D API (Molehill) 诞生后，Pixel Bender 3D 应运而生。Pixel Bender 3D 是 pixelbender 语言的另一个版本，你可以使用它来创建顶点(vertex)和片段(fragment)着色器(shader)，这种着色器是运行于支持3D硬件加速的机器上。Pixel Bender 3D 是Pixel Bender 2D 的扩展，如果你对Pixel Bender 2D比较熟悉，那么你会很快上手Pixel Bender 3D的。 在Adobe实验室上查看更多：http://labs.adobe.com/technologies/pixelbender3d/&lt;img src=&quot;http://www1.feedsky.com/t1/581491044/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=378&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</description><category>3D</category><category>Molehill</category><category>业界资讯</category><category>杂七杂八</category><category>pixelbender 3D</category><pubDate>Thu, 03 Mar 2011 17:30:07 +0800</pubDate><author>Y.Boy</author><comments>http://www.pixelbender.cn/?p=378#comments</comments><guid isPermaLink="false">http://www.pixelbender.cn/?p=378</guid><dc:creator>Y.Boy</dc:creator><fs:srclink>http://www.pixelbender.cn/?p=378</fs:srclink><fs:srcfeed>http://www.pixelbender.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/pixelbender/~7269152/581491044/5378678</fs:itemid></item><item><title>pixel bender toolkit 2.5 发布了</title><link>http://www.pixelbender.cn/?p=371</link><content:encoded>&lt;p&gt;&lt;img class=&quot;alignnone size-full wp-image-373&quot; title=&quot;pb2.5&quot; src=&quot;http://www.pixelbender.cn/wp-content/uploads/2010/12/pb2.5.jpg&quot; alt=&quot;&quot; width=&quot;496&quot; height=&quot;589&quot; /&gt;&lt;/p&gt;
&lt;p&gt;pixel bender toolkit 2.5 现在包含一个新的视觉图形编辑器，允许你操作图形结构。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;你可以在这里下载到最新版的Pixel Bender及获取更多信息：&lt;a href=&quot;http://www.adobe.com/devnet/pixelbender.html&quot;&gt;http://www.adobe.com/devnet/pixelbender.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;在安装前，请阅读这个页面：&lt;a href=&quot;http://www.adobe.com/devnet/pixelbender/articles/releasenotes.html#articlecontentAdobe_numberedheader_2&quot;&gt;http://www.adobe.com/devnet/pixelbender/articles/releasenotes.html#articlecontentAdobe_numberedheader_2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Adobe Pixel Bender 中文技术中心：&lt;a href=&quot;http://www.adobe.com/cn/devnet/pixelbender/&quot;&gt;http://www.adobe.com/cn/devnet/pixelbender/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/581491045/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=371&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><wfw:commentRss>http://www.pixelbender.cn/?feed=rss2&amp;p=371</wfw:commentRss><slash:comments>54</slash:comments><description>pixel bender toolkit 2.5 现在包含一个新的视觉图形编辑器，允许你操作图形结构。 你可以在这里下载到最新版的Pixel Bender及获取更多信息：http://www.adobe.com/devnet/pixelbender.html 在安装前，请阅读这个页面：http://www.adobe.com/devnet/pixelbender/articles/releasenotes.html#articlecontentAdobe_numberedheader_2 Adobe Pixel Bender 中文技术中心：http://www.adobe.com/cn/devnet/pixelbender/&lt;img src=&quot;http://www1.feedsky.com/t1/581491045/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=371&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</description><category>业界资讯</category><category>pixelbender2.5</category><pubDate>Sat, 11 Dec 2010 17:08:38 +0800</pubDate><author>Y.Boy</author><comments>http://www.pixelbender.cn/?p=371#comments</comments><guid isPermaLink="false">http://www.pixelbender.cn/?p=371</guid><dc:creator>Y.Boy</dc:creator><fs:srclink>http://www.pixelbender.cn/?p=371</fs:srclink><fs:srcfeed>http://www.pixelbender.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/pixelbender/~7269152/581491045/5378678</fs:itemid></item><item><title>Pixel Bender 3D演示及Adobe MAX 2010上相关的视频</title><link>http://www.pixelbender.cn/?p=368</link><content:encoded>&lt;p&gt;Adobe的产品应用了Pixel Bender语言和GPU和多核图形处理的技术。伴随着新一代Flash Player（Molehill）的3D API的出现，Adobe致力于能协助创建shaders的工具。PixelBender 3D能够创建和输出可以在Flash Player中使用的fragment shaders &amp;amp; vertex shaders。英语原文里演示了如何创建和输出类似水中倒影的高级shaders效果：&lt;a title=&quot;Pixel Bender 3D&quot; href=&quot;http://bharatria.wordpress.com/2010/10/29/pixel-bender-3d/&quot; target=&quot;_blank&quot;&gt;http://bharatria.wordpress.com/2010/10/29/pixel-bender-3d/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;另外，这里有Adobe MAX 2010 关于Pixel Bender的一些视频：&lt;a title=&quot;MAX 2010: Pixel Bender: Now with 50% More &amp;quot;D&amp;quot;&quot; href=&quot;http://2010.max.adobe.com/online/2010/MAX281_1288202109718KIFY&quot; target=&quot;_blank&quot;&gt;MAX 2010: Pixel Bender: Now with 50% More “D”&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/581491046/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=368&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><wfw:commentRss>http://www.pixelbender.cn/?feed=rss2&amp;p=368</wfw:commentRss><slash:comments>3</slash:comments><description>Adobe的产品应用了Pixel Bender语言和GPU和多核图形处理的技术。伴随着新一代Flash Player（Molehill）的3D API的出现，Adobe致力于能协助创建shaders的工具。PixelBender 3D能够创建和输出可以在Flash Player中使用的fragment shaders &amp;#38; vertex shaders。英语原文里演示了如何创建和输出类似水中倒影的高级shaders效果：http://bharatria.wordpress.com/2010/10/29/pixel-bender-3d/ 另外，这里有Adobe MAX 2010 关于Pixel Bender的一些视频：MAX 2010: Pixel Bender: Now with 50% More “D”&lt;img src=&quot;http://www1.feedsky.com/t1/581491046/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=368&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</description><category>fragment shaders</category><category>3D</category><category>Molehill</category><category>业界资讯</category><category>vertex shaders</category><pubDate>Wed, 03 Nov 2010 10:00:24 +0800</pubDate><author>Y.Boy</author><comments>http://www.pixelbender.cn/?p=368#comments</comments><guid isPermaLink="false">http://www.pixelbender.cn/?p=368</guid><dc:creator>Y.Boy</dc:creator><fs:srclink>http://www.pixelbender.cn/?p=368</fs:srclink><fs:srcfeed>http://www.pixelbender.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/pixelbender/~7269152/581491046/5378678</fs:itemid></item><item><title>一个简单的Pixel Bender在线预览器</title><link>http://www.pixelbender.cn/?p=360</link><content:encoded>&lt;p&gt;&lt;strong&gt;介绍&lt;/strong&gt;：按英文字母“o”键选择本地PBJ文件进行预览。默认使用一张 300×300 像素的图片进行测试。不过你可以选择一张本地的图片来进行测试。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;网址&lt;/strong&gt;：&lt;a title=&quot;Pixel Bender kernel viewer&quot; href=&quot;http://www.pixelbender.cn/viewer/&quot; target=&quot;_blank&quot;&gt;http://www.pixelbender.cn/viewer/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img title=&quot;Pixel_Bender_kernel_viewer&quot; src=&quot;http://www.pixelbender.cn/wp-content/uploads/2010/08/Pixel_Bender_kernel_viewer.jpg&quot; alt=&quot;&quot; width=&quot;296&quot; height=&quot;178&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;原地址：&lt;/em&gt;&lt;em&gt;&lt;a href=&quot;http://alexanderzats.com/the/pixel-bender-viewer/&quot;&gt;http://alexanderzats.com/the/pixel-bender-viewer/&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/581491047/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=360&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><wfw:commentRss>http://www.pixelbender.cn/?feed=rss2&amp;p=360</wfw:commentRss><slash:comments>0</slash:comments><description>介绍：按英文字母“o”键选择本地PBJ文件进行预览。默认使用一张 300×300 像素的图片进行测试。不过你可以选择一张本地的图片来进行测试。 网址：http://www.pixelbender.cn/viewer/ 原地址：http://alexanderzats.com/the/pixel-bender-viewer/&lt;img src=&quot;http://www1.feedsky.com/t1/581491047/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=360&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</description><category>viewer</category><category>应用实例</category><category>杂七杂八</category><category>预览器</category><pubDate>Sat, 07 Aug 2010 12:48:46 +0800</pubDate><author>Y.Boy</author><comments>http://www.pixelbender.cn/?p=360#comments</comments><guid isPermaLink="false">http://www.pixelbender.cn/?p=360</guid><dc:creator>Y.Boy</dc:creator><fs:srclink>http://www.pixelbender.cn/?p=360</fs:srclink><fs:srcfeed>http://www.pixelbender.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/pixelbender/~7269152/581491047/5378678</fs:itemid></item><item><title>一个基于Pixel Bender的合成器</title><link>http://www.pixelbender.cn/?p=353</link><content:encoded>&lt;p&gt;        在Flash平台上用Pixel Bender进行音频处理已经十分常见。音频处理技术对处理器和数学要求都比较高，所以很自然地想到用Pixel Bender提高SWF文件里声音的表现力。去年某个时候我曾和Justin Everett-Church谈到根据Flash Player 10.1的多点触摸特性做个demo。做个合成器似乎是个好主意，而且可以一石二鸟。所以我写了合成器的代码，外观用Flex的UI，但不够美观，Justin把界面拿去美化之后又添加了多点触摸支持。Demo的第二部分。之后我打算整理好代码然后发布，但是一直忙于推广CS5所以7个月后才发布出来。现在这个demo已经可以演示了，并且有了个漂亮的Flex界面。&lt;/p&gt;
&lt;p&gt;        我想看看在flash player里最极限的情况是什么样的，所以我不断添加滤波器和处理器，直到声音在我的双核苹果笔记本上开始破裂，然后往回稍稍调一点。结果证明，通过Pixel Bender，你可以完成大量的音频交互处理。这个程序也可以作为AIR应用程序来运行，这意味着如果你真的很想玩，那么关闭其他所有的窗口。&lt;/p&gt;
&lt;p&gt;&lt;img title=&quot;pbSynthV1-300x184&quot; src=&quot;http://www.pixelbender.cn/wp-content/uploads/2010/07/pbSynthV1-300x184.jpg&quot; alt=&quot;&quot; width=&quot;300&quot; height=&quot;184&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;a title=&quot;Pixel Bender Synth Experiment&quot; href=&quot;http://www.kevingoldsmith.com/labs/PBSynth-v1/&quot; target=&quot;_blank&quot;&gt;Pixel Bender Synth Experiment&lt;/a&gt;&lt;span id=&quot;more-353&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;一些技术细节&lt;/strong&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;每一个Pixel Bender渲染器都包含在一个AS类里面，并通过ShaderJob触发。&lt;/li&gt;
&lt;li&gt;每一个Pixel Bender滤波器同时处理两个样本，以提高处理能力。&lt;/li&gt;
&lt;li&gt;合成器像混响效果器一样使用三个Pixel Bender Shaders，而其他滤波器只用一个。&lt;/li&gt;
&lt;li&gt;在AS里，延迟型滤波器（混响/延迟）使用简单的位桶式延迟，但是延迟信号通过Pixel Bender shaders与主信号混合后返回。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;所有信道都是立体声。当混合两个立体声输入时，要用到表征立体声信道两个设置的pixel4。当只是处理或生成一个单一的立体声信号时，要用到表征两个有时序关系的立体声样本的pixel4。&lt;a href=&quot;http://www.pixelbender.cn/wp-content/uploads/2010/07/Pixel-Bender-Synth.png&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;所有滤波器排序如下（点击放大）&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.pixelbender.cn/wp-content/uploads/2010/07/Pixel-Bender-Synth.png&quot; target=&quot;_blank&quot;&gt;&lt;img title=&quot;Pixel-Bender-Synth&quot; src=&quot;http://www.pixelbender.cn/wp-content/uploads/2010/07/Pixel-Bender-Synth-245x300.png&quot; alt=&quot;&quot; width=&quot;245&quot; height=&quot;300&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;原文（英文）：&lt;/em&gt;&lt;a href=&quot;http://blogs.adobe.com/kevin-goldsmith/2010/04/a_pixel_bender.html&quot;&gt;&lt;em&gt;http://blogs.adobe.com/kevin-goldsmith/2010/04/a_pixel_bender.html&lt;/em&gt;&lt;/a&gt;&lt;br /&gt;
&lt;em&gt;转自并加以处理：&lt;/em&gt;&lt;a href=&quot;http://bbs.9ria.com/viewthread.php?tid=59761&quot;&gt;&lt;em&gt;http://bbs.9ria.com/viewthread.php?tid=59761&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/581491048/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=353&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><wfw:commentRss>http://www.pixelbender.cn/?feed=rss2&amp;p=353</wfw:commentRss><slash:comments>269</slash:comments><description>        在Flash平台上用Pixel Bender进行音频处理已经十分常见。音频处理技术对处理器和数学要求都比较高，所以很自然地想到用Pixel Bender提高SWF文件里声音的表现力。去年某个时候我曾和Justin Everett-Church谈到根据Flash Player 10.1的多点触摸特性做个demo。做个合成器似乎是个好主意，而且可以一石二鸟。所以我写了合成器的代码，外观用Flex的UI，但不够美观，Justin把界面拿去美化之后又添加了多点触摸支持。Demo的第二部分。之后我打算整理好代码然后发布，但是一直忙于推广CS5所以7个月后才发布出来。现在这个demo已经可以演示了，并且有了个漂亮的Flex界面。         我想看看在flash player里最极限的情况是什么样的，所以我不断添加滤波器和处理器，直到声音在我的双核苹果笔记本上开始破裂，然后往回稍稍调一点。结果证明，通过Pixel Bender，你可以完成大量的音频交互处理。这个程序也可以作为AIR应用程序来运行，这意味着如果你真的很想玩，那么关闭其他所有的窗口。 Pixel Bender Synth Experiment 一些技术细节： 每一个Pixel Bender渲染器都包含在一个AS类里面，并通过ShaderJob触发。 每一个Pixel Bender滤波器同时处理两个样本，以提高处理能力。 合成器像混响效果器一样使用三个Pixel Bender Shaders，而其他滤波器只用一个。 在AS里，延迟型滤波器（混响/延迟）使用简单的位桶式延迟，但是延迟信号通过Pixel Bender shaders与主信号混合后返回。 所有信道都是立体声。当混合两个立体声输入时，要用到表征立体声信道两个设置的pixel4。当只是处理或生成一个单一的立体声信号时，要用到表征两个有时序关系的立体声样本的pixel4。 所有滤波器排序如下（点击放大）： 原文（英文）：http://blogs.adobe.com/kevin-goldsmith/2010/04/a_pixel_bender.html 转自并加以处理：http://bbs.9ria.com/viewthread.php?tid=59761&lt;img src=&quot;http://www1.feedsky.com/t1/581491048/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=353&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</description><category>应用实例</category><category>synthesizer</category><category>合成器</category><pubDate>Tue, 27 Jul 2010 12:27:35 +0800</pubDate><author>Y.Boy</author><comments>http://www.pixelbender.cn/?p=353#comments</comments><guid isPermaLink="false">http://www.pixelbender.cn/?p=353</guid><dc:creator>Y.Boy</dc:creator><fs:srclink>http://www.pixelbender.cn/?p=353</fs:srclink><fs:srcfeed>http://www.pixelbender.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/pixelbender/~7269152/581491048/5378678</fs:itemid></item><item><title>Adobe推出“Pixel Bender Technology Center”专题站</title><link>http://www.pixelbender.cn/?p=336</link><content:encoded>&lt;p&gt;&lt;img class=&quot;alignnone&quot; title=&quot;Pixel Bender Logo&quot; src=&quot;http://www.adobe.com/devnet/images/160x160/pixel_bender.jpg&quot; alt=&quot;Pixel Bender Logo&quot; width=&quot;160&quot; height=&quot;160&quot; /&gt;&lt;/p&gt;
&lt;p&gt;        今天，Adobe推出了“Pixel Bender Technology Center”专题站。上面的内容丰富多彩，还提供pdf版的帮助教程和语言参考下载。地址：&lt;a title=&quot;Pixel Bender Technology Center&quot; href=&quot;http://www.adobe.com/devnet/pixelbender/&quot;&gt;http://www.adobe.com/devnet/pixelbender/&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/581491049/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=336&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</content:encoded><wfw:commentRss>http://www.pixelbender.cn/?feed=rss2&amp;p=336</wfw:commentRss><slash:comments>227</slash:comments><description>        今天，Adobe推出了“Pixel Bender Technology Center”专题站。上面的内容丰富多彩，还提供pdf版的帮助教程和语言参考下载。地址：http://www.adobe.com/devnet/pixelbender/&lt;img src=&quot;http://www1.feedsky.com/t1/581491049/pixelbender/feedsky/s.gif?r=http://www.pixelbender.cn/?p=336&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;</description><category>在线教程</category><category>Guide</category><category>业界资讯</category><category>Technology Center</category><category>Language Reference</category><pubDate>Tue, 12 Jan 2010 20:06:35 +0800</pubDate><author>Y.Boy</author><comments>http://www.pixelbender.cn/?p=336#comments</comments><guid isPermaLink="false">http://www.pixelbender.cn/?p=336</guid><dc:creator>Y.Boy</dc:creator><fs:srclink>http://www.pixelbender.cn/?p=336</fs:srclink><fs:srcfeed>http://www.pixelbender.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/pixelbender/~7269152/581491049/5378678</fs:itemid></item></channel></rss>
