初めてのpapervision3D その3

次は3Dの球体にテクスチャを張り付けてみよう。

BitmapFileMaterialをつかって画像をはりつける
せっかくなのでgooglemapの航空写真をつかってみました。

bg
サンプルはこちら

そしてソース

package
{
	import flash.display.Sprite;
	import flash.events.Event;
	import caurina.transitions.Tweener;
	import org.papervision3d.view.*;
	import org.papervision3d.objects.primitives.*;
	import org.papervision3d.materials.*;

    public class Main extends BasicView
    {
		private var mySphere:Sphere;
		public function Main() {
			init();
		}
		private function init():void
		{
			var material:BitmapFileMaterial = new BitmapFileMaterial("bg.jpg");
			mySphere = new Sphere(material, 300, 30, 30);
			var sp:Sprite = new Sprite();
			scene.addChild(mySphere);
			startRendering();
			sp.addEventListener(Event.ENTER_FRAME,enterFrameHandle);

		}
		private function enterFrameHandle(e:Event):void
		{
			mySphere.rotationY += 0.5;
		}
	}
}

追加変更した部分は・・

1、materialsをインポート
import org.papervision3d.materials.*;

2、BitmapFileMaterialに対象画像のパスをつっこみ
var material:BitmapFileMaterial = new BitmapFileMaterial(”bg.jpg”);

3、Sphereをnewする際に第1引数にいれちゃういましょう

mySphere = new Sphere(material, 300, 30, 30);

ちなみに第2引数は表示サイズ、第3引数と第4引数は縦線横線の数になります。
初めてのpapervision3D その2 の時より線を増やしてカクカク感をとりより球体らしくしました。

VF1からVF3位の差がでたきがします。

Tags: ,

初めてのpapervision3D その2

前回のつづきです。
※Papervision3D 2.0 Great Whiteをダウンロードしてパスが通っているのが前提とりなります。

ではではこんな感じで

サンプルSWF

3Dの球体がよこにクルクル回るクラスをかいてみましょうか。

package
{
	import flash.display.Sprite;
	import flash.events.Event;
	import org.papervision3d.view.*;
	import org.papervision3d.objects.primitives.*;

    public class Main extends BasicView
    {
		private var mySphere:Sphere;
		public function Main() {
			init();
		}
		private function init():void
		{
			mySphere = new Sphere(null, 300, 10, 10);
			var sp:Sprite = new Sprite();
			scene.addChild(mySphere);
			startRendering();
			sp.addEventListener(Event.ENTER_FRAME,enterFrameHandle);
		}
		private function enterFrameHandle(e:Event):void
		{
			mySphere.rotationY += 1;
		}
	}
}

Tags: ,

初めてのpapervision3D

flashとか作りますよ、とかいうと必ずといっていいほど
「3Dできんの?」
なんて聞かれますよね。

てなわけで papervision3D をつかってみた。
papervision3Dとは簡単に3Dグラフィックスを表現できるactionscriptライブラリです。

まずはpapervision3Dをダウンロードしよう。
とりあえず現状で一番新しいバージョン

Papervision3D 2.0 Great White をつかいます。
※バージョン1.5 / 1.7 とはいろいろ仕様がかわっているそうです。

まためんどくさいことに
Papervision3D 2.0 Great WhiteはSubversionで入手するしかないようです。
※Subversionについてはこちらを参照してください
Subversion - Wikipedia
TortoiseSVNのインストールと設定(windowsのひと)

リボジトリのURL:
http://papervision3d.googlecode.com/svn/

ダウンロードしたフォルダは任意のディレクトリにおいておきましょう。
ちなみに僕はフォルダに「p3d」と名前をつけCドライブ直下においたのでパスはこうなりました。

C:\p3d\trunk\as3\trunk\src

でflash cs3 環境の場合は 

編集 >> 環境設定 >> Actionscript >> Actionscript 3.0 設定
で上記のパスを追加

flashDevelop環境の場合は

Tools > Global Classpaths に上記パスを追加

これでPapervision3D 2.0 Great Whiteを利用できる環境ができました
ながかったー

ながかったのでスクリプトは次の機会に
・・つづく

Tags: ,

wordPressではまった事

本当大した事じゃないんだけど時間とられました。
現在開いているページのタイトルを変数に代入する方法。

ダメだった
$hoge = wp_title(”", true);

★正解!!
$hoge = wp_title(”", false);

ホントこれだけかよと思ったわけです。

Tags:

涙でた・・・。

泣いたわ・・・。
すげーいい仕事。

Cam with me(カム ウィズ ミー)|デジタルビデオカメラ Handycam “ハンディカム” | ソニー

うわー、おれも記録のこそう。
そんでいろんな意味でがんばらなきゃと思った。

Tags:

インスタンスのnameプロパティ

Actionscript3.0では
getChildByName()メソッドで
インスタンスのnameプロパティが参照できます。

for (var i:int = 0; i < 10; i++)
{
var mc:MovieClip = new MovieClip();
mc.name ="mc" + i;
this.addChild(mc);
}
for (i = 0; i < 10; i++)
{
trace(this["mc" + i]);
//出力結果 undefined ・・・これではまりました。
trace(this.getChildByName("mc" + i).name);
}

名前でインスタンスを動かしたかったんです。

参照ページ
getChildByName()メソッド

Tags:

flashdevelopの設定について

flashdevelopのメニューを日本語に変更するには

C:\Program Files\FlashDevelop\Settings\
MainMenu.xml
ScintillaMenu.xml
TabMenu.xml
ToolBar.xml

このへんを日本語に書き換えればいいのです

参照サイト:code:x
FlashDevelopの設定XML一式がダウンロードできます!ステキ!
ただMainMenu.xmだけは上書き保存せず
中の要素

Label.Tools

以外を上書きして保存してください。
(flashdevelop起動時にエラーがでてしまうので)

それと
ui回りの設定(色とかfontとか)は
同じディレクトリの中の

ScintillaNET.xml

を変更してください。
※ ちなみにfontを MS ゴシック に変更する場合は半角で MS Gothic でないと反映されません
参照サイト:blog.naggg.jp

カラーリングについては
参照サイト:FlashDevelopのカラーリング

Tags:

FlashDevelop + Flex SDK でウマー

FlashCS4にアップグレードしなきゃだよなーなんて考えていたんですが

FlashDevelop + Flex SDK

かなりいいね!
作業環境を整えるまでが敷居高いけど
整っちゃえばかなり使いやすいエディタだしとてもいいです。
加えてコマンドラインを開いてコンパイルもしなくていいし。
何しろ無料だしね。

で、さてさていいことづくめだけだけじゃなくて
ダウンロード&インストール それに加え設定作業は結構あります。

まずはダウンロードをしよう

そしたらこれらをインストール。

そしたら設定(日本語対応・バグ対応含む)は以下のサイトを参照してください

※設定とかのについての参照ページ
FlashDevelop + Flex4SDKでFlash Player 10の開発
FlashDevelopのインストール(+Flex SDK3)
フリーのFlash統合開発環境 FlashDevelop (+flex 3 SDK)を入れてみました
「Adobe Flex 3 SDK」と「FlashDevelop」を連携させてみる

これでFlash Player 10用の開発がサクサクできます。
うっひょー!すてきすぐる。

多分今後タイムラインをいじる気なんて
しばらくでないだろうから、cs4はやめてこれでいこうっと。

Tags: ,

SNSの成功例

GREEて儲かっているんですねー

広告メディアの売上が6億円弱
アバターが13億円強

驚いたのですが,
結構みんなアバターに課金してるんですねー。

こういった課金システムのサービスって
中々結果が出せないから
サービスを始めても早々にあきらめちゃうベンチャー社長って
多いじゃないかな。

これはsnsの新しい成功例なんじゃないでしょうか、
僕は広告費で稼ぐタイプよりこっちの方がだんぜん好きです。

参照サイト
えっ?! mixiよりGREEの方が儲かってるの?:ネット維新を解く  - CNET Japan
GREE の課金収入は広告収入の2倍以上。

Tags:

flashの情報をローカルで保存してみよう

flashでクッキーを使いたい場合
SharedObjectクラスを使うと大変便利ですよ

いままで使ったことなかったけど、
意外とお手軽だね。

わかりづらいけどリロードした後
選択した項目に印がついたままならローカルに情報が保存されています。

ちなみに配列を保存することもできます。

そして下がソースです

var sObj:SharedObject = SharedObject.getLocal("flag");

//ステージ上に配置したラジオボタンの名前
var rgBtn:Array = [point0, point1, point2];

// マウスリスナーオブジェクト
var mouseListener:Object = new Object();

if (sObj.data.flag != undefined)
{
rgBtn[sObj.data.flag].selected = true;
}
//マウスダウンイベントを受け取った時
mouseListener.onMouseDown = function() {
var nCount:Number = 0;
while (nCount < rgBtn.length) {
if (rgBtn[nCount].hitTest(_xmouse, _ymouse, false))
{
sObj.data.flag = nCount;
break;
}
nCount++;
}
};

Mouse.addListener(mouseListener);

flashlite2.0から利用できるから携帯でもきっと活躍できるよ!

ドコモ以外だけどね!

ドコモはクッキー使えないし、
flashlite1.1から2.0とばして最近3.0だから
実際まだまだflashで携帯サイトは作りたくないよねー

Tags: ,