<?xml version="1.0" encoding="utf-8"?> <mx:Application layout="vertical" verticalScrollPolicy="off" horizontalScrollPolicy="off" backgroundColor="#FFFFFF" backgroundGradientColors="#FFFFFF,#FFFFFF" applicationComplete="onApplicationComplete();" xmlns:mx="http://www.adobe.com/2006/mxml" viewSourceURL="srcview/index.html"> <mx:Script> <![CDATA[ [Embed(source="assets/sharpen.pbj", mimeType="application/octet-stream")] private var shaderObj:Class; private var shader:Shader; private var shaderFilter:ShaderFilter; /** * Initialize the shader */ private function onApplicationComplete():void { shader = new Shader( new shaderObj() ); setShader(); } private function setShader():void { if( enableCheckBox.selected ) { shader.data.amount.value = [amountSlider.value]; shader.data.radius.value = [radiusSlider.value]; shaderFilter = new ShaderFilter( shader ); sharpenImage.filters = [shaderFilter]; } else { sharpenImage.filters = []; } } ]]> </mx:Script> <mx:Form> <mx:FormItem label="Amount"> <mx:HSlider id="amountSlider" minimum="0" maximum="20" value="3" change="setShader();" liveDragging="true" /> </mx:FormItem> <mx:FormItem label="Radius"> <mx:HSlider id="radiusSlider" minimum="0" maximum="1" value=".1" change="setShader();" liveDragging="true" /> </mx:FormItem> <mx:FormItem label="Enable"> <mx:CheckBox id="enableCheckBox" selected="true" change="setShader();" /> </mx:FormItem> </mx:Form> <mx:Image id="sharpenImage" source="assets/windsor.jpg" /> </mx:Application>