※現在、「wonderfl build flash online」求人コンテンツ制作に関してのアンケートを実施中です!みなさまのお力添えを頂いて、続々とアンケート結果が集まっていますが、まだまだ募集しております。ご協力のほど、どうぞよろしくお願いいたします!
wonderfl運営事務局
→アンケートページ(※ログインしてからお答えいただけるようになっています。)
BetweenAS3PV3Dbetweenpapervisionseek
[PV3D][BetweenAS3] Tween Seek Demo forked from: [PV3D][BetweenAS3] Tween Seek Demo
- <?xml version="1.0" encoding="utf-8"?>
- <!-- forked from clockmaker's [PV3D][BetweenAS3] Tween Seek Demo -->
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="absolute" frameRate="60"
- addedToStage="init()" enterFrame="onEnter()">
- <mx:Script>
- <![CDATA[
- /**
- * 【 BetweenAS3 を使ってトゥイーンのシーク制御 】
- * スライダーをドラッグ&ドロップで複合トゥイーンをシークできます。
- *
- * 技術的な解説は次の記事で
- * http://clockmaker.jp/blog/2009/07/betweenas3/
- */
- import flash.display.*;
- import flash.events.*;
- import org.papervision3d.materials.*;
- import org.papervision3d.materials.special.CompositeMaterial;
- import org.papervision3d.materials.utils.MaterialsList;
- import org.papervision3d.objects.primitives.*;
- import org.papervision3d.view.BasicView;
- import org.libspark.betweenas3.BetweenAS3;
- import org.libspark.betweenas3.tweens.ITween;
- import org.libspark.betweenas3.easing.*;
- static private const OBJ_NUM :int = 20; // オブジェクトの個数
- public var rot:Number = 0; // カメラの円運動用
- private var world:BasicView = new BasicView(); // PV3D
- private var baseTween:ITween; // ベースのトゥイーン生成
- public function init():void {
- // Flashの初期設定
- stage.quality = StageQuality.MEDIUM;
- // pv3dの初期設定
- container.addChild(world);
- world.viewport.opaqueBackground = 0x0;
- world.camera.focus = 250;
- // カメラの動きをTweenで作る
- baseTween = BetweenAS3.parallel(
- BetweenAS3.tween(this, { rot:0 }, { rot:135 }, 7, Cubic.easeInOut),
- BetweenAS3.tween(world.camera, { y:400, zoom:4 }, { y:-100, zoom:1 }, 6, Cubic.easeInOut)
- );
- for (var i:int = 0; i < OBJ_NUM; i++) {
- // キューブ
- var mt:CompositeMaterial = new CompositeMaterial();
- mt.addMaterial( new ColorMaterial(0x0, 0.5) );
- mt.addMaterial( new WireframeMaterial(0xFF0000) );
- var cube:Cube = world.scene.addChild(new Cube(new MaterialsList( { all:mt } ), 100, 100, 100)) as Cube;
- // 座標
- cube.x = 1500 * Math.random() - 750;
- cube.z = 1500 * Math.random() - 750;
- // 秒数
- var sec:Number = 2 * Math.random() + 3;
- // 基礎となるTweenを作る
- baseTween = BetweenAS3.parallel(
- BetweenAS3.tween(cube, { y:0 }, { y:2000 }, sec, Bounce.easeOut),
- baseTween
- );
- }
- baseTween.stopOnComplete = false; // ループ設定
- baseTween.play(); // 再生
- // レンダリング関係
- world.startRendering();
- // ついでに地面
- var earth:Plane = world.scene.addChild(new Plane(new WireframeMaterial(0x666666), 5000, 5000, 15, 15)) as Plane;
- earth.rotationX = 90;
- }
- // エンターフレーム
- private function onEnter(event:Event = null):void {
- // スライダーとトゥイーンの値を同期
- if(baseTween) slider.value = baseTween.position / baseTween.duration;
- // カメラの回転(BetweenAS3で制御するため)
- world.camera.x = 1000 * Math.cos(rot * Math.PI / 180);
- world.camera.z = 1000 * Math.sin(rot * Math.PI / 180);
- }
- // スライダーを動かしたとき
- private function onChange():void {
- // トゥイーンをスライダーで制御 ( トゥイーンの時間 × スライダーの百分率 )
- baseTween.gotoAndStop(baseTween.duration * slider.value);
- }
- // 再生ボタンをクリックしたとき
- private function onClick():void {
- // 再生と停止を切り替え
- baseTween.isPlaying ? baseTween.stop() : baseTween.play();
- }
- ]]>
- </mx:Script>
- <mx:UIComponent id="container" width="100%" height="100%" />
- <mx:Button label="Play/Stop" click="onClick()" x="180" y="400" />
- <mx:HSlider id="slider" change="onChange()" minimum="0" maximum="1" liveDragging="true" x="140" y="430" />
- </mx:Application>
[PV3D][BetweenAS3] Tween Seek Demo forked from: [PV3D][BetweenAS3] Tween Seek Demo
- <?xml version="1.0" encoding="utf-8"?>
- <!-- forked from clockmaker's [PV3D][BetweenAS3] Tween Seek Demo -->
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="absolute" frameRate="60"
- addedToStage="init()" enterFrame="onEnter()">
- <mx:Script>
- <![CDATA[
- /**
- * 【 BetweenAS3 を使ってトゥイーンのシーク制御 】
- * スライダーをドラッグ&ドロップで複合トゥイーンをシークできます。
- *
- * 技術的な解説は次の記事で
- * http://clockmaker.jp/blog/2009/07/betweenas3/
- */
- import flash.display.*;
- import flash.events.*;
- import org.papervision3d.materials.*;
- import org.papervision3d.materials.special.CompositeMaterial;
- import org.papervision3d.materials.utils.MaterialsList;
- import org.papervision3d.objects.primitives.*;
- import org.papervision3d.view.BasicView;
- import org.libspark.betweenas3.BetweenAS3;
- import org.libspark.betweenas3.tweens.ITween;
- import org.libspark.betweenas3.easing.*;
- static private const OBJ_NUM :int = 20; // オブジェクトの個数
- public var rot:Number = 0; // カメラの円運動用
- private var world:BasicView = new BasicView(); // PV3D
- private var baseTween:ITween; // ベースのトゥイーン生成
- public function init():void {
- // Flashの初期設定
- stage.quality = StageQuality.MEDIUM;
- // pv3dの初期設定
- container.addChild(world);
- world.viewport.opaqueBackground = 0x0;
- world.camera.focus = 250;
- // カメラの動きをTweenで作る
- baseTween = BetweenAS3.parallel(
- BetweenAS3.tween(this, { rot:0 }, { rot:135 }, 7, Cubic.easeInOut),
- BetweenAS3.tween(world.camera, { y:400, zoom:4 }, { y:-100, zoom:1 }, 6, Cubic.easeInOut)
- );
- for (var i:int = 0; i < OBJ_NUM; i++) {
- // キューブ
- var mt:CompositeMaterial = new CompositeMaterial();
- mt.addMaterial( new ColorMaterial(0x0, 0.5) );
- mt.addMaterial( new WireframeMaterial(0xFF0000) );
- var cube:Cube = world.scene.addChild(new Cube(new MaterialsList( { all:mt } ), 100, 100, 100)) as Cube;
- // 座標
- cube.x = 1500 * Math.random() - 750;
- cube.z = 1500 * Math.random() - 750;
- // 秒数
- var sec:Number = 2 * Math.random() + 3;
- // 基礎となるTweenを作る
- baseTween = BetweenAS3.parallel(
- BetweenAS3.tween(cube, { y:0 }, { y:2000 }, sec, Bounce.easeOut),
- baseTween
- );
- }
- baseTween.stopOnComplete = false; // ループ設定
- baseTween.play(); // 再生
- // レンダリング関係
- world.startRendering();
- // ついでに地面
- var earth:Plane = world.scene.addChild(new Plane(new WireframeMaterial(0x666666), 5000, 5000, 15, 15)) as Plane;
- earth.rotationX = 90;
- }
- // エンターフレーム
- private function onEnter(event:Event = null):void {
- // スライダーとトゥイーンの値を同期
- if(baseTween) slider.value = baseTween.position / baseTween.duration;
- // カメラの回転(BetweenAS3で制御するため)
- world.camera.x = 1000 * Math.cos(rot * Math.PI / 180);
- world.camera.z = 1000 * Math.sin(rot * Math.PI / 180);
- }
- // スライダーを動かしたとき
- private function onChange():void {
- // トゥイーンをスライダーで制御 ( トゥイーンの時間 × スライダーの百分率 )
- baseTween.gotoAndStop(baseTween.duration * slider.value);
- }
- // 再生ボタンをクリックしたとき
- private function onClick():void {
- // 再生と停止を切り替え
- baseTween.isPlaying ? baseTween.stop() : baseTween.play();
- }
- ]]>
- </mx:Script>
- <mx:UIComponent id="container" width="100%" height="100%" />
- <mx:Button label="Play/Stop" click="onClick()" x="180" y="400" />
- <mx:HSlider id="slider" change="onChange()" minimum="0" maximum="1" liveDragging="true" x="140" y="430" />
- </mx:Application>
[PV3D][BetweenAS3] Tween Seek Demo forked from: [PV3D][BetweenAS3] Tween Seek Demo
- <?xml version="1.0" encoding="utf-8"?>
- <!-- forked from clockmaker's [PV3D][BetweenAS3] Tween Seek Demo -->
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="absolute" frameRate="60"
- addedToStage="init()" enterFrame="onEnter()">
- <mx:Script>
- <![CDATA[
- /**
- * 【 BetweenAS3 を使ってトゥイーンのシーク制御 】
- * スライダーをドラッグ&ドロップで複合トゥイーンをシークできます。
- *
- * 技術的な解説は次の記事で
- * http://clockmaker.jp/blog/2009/07/betweenas3/
- */
- import flash.display.*;
- import flash.events.*;
- import org.papervision3d.materials.*;
- import org.papervision3d.materials.special.CompositeMaterial;
- import org.papervision3d.materials.utils.MaterialsList;
- import org.papervision3d.objects.primitives.*;
- import org.papervision3d.view.BasicView;
- import org.libspark.betweenas3.BetweenAS3;
- import org.libspark.betweenas3.tweens.ITween;
- import org.libspark.betweenas3.easing.*;
- static private const OBJ_NUM :int = 20; // オブジェクトの個数
- public var rot:Number = 0; // カメラの円運動用
- private var world:BasicView = new BasicView(); // PV3D
- private var baseTween:ITween; // ベースのトゥイーン生成
- public function init():void {
- // Flashの初期設定
- stage.quality = StageQuality.MEDIUM;
- // pv3dの初期設定
- container.addChild(world);
- world.viewport.opaqueBackground = 0x0;
- world.camera.focus = 250;
- // カメラの動きをTweenで作る
- baseTween = BetweenAS3.parallel(
- BetweenAS3.tween(this, { rot:0 }, { rot:135 }, 7, Cubic.easeInOut),
- BetweenAS3.tween(world.camera, { y:400, zoom:4 }, { y:-100, zoom:1 }, 6, Cubic.easeInOut)
- );
- for (var i:int = 0; i < OBJ_NUM; i++) {
- // キューブ
- var mt:CompositeMaterial = new CompositeMaterial();
- mt.addMaterial( new ColorMaterial(0x0, 0.5) );
- mt.addMaterial( new WireframeMaterial(0xFF0000) );
- var cube:Cube = world.scene.addChild(new Cube(new MaterialsList( { all:mt } ), 100, 100, 100)) as Cube;
- // 座標
- cube.x = 1500 * Math.random() - 750;
- cube.z = 1500 * Math.random() - 750;
- // 秒数
- var sec:Number = 2 * Math.random() + 3;
- // 基礎となるTweenを作る
- baseTween = BetweenAS3.parallel(
- BetweenAS3.tween(cube, { y:0 }, { y:2000 }, sec, Bounce.easeOut),
- baseTween
- );
- }
- baseTween.stopOnComplete = false; // ループ設定
- baseTween.play(); // 再生
- // レンダリング関係
- world.startRendering();
- // ついでに地面
- var earth:Plane = world.scene.addChild(new Plane(new WireframeMaterial(0x666666), 5000, 5000, 15, 15)) as Plane;
- earth.rotationX = 90;
- }
- // エンターフレーム
- private function onEnter(event:Event = null):void {
- // スライダーとトゥイーンの値を同期
- if(baseTween) slider.value = baseTween.position / baseTween.duration;
- // カメラの回転(BetweenAS3で制御するため)
- world.camera.x = 1000 * Math.cos(rot * Math.PI / 180);
- world.camera.z = 1000 * Math.sin(rot * Math.PI / 180);
- }
- // スライダーを動かしたとき
- private function onChange():void {
- // トゥイーンをスライダーで制御 ( トゥイーンの時間 × スライダーの百分率 )
- baseTween.gotoAndStop(baseTween.duration * slider.value);
- }
- // 再生ボタンをクリックしたとき
- private function onClick():void {
- // 再生と停止を切り替え
- baseTween.isPlaying ? baseTween.stop() : baseTween.play();
- }
- ]]>
- </mx:Script>
- <mx:UIComponent id="container" width="100%" height="100%" />
- <mx:Button label="Play/Stop" click="onClick()" x="180" y="400" />
- <mx:HSlider id="slider" change="onChange()" minimum="0" maximum="1" liveDragging="true" x="140" y="430" />
- </mx:Application>
[PV3D][BetweenAS3] Tween Seek Demo forked from: [PV3D][BetweenAS3] Tween Seek Demo
- <?xml version="1.0" encoding="utf-8"?>
- <!-- forked from clockmaker's [PV3D][BetweenAS3] Tween Seek Demo -->
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="absolute" frameRate="60"
- addedToStage="init()" enterFrame="onEnter()">
- <mx:Script>
- <![CDATA[
- /**
- * 【 BetweenAS3 を使ってトゥイーンのシーク制御 】
- * スライダーをドラッグ&ドロップで複合トゥイーンをシークできます。
- *
- * 技術的な解説は次の記事で
- * http://clockmaker.jp/blog/2009/07/betweenas3/
- */
- import flash.display.*;
- import flash.events.*;
- import org.papervision3d.materials.*;
- import org.papervision3d.materials.special.CompositeMaterial;
- import org.papervision3d.materials.utils.MaterialsList;
- import org.papervision3d.objects.primitives.*;
- import org.papervision3d.view.BasicView;
- import org.libspark.betweenas3.BetweenAS3;
- import org.libspark.betweenas3.tweens.ITween;
- import org.libspark.betweenas3.easing.*;
- static private const OBJ_NUM :int = 20; // オブジェクトの個数
- public var rot:Number = 0; // カメラの円運動用
- private var world:BasicView = new BasicView(); // PV3D
- private var baseTween:ITween; // ベースのトゥイーン生成
- public function init():void {
- // Flashの初期設定
- stage.quality = StageQuality.MEDIUM;
- // pv3dの初期設定
- container.addChild(world);
- world.viewport.opaqueBackground = 0x0;
- world.camera.focus = 250;
- // カメラの動きをTweenで作る
- baseTween = BetweenAS3.parallel(
- BetweenAS3.tween(this, { rot:0 }, { rot:135 }, 7, Cubic.easeInOut),
- BetweenAS3.tween(world.camera, { y:400, zoom:4 }, { y:-100, zoom:1 }, 6, Cubic.easeInOut)
- );
- for (var i:int = 0; i < OBJ_NUM; i++) {
- // キューブ
- var mt:CompositeMaterial = new CompositeMaterial();
- mt.addMaterial( new ColorMaterial(0x0, 0.5) );
- mt.addMaterial( new WireframeMaterial(0xFF0000) );
- var cube:Cube = world.scene.addChild(new Cube(new MaterialsList( { all:mt } ), 100, 100, 100)) as Cube;
- // 座標
- cube.x = 1500 * Math.random() - 750;
- cube.z = 1500 * Math.random() - 750;
- // 秒数
- var sec:Number = 2 * Math.random() + 3;
- // 基礎となるTweenを作る
- baseTween = BetweenAS3.parallel(
- BetweenAS3.tween(cube, { y:0 }, { y:2000 }, sec, Bounce.easeOut),
- baseTween
- );
- }
- baseTween.stopOnComplete = false; // ループ設定
- baseTween.play(); // 再生
- // レンダリング関係
- world.startRendering();
- // ついでに地面
- var earth:Plane = world.scene.addChild(new Plane(new WireframeMaterial(0x666666), 5000, 5000, 15, 15)) as Plane;
- earth.rotationX = 90;
- }
- // エンターフレーム
- private function onEnter(event:Event = null):void {
- // スライダーとトゥイーンの値を同期
- if(baseTween) slider.value = baseTween.position / baseTween.duration;
- // カメラの回転(BetweenAS3で制御するため)
- world.camera.x = 1000 * Math.cos(rot * Math.PI / 180);
- world.camera.z = 1000 * Math.sin(rot * Math.PI / 180);
- }
- // スライダーを動かしたとき
- private function onChange():void {
- // トゥイーンをスライダーで制御 ( トゥイーンの時間 × スライダーの百分率 )
- baseTween.gotoAndStop(baseTween.duration * slider.value);
- }
- // 再生ボタンをクリックしたとき
- private function onClick():void {
- // 再生と停止を切り替え
- baseTween.isPlaying ? baseTween.stop() : baseTween.play();
- }
- ]]>
- </mx:Script>
- <mx:UIComponent id="container" width="100%" height="100%" />
- <mx:Button label="Play/Stop" click="onClick()" x="180" y="400" />
- <mx:HSlider id="slider" change="onChange()" minimum="0" maximum="1" liveDragging="true" x="140" y="430" />
- </mx:Application>
[PV3D][BetweenAS3] Tween Seek Demo forked from: [PV3D][BetweenAS3] Tween Seek Demo
- <?xml version="1.0" encoding="utf-8"?>
- <!-- forked from clockmaker's [PV3D][BetweenAS3] Tween Seek Demo -->
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="absolute" frameRate="60"
- addedToStage="init()" enterFrame="onEnter()">
- <mx:Script>
- <![CDATA[
- /**
- * 【 BetweenAS3 を使ってトゥイーンのシーク制御 】
- * スライダーをドラッグ&ドロップで複合トゥイーンをシークできます。
- *
- * 技術的な解説は次の記事で
- * http://clockmaker.jp/blog/2009/07/betweenas3/
- */
- import flash.display.*;
- import flash.events.*;
- import org.papervision3d.materials.*;
- import org.papervision3d.materials.special.CompositeMaterial;
- import org.papervision3d.materials.utils.MaterialsList;
- import org.papervision3d.objects.primitives.*;
- import org.papervision3d.view.BasicView;
- import org.libspark.betweenas3.BetweenAS3;
- import org.libspark.betweenas3.tweens.ITween;
- import org.libspark.betweenas3.easing.*;
- static private const OBJ_NUM :int = 20; // オブジェクトの個数
- public var rot:Number = 0; // カメラの円運動用
- private var world:BasicView = new BasicView(); // PV3D
- private var baseTween:ITween; // ベースのトゥイーン生成
- public function init():void {
- // Flashの初期設定
- stage.quality = StageQuality.MEDIUM;
- // pv3dの初期設定
- container.addChild(world);
- world.viewport.opaqueBackground = 0x0;
- world.camera.focus = 250;
- // カメラの動きをTweenで作る
- baseTween = BetweenAS3.parallel(
- BetweenAS3.tween(this, { rot:-20 }, { rot:135 }, 7, Cubic.easeInOut),
- BetweenAS3.tween(world.camera, { y:400, zoom:4 }, { y:-100, zoom:1 }, 6, Cubic.easeInOut)
- );
- for (var i:int = 0; i < OBJ_NUM; i++) {
- // キューブ
- var mt:CompositeMaterial = new CompositeMaterial();
- mt.addMaterial( new ColorMaterial(0x0, 0.5) );
- mt.addMaterial( new WireframeMaterial(0xFF0000) );
- var cube:Cube = world.scene.addChild(new Cube(new MaterialsList( { all:mt } ), 100, 100, 100)) as Cube;
- // 座標
- cube.x = 1500 * Math.random() - 750;
- cube.z = 1500 * Math.random() - 750;
- // 秒数
- var sec:Number = 2 * Math.random() + 3;
- // 基礎となるTweenを作る
- baseTween = BetweenAS3.parallel(
- BetweenAS3.tween(cube, { y:0 }, { y:2000 }, sec, Bounce.easeOut),
- baseTween
- );
- }
- baseTween.stopOnComplete = false; // ループ設定
- baseTween.play(); // 再生
- // レンダリング関係
- world.startRendering();
- // ついでに地面
- var earth:Plane = world.scene.addChild(new Plane(new WireframeMaterial(0x666666), 5000, 5000, 15, 15)) as Plane;
- earth.rotationX = 90;
- }
- // エンターフレーム
- private function onEnter(event:Event = null):void {
- // スライダーとトゥイーンの値を同期
- if(baseTween) slider.value = baseTween.position / baseTween.duration;
- // カメラの回転(BetweenAS3で制御するため)
- world.camera.x = 1000 * Math.cos(rot * Math.PI / 180);
- world.camera.z = 1000 * Math.sin(rot * Math.PI / 180);
- }
- // スライダーを動かしたとき
- private function onChange():void {
- // トゥイーンをスライダーで制御 ( トゥイーンの時間 × スライダーの百分率 )
- baseTween.gotoAndStop(baseTween.duration * slider.value);
- }
- // 再生ボタンをクリックしたとき
- private function onClick():void {
- // 再生と停止を切り替え
- baseTween.isPlaying ? baseTween.stop() : baseTween.play();
- }
- ]]>
- </mx:Script>
- <mx:UIComponent id="container" width="100%" height="100%" />
- <mx:Button label="Play/Stop" click="onClick()" x="180" y="400" />
- <mx:HSlider id="slider" change="onChange()" minimum="0" maximum="1" liveDragging="true" x="140" y="430" />
- </mx:Application>
notice: 


