2009年03月14日

[AS3]ハートを描く

こんにちは!
今日はホワイトデーですね。

僕は、嫁さんに伊藤久右衛門のスイーツをプレゼントしました。
抹茶にこだわった京都のお店で、大福やパウンドケーキなど本当においしかったです!
抹茶好きにはおすすめです!!

さて、ホワイトデーにちなんでFlashを作って見ました。


ボール(円)でハートを描くだけの単純なFlashですが・・・
これが結構苦労しました。

ハートって、結構複雑な形ですよね?
最初、円運動を駆使して作ろうと思ったのですが僕には無理でした。


結局・・・

続きを読む
posted by かんきち at 12:22 | Comment(0) | TrackBack(0) | ActionScript | このブログの読者になる | 更新情報をチェックする

2009年03月06日

[PV3D]鏡面反射の世界

こんにちは!

更新頻度がすっかり1週間に1回のペースに落ち着いてしましました。
もっと頻度を上げたい!!

またまた先日、wonderflに投稿した作品についてご紹介します。
今回は、鏡面反射の世界を表現してみました。




今回のポイントは、ReflectionViewクラスです。
続きを読む
posted by かんきち at 11:04 | Comment(0) | TrackBack(0) | Papervision3D | このブログの読者になる | 更新情報をチェックする

2009年02月28日

[PV3D]被写界深度を表現

おはようございます。
前回のPV3D記事から随分間が開いてしまいました。

その間にwonderflに投稿した作品についてご紹介します。



Fork(他の人が書いたプログラムを参考に編集を加える)したので、基本的な部分の説明は本家本元のこちらをご参照下さい。

修正を加えてたのは、

  • マウスで視点が変わる
  • カメラからの距離に応じてぼかしを加える

の2点です。

ちなみに、「被写界深度」というのはカメラのピントが合っている広さの部分のことで、ピントがあっていない部分はぼけて見えますよね。
あの表現です。

マウスに応じてカメラが動きますが、カメラとオブジェクトの距離算出はcalcDistanceFromCameraメソッド行っています。
算出は、三平方の定理を使ってます。単純です。


Forkしたものとはいえ、初めてお気に入りに登録して頂きました。
嬉しいですね!!
posted by かんきち at 06:15 | Comment(0) | TrackBack(0) | Papervision3D | このブログの読者になる | 更新情報をチェックする

2009年02月21日

[Air]AirRecord

おはようございます!

昨日は会社の新人歓迎会でしたが、飲み会の席でお酒を飲めなかったのは初めての体験でした。
あれはきついですね、、、徹夜状態だったので、飲んだら大変なことになっていたとは思いますが。


さてさて、タイトルのAirRecordなるものを見つけました。
Adobe AIR向けのActiveRecord「AirRecord」

名前から推測できるように、Air用のO/Rマッピングツールです。

RailsのActiveRecordくらい使いやすければいいですね。
ついでに、rakeタスクやfixtureのようなものもあれば完璧ですね。

個人的には、Railsのmigrationは最強だと思ってます!

まだ使っていないので、使ってみての感想などは、検証をしてから報告したいと思います。
posted by かんきち at 07:41 | Comment(0) | TrackBack(0) | Air | このブログの読者になる | 更新情報をチェックする

2009年02月11日

[PV3D]キューブをマウスで回転させる

こんにちは!
Papervision3Dが面白くてしょうがありません!

少しずつ色々作れるようになってきましたし、先輩方が書いたコードが読めるようになって来ました。

っということで、今日はキューブをマウスでグリグリ動かすサンプルを作ってみました。
マウスのホイールを動かすと、キューブが拡大or縮小します。




◆イベントの追加

イベントはstageに対して追加する必要があります。
stage.addEventListener(MouseEvent.MOUSE_WHEEL, onMouseWheel);
stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);

stageを省略すると、親クラスのBasicViewクラスへのイベントとして登録されるようです。(ちょっと自信がありません。)
そのため、オブジェクトにマウスカーソルがあればイベントが発生しますが、背景にあたる部分ではイベントが発生しません。
ここで、結構悩みました。


◆カメラの移動

グリグリ動かすために、カメラを移動します。
Camera3Dクラスに実装されているorbit関数を利用すると、任意の点から同距離の範囲でカメラを回転させることができます。
地球を周っている衛星を、自由に操れるようなイメージです。
orbit(pitch:Number, yaw:Number, useDegrees:Boolean = true, target:DisplayObject3D = null)

【引数の説明】
pitch ― 上下の回転角度
yaw ― 左右の回転角度
useDegrees - trueを指定すると、pitchとyawが角度での指定となります
target - 回転の際の中心となるオブジェクト

◆カメラのズーム

ホイールでオブジェクトを拡大・縮小するには、Camera3Dの親クラスにあたるCameraObject3Dクラスのzoomプロパティを利用します。
マウスイベントのスクロール行数を引数に指定することで、ホイールと連動してズームできます。
posted by かんきち at 16:33 | Comment(0) | TrackBack(0) | Papervision3D | このブログの読者になる | 更新情報をチェックする

2009年02月07日

[PV3D入門]平面を回転する

おはようございます!
今日も朝からPapervision3Dに勤しんでます。

PV3Dの勉強を始めて思いましたが、Web上に参考になるサイトが本当に多いですね。
インターネットの偉大さを改めて実感しました。

では、今日は平面を回転させてみました。
こんな感じです。


マテリアルとは何ぞや?

マテリアルは、テクスチャが設定されたオブジェクトです。
(テクスチャは、物体の表面を表現するためものです。)
表現には、色や画像や透明度等が設定できます。

今回使用したものは、ColorMaterialオブジェクトです。
他の種類についてはまたの機会に。

ColorMaterialオブジェクト

単色のテクスチャを生成します。
ちなみに、色々なマテリアルがありますが、基本的にMaterialObject3Dから派生してます。

【継承関係】
ColorMaterial → TriangleMaterial → MaterialObject3D

マテリアルについて詳しいページ

Planeオブジェクト

平面を生成します。
平面を作るためには、テクスチャとしてマテリアルを指定します。

【継承関係】
Plane → TriangleMesh3D → Vertices3D → DisplayObject3D

両面表示

平面が回転すると、片面が透明になってしまうことがあります。
そんなときは、マテリアルの doubleSided を true にします(デフォルトは false)。

以下、今回のソースです。
続きを読む
posted by かんきち at 08:42 | Comment(0) | TrackBack(0) | Papervision3D | このブログの読者になる | 更新情報をチェックする

2009年02月05日

[PV3D入門]球体を表示する

こんにちは。
息子が寝たのを見計らって、Papervision3Dの勉強を進めています。

会社で使うFlexの勉強は良いのか?という突っ込みは、とりあえずスルーでお願いします。

PV3Dの全体イメージがうまくつかめなかったのですが、図解しているページを発見しました。
これで全体の概要が分かりました。



そして、気になっていたBasicViewクラスですが、PV3Dのソースを直接見てみました。
なるほど・・・随分と理解度が増しました!
(BasicViewクラスの説明は、また後日にします。)


っということで、球体を表示するサンプルを作ってみました。




以下、ソースです。
(BasicViewクラスを継承しているので、コードが短い・・・)

続きを読む
posted by かんきち at 16:17 | Comment(0) | TrackBack(0) | Papervision3D | このブログの読者になる | 更新情報をチェックする

2009年02月03日

Papervision3Dデビュー!?

こんにちは!
深夜勤務で、日中は家で趣味のFlashの勉強です。
もうすぐ寝ます(^^;

僕が、勝手に師匠と仰ぎ欠かさずにチェックしているブログが2つあります。
その1つのブログがClockMaker Blogなんですが、ここでWonderflでPapervision3Dを見つけました!

何と、WnderflでPapervision3Dが対応したようです。
そして、そこに5つもの作品がアップされていました!!

Papervision3Dは、以前から勉強したいと思っていたライブラリですが、やろうとしては動かずに挫折しを繰り返し、全く勉強できていませんでした。

っが、これで実際に動く作品を見ながら勉強できそうです。
いざ!3DFlashの世界へ!
posted by かんきち at 16:21 | Comment(0) | TrackBack(0) | Papervision3D | このブログの読者になる | 更新情報をチェックする

2009年02月01日

Adobe Developer Box で情報収集

おはようございます。

先日、Adobe Max 2009 Japan が開催されましたね。

色々なブログで報告がアップされています。

残念ながら今年は行けなかったのですが、来年こそは行きたいと思います。
(Adobeさん、来年以降も開催してくださいね。)


それはそれとして、AdobeのRIA開発者のための情報収集に役立つAIRアプリが公開されていました。

Adove Deleloper Box
http://www.adobe.com/jp/devnet/air/gallery/adb/


まだ、インストールしたばかりでしっかり見れていませんが、Flash、Flex、AIR、LiveCycle、Flash Catalystの情報やAdobeのRSSフィードなんかがまとめて登録されています。

英語の情報もたくさんあります(^^;

情報がWebのあちこちに点在していて、欲しい情報を効率的に収集するのが何かと難しいですが、こうしてまとまっていると良いですね。
検索とかも出来ちゃいますし。


RSSは、既存のものも追加できるようなので、ここにまとめて管理するのも良いかもしれません。
(フィードリストをまとめて取込むことは出来ないようです)


スクロールがぎこちないのが「う〜ん」っていう感じですが、たぶん、今後の収集はこれがメインとなりそうです。


会社や業界別でも、こんなアプリが出れば欲しい人はたくさんいるんじゃないかな〜?
posted by かんきち at 07:23 | Comment(0) | TrackBack(0) | 情報収集 | このブログの読者になる | 更新情報をチェックする

2009年01月31日

Flex勉強中!

おはようございます。

会社のアプリをFlexで作ることになりました。
Flashでのアプリ開発は初となります!


やっと来た!!


そんな感じです!

手始めにこの本を買ってみました。

Flex3プログラミング入門 Flex3プログラミング入門
  • 作者: 宮田亮

  • 出版社/メーカー: 秀和システム

  • 発売日: 2008/08

  • メディア: 単行本

結構丁寧に説明がされているので、最初に読む本としては良いと思います。
FlexBuilderのインストール方法とか、基本的な文法が分かっている人なら200ページくらいは知っている内容の再確認とかになってしまいそうですが・・・

早く色んなエフェクト使い倒して、RIAでガシガシアプリを作りたいものです。
posted by かんきち at 07:26 | Comment(0) | TrackBack(0) | Flex | このブログの読者になる | 更新情報をチェックする