public class Learn extends Music{ public function Learn(){ design(); seo(); rock(); snowboarding(); skateboarding(); movie(); if(me==happy){ everyone == happy; }else if(me==sad){ drink++; } } }

解決

Posted: 12月 30th, 2009 | Author: yoheim | Filed under: flash | No Comments »

昨日、悩んでたところは、全然関係ないことが原因でした。。。

for文の中でTweenMaxを使ってて、onCompleteが何度も繰り返されていたことが原因でした。
多分、やり方としては、スマートではないのでしょうが、if文で切り分けてとりあえずはOKでした。

さて、今年も終わりですが、来年から趣味の映画や、本についてと英語の勉強ブログを始めようと思ってます。
ここに書き始めようとも思ったのですが、主旨がずれてしまうので、新しく立ち上げることにしました。

書き始め次第リンクしようと思っております。

書くことが少なくて寂しいのでクリスマスに書いた落書きカードを載せておきます~


文字列でクラス指定

Posted: 12月 29th, 2009 | Author: yoheim | Filed under: flash | No Comments »

今日は、依頼されているサイトのFlashを作成していて、
連番で指定したクラスをfor文で操作する方法が分からずかなり参ってました。

下記のようにすると上手くいきました。
for(var k:Number = 0;k<17;k++){

var name_str:String = "ReText0"+(k+1);//文字列でクラスを指定
var retextClass:Class = Class(getDefinitionByName(name_str));//文字列からクラスの参照をしてClassにキャスト
var retextInstance:MovieClip = new retextClass();//インスタンス作成
addChild(retextInstance)
}

けれども、それぞれにインスタンス名を付けて操作ができず未だなやんでおります。
var reName:String = "retext0"+(k+1);
retextInstance.name = reName;
などとしてやってみたんですが、当然Stringなので上手くいきません。
もう少し悩んでみたいと思います。

http://f-site.org/articles/2008/01/17051234.html
を参考にさせて頂きました。



サイトデザイン

Posted: 12月 23rd, 2009 | Author: yoheim | Filed under: photoshop | No Comments »

昨日、今日とある方から依頼されているサイトのリニューアルデザイン案を作成していました。

まだまだ、クオリティの低いものしか提供できない僕にチャンスを下さったことに感謝しております。
やるからには、自分のできること以上のものに仕上げたいので、
TRY&ERRORを繰り返し行いました。


【Design Link Database】
http://www.designlinkdatabase.net/

【イケサイ】
http://www.ikesai.com/

で、参考とするサイトを調べて解析。




自分なりに作る。




作り方不明




【コリス】
http://coliss.com/

【Design Walker】
http://www.designwalker.com/

【Smashing Magazine】
http://www.smashingmagazine.com/

などなどで同ジャンルのチュートリアルを探す。




試す



②へ戻る。

を繰り返してました。

最近はFlashばかり触っていたので、デザインもやっぱり楽しいなーっと感じることができて良かったです。




跳ね返り

Posted: 12月 21st, 2009 | Author: yoheim | Filed under: flash | No Comments »

自分のポートフォリオサイトをas3で作ろうと考えpsdでモックまでは作ったのですが、肝心の動きに関してどうやったらよいのか、どのような知識が必要なのか等を考えていたのですが、頭の中が混乱してきたので、
ひとまず、教本を進めることにしました。

悩んでいるだけの一日で終わってしまいそうだったので・・。

今回は、

再利用と跳ね返りを作りました。

教本通りなので、ソースは割愛します。

覚えることが多すぎて焦ってきました。





【ランダムにボールを表示して噴水みたいにする】



This movie requires Flash Player 9







【ボールの位置を調べて跳ね返りする】
This movie requires Flash Player 9


メモ

Posted: 12月 17th, 2009 | Author: yoheim | Filed under: flash | No Comments »

【FlashDevelop へのクラスパスの通し方】
ToolsからGlobal Passes で選択して通す。

【Flash】
Flashでは、環境設定からas3.0設定で通す。

つい忘れがちなのでメモしておきます。

今日は、TweenMax を勉強していました。
まだまだ実験中なので、もうちょいやってから載せたいと思います。

今、個人的に製作しているものにも利用してみたいので、早めに理解したいものです。

もっとasの本質的なことも勉強しないと。
理解が浅いことも再発見してしまった日でした。


papervision

Posted: 12月 15th, 2009 | Author: yoheim | Filed under: Papervision3D | No Comments »

最近、勉強していなかったpapervisionを再開しました。

自分のポートフォリオサイトには3D表現を入れてみたいなぁと思っているのですが

まだ、基礎編をやっているので、はっきりとは理解していません。

僕的に3D表現に非常に興味があるので、勉強を進めて行きたいところなのですが、
なにせ、まだas3自体の勉強もまだまだな感じなので
いまいち手が回りません。

時間を作ってpapervisionもやっていけたらいいなぁと思ってます。

今から、一旦as勉強を終えて自分のポートフォリオと依頼されているサイトの製作をしたいと考えてます。

後でまだ気力があったらasの勉強を再開します。


そんな、PV3Dです。

This movie requires Flash Player 9


以下ソースです。
package
{
import flash.display.*;
import flash.events.*;
//PaperVision
import org.papervision3d.scenes.Scene3D;
import org.papervision3d.cameras.Camera3D;
import org.papervision3d.view.Viewport3D;
import org.papervision3d.render.BasicRenderEngine;
import org.papervision3d.objects.DisplayObject3D;
import org.papervision3d.objects.primitives.Plane;
import org.papervision3d.materials.MovieAssetMaterial;


public class Test extends Sprite
{
private var scene:Scene3D;
private var camera:Camera3D;
private var renderer:BasicRenderEngine;
private var viewport:Viewport3D;

private var stageW:Number;
private var stageH:Number;
private var vpX:Number;
private var vpY:Number;


public function Test()
{
init();

}

private function init():void
{
setStage();//ステージ初期化
setCamera();//カメラ初期化
setScene();//シーン初期化
setDO3D();//オブジェクト初期化
addEventListener(Event.ENTER_FRAME, onEnterframe);

}

private function onEnterframe(e:Event):void
{
var angleX:Number = (mouseX – vpX) * 0.0001;
var angleY:Number = (mouseY – vpY) * 0.0001;
moveCameraX(angleX);
moveCameraY(angleY);
renderer.renderScene(scene, camera, viewport);
}

private function moveCameraY(angleY):void
{
var cosY:Number = Math.cos(angleY);
var sinY:Number = Math.sin(angleY);
camera.y = camera.y * cosY – camera.z * sinY;

}

private function moveCameraX(angleX):void
{
var cosX:Number = Math.cos(angleX);
var sinX:Number = Math.sin(angleX);
camera.x = camera.x * cosX – camera.z * sinX;

}

private function setDO3D():void
{
var material:MovieAssetMaterial = new MovieAssetMaterial(”ever_mc”, true, true);
material.oneSide = false;
material.smooth = true;
var plane:Plane = new Plane(material, 279, 61, 4, 4);
scene.addChild(plane);

}

private function setCamera():void
{
camera = new Camera3D();
camera.x = 0;
camera.y = 200;
camera.z = -200;
camera.zoom = 30;
camera.focus = 30;
camera.target = DisplayObject3D.ZERO;

}

private function setScene():void
{
renderer = new BasicRenderEngine();
scene = new Scene3D();
viewport = new Viewport3D(0, 0, true, true);
addChild(viewport);

}

private function setStage():void
{
stage.quality = StageQuality.MEDIUM;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
stageW = stage.stageWidth;
stageH = stage.stageHeight;
vpX = stageW / 2;
vpY = stageH / 2;


}

}

}




勉強法

Posted: 12月 13th, 2009 | Author: yoheim | Filed under: flash | No Comments »

僕には、勉強すべきこと,知りたいことが満載で、上手いこと時間を使っていかないとなりません。
actionscriptはとくに好きなのでどうしても、勉強時間の大部分をasに割り当ててしまいます。しかし、他にもやりたいこと知りたいこと、勉強すべきことが沢山あるので、効率良くできないものかと思っていたのですが、
昨日から、タイマーを使ってやってみることにしました。

単純に1勉強につき1.5時間と決めて開始から1.5時間後にアラームがなるようにしました。
そうすると、今まで多分集中力も途切れ途切れになっていたということも明らかになり、やりたいことを1つずつ効率的にやれるような気がしました。

まぁ、学校の授業みたいのを自分でやるみたいな単純なことです。

僕には合ってそうなので、勉強することを書き出して持ち時間からそれぞれに割り当てる時間を計算してもっと効率良く改善していこうと考えています。

では、今日as3.0アニメーションで学んだものです。

今回は、キーボードの上下左右ボタンで動くボールです。さらに加速度と重力を加えたものです。

以下ソースです。

package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.ui.Keyboard;
import flash.events.KeyboardEvent;
import flash.events.MouseEvent;

public class Acceleration2 extends Sprite
{
private var ball:Ball;
private var vx:Number = 0;//X速度
private var ax:Number = 0;//X加速度
private var vy:Number = 0;//Y速度
private var ay:Number = 0;//Y加速度
private var gravity:Number = 0.07;//引力
private var startbtn:StartBtn;


public function Acceleration2()
{
init();

}

private function init():void
{
startbtn = new StartBtn();
addChild(startbtn);
startbtn.x = stage.stageWidth / 2;
startbtn.y = stage.stageHeight / 2 + 100;
ball = new Ball();
ball.x = stage.stageWidth / 2;
ball.y = stage.stageHeight / 2;
startbtn.addEventListener(MouseEvent.CLICK, onStart);

stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeydown);
stage.addEventListener(KeyboardEvent.KEY_UP, onKeyup);

}

private function onStart(e:MouseEvent):void
{
addEventListener(Event.ENTER_FRAME, onenterFrame);
startbtn.removeEventListener(MouseEvent.CLICK, onStart);
addChild(ball);
removeChild(startbtn);
}

private function onenterFrame(e:Event):void
{
vx += ax;
vy += ay;
vy += gravity;
ball.x += vx;
ball.y += vy;
}

private function onKeyup(e:KeyboardEvent):void
{
ax = 0;
ay = 0;
}

private function onKeydown(e:KeyboardEvent):void
{
if (e.keyCode == Keyboard.LEFT) {
ax = -0.2;
}else if (e.keyCode == Keyboard.RIGHT) {
ax = 0.2;
}else if (e.keyCode == Keyboard.UP) {
ay = -0.2;
}else if (e.keyCode == Keyboard.DOWN) {
ay = 0.2;
}
}

}

}

This movie requires Flash Player 9


as3.0アニメーション@filter

Posted: 12月 12th, 2009 | Author: yoheim | Filed under: flash | No Comments »

as3.0アニメーションのfilter関連を勉強していました。
この本はとにかく読みがいのある本でなかなか進みません・・・。

とりあえず今日の仕上げとしてサンプルを殆ど変えてませんが、
dropshadowがマウスに追随して動くというものです。

以下ソースです。

package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.filters.DropShadowFilter;

public class AnimatedFilters extends Sprite
{
private var filter:DropShadowFilter;
private var sprite:Sprite;

public function AnimatedFilters()
{
init();

}

private function init():void
{
sprite = new Sprite();
sprite.graphics.lineStyle(2);
sprite.graphics.beginFill(0xffff00);
sprite.graphics.drawRect( -50, -50, 100, 100);
sprite.graphics.endFill();
sprite.x = stage.stageWidth/2;
sprite.y = stage.stageHeight/2;
addChild(sprite);

filter = new DropShadowFilter(0, 0, 0, 1, 20, 20, 0.2);

addEventListener(Event.ENTER_FRAME, onEnterFrame);

}

private function onEnterFrame(e:Event):void
{
var dx:Number = mouseX – sprite.x;
var dy:Number = mouseY – sprite.y;

filter.distance = Math.sqrt(dx * dx + dy * dy)/5;
filter.angle = Math.atan2(dy, dx) * 180 / Math.PI;
sprite.filters = [filter];
}

}

}

This movie requires Flash Player 9


超基礎復習

Posted: 12月 12th, 2009 | Author: yoheim | Filed under: javascript | No Comments »

今日は、asの教本を進めてから、今まで苦手意識がありなかなかちゃんと学んでなかったjavascriptを
きっちり基本からやろうと思い立ち、超基本からやり直し始めました。
JavaScript講座
を一通りやろうと思ってます。

今日から始めて、凄い基礎なんで3日くらいを目途にしています。
現在31回目。

メインのasも早く自在に操りたいので、教本をこれから読み進めたいと思います。

cssも独学というか感覚的に進めてしまってたので、基本からやり直しをする予定です。

やることが満載なことを改めて思い知らされています。

asが好きなので、どうしてもas中心になってしまいますが、もっと時間を有効に使わないとなーと思います。


気分を変えて

Posted: 12月 10th, 2009 | Author: yoheim | Filed under: flash | No Comments »

やはり、上手いこと動かないので、気分転換にいつもお世話になっているふらちゅうさん
のエントリーにあった
古い映画のエフェクトをドキュメントクラスで作ってみました。

下記movieEffect.asです。

package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.utils.Timer;
import flash.events.TimerEvent;

public class movieEffect extends Sprite
{
var circle:Circle = new Circle();
var line:Line = new Line();
var timer:Timer;

public function movieEffect()
{
timer = new Timer(10)
timer.addEventListener(TimerEvent.TIMER, loop);
timer.start();
}

private function loop(e:TimerEvent):void
{
addChild(line);
addChild(circle);
line.x = Math.random() * stage.stageWidth;
line.y = Math.random() * stage.stageHeight;
line.alpha = Math.random() * 0.1 + 0.3;

circle.x = Math.random() * stage.stageWidth;
circle.y = Math.random() * stage.stageHeight;
circle.alpha = Math.random() * 0.1 + 0.4;
circle.rotation = Math.random() * 360;

this["base_mc"].alpha = Math.random() * 0.1+0.8 ;
}

}

}

This movie requires Flash Player 9