名古屋でホームページ制作とFlash eternity design BLOG

DO3DControllerアップデート[Papervision3D]

おそらく自分用になっているであろうDO3DControllerです。
久しぶりにPV3D触っているので利用していたのですが、使いにくいところがあったので機能追加しました。

Profileの表示の更新タイミングがsetしたときか、キー操作したときだったのですが、ENTER_FRAME回して更新するようにしました。
なるべく処理的に負荷をかけたくなかったので、ENTER_FRAME使っていなかったのですが、tweenさせたときとかに更新されないのは不便ですよね。

  • setメソッドの第3パラメータに移動量を指定できるようにしました。デフォルトは1です。
  • isActiveプロパティを追加しました。false指定でDO3DControllerのキーイベントを無視します。
    一時的に機能をOFFにしたいときとか。

つまらないものですが、お役に立ちそうでしたら下記よりどうぞ。

DO3DControllerのダウンロード

[jiglibflash] 絶妙なCube

miniASでお話ししようと思っていたけど、できなかったものです。

このFlashをご覧ください。

自分の環境だと何度やっても、Cubeが絶妙な停止を見せるのですが、いかがでしょうか?

この時、床と接しているように見えるのですが、 collisionsプロパティには何も入っていません。
床の情報が入っていてもよさそうなんすけど。

Tetris3D

tetris3d

WCAN mini ActionScript Vol.11でお話しさせて頂いた時のものをとりあえずアップしておきます。

I : ブロックを奥へ移動(Z+)
M : ブロック手前へ移動(Z-)
L : ブロックを右へ移動(X+)
J : ブロックを左へ移動(X-)

十字キー : 全体を回転

コツはIMLJキーのちょい押しで落下位置を調整しつつ、落下したら完全にCubeが停止する前に地面に散らかってるCubeを落下してきたCubeで整頓するという感じです。

現状、最下段(1列目)の5×5のみ消去判定しています。
1マス40ピクセルの範囲内にCubeの中心点が入っていればとりあえず収まっていると判定しているのである程度はばらばらでも5個並んでいれば消えます。

勉強会ではjiglibflashに関してまとめるつもりがないのでメモった方がいいかもとかいいながら、お話しのかなりはじめの方で話す順番を間違えてしまい、少々焦ってグダグダになった感じなので、その穴埋めにでもBlogに”まとめる”とまではいかなくても、エントリ残すつもりです。しました。

解説編はこちら。

PV3D用ちょい便利かもクラス

先日のちょい絶Vol.8に参加させていただき、ちょいとこちらの完結編っぽいものについてお話しをさせて頂きました。
まぁ、話し終わった後の何ともいえない雰囲気は忘れるとして、その時に、PV3DのDisplayObject3D(または継承したオブジェクト)オブジェクトにキーイベントを設定して操作できるようにするクラスを作りましたと少し紹介したんですが、connect.to.blog()の人に配布しないのですか?と聞かれたので配布します。

続きを読む

PV3DのrotationとlocalRotationの違い

PV3DのrotationとlocalRotationの違い

Papervision3DのDisplayObject3Dクラスのメソッド、localRotation(X|Y|Z)とrotation{X|Y|Z)に関して、違いがわからなかったので調べてみました。
まず、サンプルのSWFを見ていただくとすぐにわかりますが、回転の方向が逆です。

文章での説明が難しく、localRotationのほうはいまいち掴み切れていないところもあるのですが、回転のベースとなる回転軸ごと回転されている感じ(わかるかな・・・)です。
なので、localRotation(X|Y|Z)の各プロパティに値を代入する順番が重要になります。
上のサンプルではX→Yですが、これを逆にすると同じ値を指定しても見え方が変わります。

また、lookAtを使うとlocalRotationの値は”0″になるようです。

rotation(X|Y|Z)は軸がぶれない!ので、各プロパティへの代入順序も関係ない。

個人的にはrotationのほうがわかりやすいです。どのような状況でlocalRotationと使い分けるのか浮かばないです。

以下、サンプルのコード。

続きを読む

ラインとPV3D

ラインとPV3D

久しぶりにPV3D触ってました。
エントリも2009初だったりするぐらいAS触ってなくてゲーム三昧。
とりあえず、リロードでランダムに線の形状が変わります。
リニューアルしたいWORKSで使うかもしれない!

Progression3

最近ちょっとさわってます。
なかなか難しいもんですね。
純AS3コードよりにコーディングするかProgressionで用意されているクラスなどの仕組みよりなコードを書くかってところが。
せっかくProgression使ってるんだから、なるべくProgressionよりで書きたいところだけど、万能ではないっぽいので、純AS3コードを利用しないわけにはいかない。
このときのコードの実行順とか、慣れればいいんだけど、気をつけてコード書かないとね。
あと、シーンって普通のHTMLベースのWebサイトのページ切り替えみたいな感じで内容が丸ごと変わるって場合はいいんだけど、なんかシーン1の上にシーン2が重なって表示とか、シーンごとで表示方法が統一されてない場合なんかは、シーン数が増えるにつれて複雑になっていきますね。そもそもシーンの概念を超えてるような気もする見せ方ですけど(Progression制作者様がどのような考えでシーンを作ったのかは知りません)
今のところの感想は、「めちゃくちゃ早くFlashが制作できるようになった!!」とまではいかないまでも、「便利だなぁ」とは思います。
Progression自体はよく制作したなぁと思います。
制作者様に感謝!!
3.0.8で制作したプロジェクトをCS4の3.1.0でアップデートしたらdeplyのindex.htmlが生成されないけど、どうしてー。

About me

名古屋を中心に、フリーランスでホームページ制作してます。 デザイン・サイト制作・Flash制作と幅広く対応可能です。 案件のご依頼・ご相談はお問い合わせよりご連絡ください。