SiONを勉強するよ(1)
SiONWork1
SiONまだわかってない & applyFilter覚えたてで気に入りすぎ
@author naoto koshikawa
♥2 |
Line 52 |
Modified 2009-09-15 00:32:06 |
MIT License
archived:2017-03-20 04:24:02
ActionScript3 source code
/**
* Copyright naoto5959 ( http://wonderfl.net/user/naoto5959 )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/vpWM
*/
package
{
import flash.display.Sprite;
import flash.display.StageQuality;
import flash.filters.BlurFilter;
import flash.geom.Point;
import frocessing.display.F5MovieClip2DBmp;
import org.si.sion.events.SiONTrackEvent;
import org.si.sion.SiONData;
import org.si.sion.SiONDriver;
import org.si.sion.utils.SiONPresetVoice;
/**
* SiONWork1
* SiONまだわかってない & applyFilter覚えたてで気に入りすぎ
* @author naoto koshikawa
*/
public class SiONWork1 extends F5MovieClip2DBmp
{
//----------------------------------------------------------------------
// properties
//----------------------------------------------------------------------
//------------------------------
// private properties
//------------------------------
/**
* SiON driver
*/
private var _driver:SiONDriver;
/**
* prreset voice
*/
private var _presetVoice:SiONPresetVoice;
private var _rythmLoop:SiONData;
//----------------------------------------------------------------------
// methods
//----------------------------------------------------------------------
//------------------------------
// public methods
//------------------------------
/**
* constructor
*/
public function SiONWork1()
{
stage.quality = StageQuality.HIGH;
_driver = new SiONDriver();
_presetVoice = new SiONPresetVoice();
_driver.volume = 0.5;
var mml:String = "t132;";
mml += "%6@0o3l8$c2cc.c.; %6@1o3$rcrc; %6@2v8l16$[crccrrcc]; %6@3v8o3$[rc8r8];";
mml += "%t,1,1 %6@4v8l16o3$aa<a8>a<ga>ararara<e8>;";
_rythmLoop = _driver.compile(mml);
_rythmLoop.setVoice(0, _presetVoice["valsound.guitar3"]);
_rythmLoop.setVoice(1, _presetVoice["valsound.percus28"]);
_rythmLoop.setVoice(2, _presetVoice["valsound.percus17"]);
_rythmLoop.setVoice(3, _presetVoice["valsound.percus23"]);
_rythmLoop.setVoice(4, _presetVoice["valsound.bass4"]);
_driver.addEventListener(SiONTrackEvent.NOTE_ON_FRAME, _onNoteOn);
_driver.play(_rythmLoop);
}
private function _onNoteOn(event:SiONTrackEvent):void
{
stroke(event.note, random(0.5, 0.9) , 1);
line(0, random(0, stage.stageHeight), stage.stageWidth, random(0, stage.stageHeight));
bitmapData.applyFilter(bitmapData, bitmapData.rect, new Point(), new BlurFilter(4, 4, 2));
}
public function setup():void
{
size(stage.stageWidth, stage.stageHeight);
colorMode(HSV, 48, 1, 1);
background(0);
}
public function draw():void
{
line(0, random(0, stage.stageHeight), stage.stageWidth, random(0, stage.stageHeight));
}
}
}