FITC Tokyo 2009 レポート

2009年12月1日

> FITC TOKYO 2009

■Sneak Peek of MAX 2009 / Lee Brimelow
CS5の機能紹介
  FlashアプリがiPhoneで動く
  目玉はやはりFlash for iPhone。
  最後の質疑応答もiPhoneがらみが多い。
  これがあればWindowsのマシンとFlashでiPhoneアプリができてしまう、ということで。
Flash Player 10.1 / AIR 2.0
  各種デバイス(アンドロイド携帯とか)に対応。
  Open Screen Project
  アドビ、Flash業界団体「Open Screen Project」発表
  Flash LiteからAIRへ――Open Screen Projectでモバイル戦略を加速するAdobe
  マルチタッチ対応。
  AIR 2.0ではAIRインストーラではなくネイティブインストーラとか。
  Adobe、Flash Player 10.1 とAIR 2.0 リリース―マルチタッチ、ローカル・マイクなどをサポート
Flash Catalyst
  ちょっと話題に出ましたがどうなんでしょう。(使っている人いるのか)
  Adobe Flash Catalystベータ版入門
■Making Things Move / Keith Peters
この本の内容と同じ。なので読んでいる人(私も)には特に新しい内容はなし。
ActionScript 3.0 アニメーション
読んでいなくて、数学も物理も苦手な人には難しく感じるかも?

■Powering The World’s Most Advanced Mobile Devices / Hiroki Saito
「Tegra」というのの紹介。宣伝なので真剣に見ず。

■Connecting the Dots / Mario Klingemann
Quasimondo - Mario Klingemann’s Flash Blog
この人は面白い。一番インパクトありました。
具体的になにか参考になったり役にたつ内容ではないですが。
ものすごく簡単に言うと、数学の法則をビジュアライズして美を作る、みたいな。
作品例:
MonaTweeta II

ちょっと詳細うまく説明できないので参考サイトで勘弁してください。
NumberSpiral.com
Wolframalpha
セル・オートマトン
ボロノイ図
さらに参考。
ドロネー図
DisplacementMapFilterのメモ
コンピューターに絵画を描かせる
Segmentation and Symptom
Einstein

■Quick as a Flash / Grant Skinner
gskinner.com
gskinner.com: gBlog

TAAS
Tag Archive for ‘taas’ at blog.joa-ebert.com

Flashの高速化に関するかなり技術的な話。自分はあまりよくわからないところもあり。
本とかサイトとかにまとめておいてもらえると世の中の人みんな助かるのだが。

■Big Spaceship : Digital Creative Agency / Joshua Hirsch
Big Spaceship | A Digital Creative Agency
Big Spaceship | Our Portfolio
NYの有名な制作会社。40名くらい。ポリシーやプロジェクトの紹介。

自社プロジェクト:
Pretty Loaded - a preloader museum curated by Big Spaceship
素敵なローディングばかりを集めた
他には
Hope vs. Despair
perfect monkey tankpants

クライアントワーク:
ADOBE MAX 2008
MoMA | Interactives | Exhibitions | 2009 | Tim Burton
どちらも激重だ・・・

“Quality is born from fun.”
ストックフォトは使わず撮り下ろす。
企画→デザイン→開発が流れ作業ではなく同時進行で最初からみんなが関わり、
全員がクリエイティブ。
モチベーション維持には、チャレンジ、知識の共有、適材適所。
会社に行くのが楽しくなる工夫。

この内容だけ見ているとなんとクリエイティブで楽しそうな会社だろうかと思うが、
最後の質疑応答で「つまらない仕事もあるよ」とぽつり。どこも同じということか・・・。

trick7のこのリンクは役に立つぞ!
trick7 - BIG SPACESHIPの”Visualize It”
trick7 - 「Flash Performance Tips Part 1」の日本語訳
trick7 - 「Flash Performance Tips Part 2」の日本語訳
trick7 - BitmapData を使って Flash Player の再生パフォーマンスを改善する方法

■全体の感想
同時通訳に頼らず、全部英語で聞きました。
やっぱり何割かはわからないので、大事な部分を聞き逃したかも?
(なまり、ボソボソ、早口はキツイので全員ゆっくりハキハキとしゃべってくれればいいのだが・・・)
マニアックなカンファレンスと思っていたが、かわいい女の子(?)が多く意外。
みんなノートパソコンを開いておらず、手で一生懸命メモを書いていた不思議。
(海外だとみんなマックを開いているが、英語だと画面見ずにかなりのスピードでメモできるからだと思う。
日本語は変換がいるからだめだね。)

ダニーに会った。

家庭の事情で早く帰ったのが、パーティ行けばよかった、と後悔。

FITC Amsterdam 2010とFITC Toronto 2010には私の尊敬するandre michelleさんが来るのか。
Andre Michelle - flashcoder berlin germany
出張しちゃおうかな~。

自分も作品つくります。
終わり。

投稿者:
ken

Face Changer

2009年5月31日

GWに貯めておいたネタを小出しにしていますが、そろそろネタも尽きそうです。

facechanger.png

今回のFace Changerは、まだ実験段階ですが、Webカメラに映った二人の顔を入れ替えるというもの。

Red5が受け取ったストリームを、Xugglerというライブラリを利用してデコードし、さらにOpenCVで顔認識して2人の顔を入れ替える、というちょっと複雑な仕組みになっています。

AS3にも顔認識のライブラリMarilenaがあるので、Flashだけでもこの位のことはできると思います。
ただ、ストリームをいじったり、混ぜ合わせたりすることで今までにない面白い表現ができそうな予感がしています。

(サーバー負荷が高いためサンプルはまだ公開できません)

※ちなみに使用している画像は肖像権使用許諾済みのものです。念のため。

投稿者:
arahan

Box2D Kaleidoscope

2009年5月23日

box2dkaleidoscope

なんとなく綺麗になるかなという直感で作ってみました。
長く見ていると酔うので注意してください。

万華鏡の作り方は下記サイトを参考にしました。
http://homepage2.nifty.com/touch-o/kagami/tukurikata.htm

投稿者:
arahan

社内ツールのスケジュールボードをFlash+Air+Red5で開発しリリース。

スケジュールボードBeta

外出時に「~時帰社」などを記すスケジュール(ホワイト)ボードをAirで
デスクトップツールにしました。
Beta版というところが逃げ腰ですね、自分で自分がイヤになります。

社内だとはっきりと
「これはつかい難い」「もっとこうしてくれ!」という意見が
聞けるので貴重です。ホントに。

追加予定機能
・携帯からの更新
・パスワード記憶、自動ログイン
など。

投稿者:
J

クォータニオン実装

2008年4月21日

solarsystem1.gif

3D回転をクォータニオンでAS3で実装しました。
http://test3.sonicjam.co.jp/~ken/solarsystem/

ややわかりにくいんですがw
地球の周りを月がまわり、地球と月が太陽のまわりをまわる、というイメージです。
それぞれの回転軸が3次元で別々に設定されています。
まさにこういう軸中心の動きの場合はアフィン変換より数割(?)高速になります。たぶん。

参考:
http://www.microsoft.com/japan/msdn/academic/Articles/DirectX/01/
http://marupeke296.com/DXG_No10_Quaternion.html
http://staff.aist.go.jp/toru-nakata/quaternion.html
http://yamasv.blog92.fc2.com/blog-entry-49.html
http://ja.wikipedia.org/wiki/%E5%9B%9B%E5%85%83%E6%95%B0
http://www.nilab.info/wiki/Quaternion.html

ソースのメイン部分はこんな感じです。

Actionscript:
  1. package threeD
  2. {
  3.     public class Quaternion
  4.     {
  5.         public var w:Number;
  6.         public var x:Number;
  7.         public var y:Number;
  8.         public var z:Number;
  9.  
  10.         public function Quaternion()
  11.         {
  12.             // コンストラクタ
  13.         }
  14.  
  15.         //
  16.         // 角度、ベクトル -> QT
  17.         //
  18.         public static function rotateQT( rad:Number, v:Vector3D ):Quaternion
  19.         {
  20.             var q:Quaternion = new Quaternion();
  21.             var s:Number = Math.sin( rad / 2.0 );
  22.             q.w = Math.cos( rad / 2.0 );
  23.             q.x = v.x * s;
  24.             q.y = v.y * s;
  25.             q.z = v.z * s;
  26.             return q;
  27.         }
  28.        
  29.         //
  30.         // 座標 -> QT
  31.         //
  32.         public static function positionQT( x:Number, y:Number, z:Number ):Quaternion
  33.         {
  34.             var q:Quaternion = new Quaternion();
  35.             q.w = 0;
  36.             q.x = x;
  37.             q.y = y;
  38.             q.z = z;
  39.             return q;
  40.         }
  41.        
  42.         //
  43.         // QT *s -> QT
  44.         //
  45.         public function multiplScalarQT( s:Number ):Quaternion
  46.         {
  47.             var q:Quaternion = new Quaternion();
  48.             q.w = w * s;
  49.             q.x = x * s;
  50.             q.y = y * s;
  51.             q.z = z * s;
  52.             return q;
  53.         }
  54.        
  55.         //
  56.         // QT * QT -> QT
  57.         //
  58.         public function multiplyQT( q2:Quaternion ):Quaternion
  59.         {
  60.             var q:Quaternion = new Quaternion();
  61.             q.w = this.w * q2.w - this.x * q2.x - this.y * q2.y - this.z * q2.z;
  62.             q.x = this.y * q2.z - this.z * q2.y + this.w * q2.x + this.x * q2.w;
  63.             q.y = this.z * q2.x - this.x * q2.z + this.w * q2.y + this.y * q2.w;
  64.             q.z = this.x * q2.y - this.y * q2.x + this.w * q2.z + this.z * q2.w;
  65.             return q;
  66.         }
  67.        
  68.         //
  69.         // QT + QT -> QT
  70.         //
  71.         public function addQT( q2:Quaternion ):Quaternion
  72.         {
  73.             var q:Quaternion = new Quaternion();
  74.             q.w = this.w + q2.w;
  75.             q.x = this.x + q2.x;
  76.             q.y = this.y + q2.y;
  77.             q.z = this.z + q2.z;
  78.             return q;
  79.         }
  80.        
  81.         //
  82.         // QT -> 共役QT
  83.         //
  84.         public function conjugationQT():Quaternion
  85.         {
  86.             var q:Quaternion = new Quaternion();
  87.             q.w = this.w;
  88.             q.x = -this.x;
  89.             q.y = -this.y;
  90.             q.z = -this.z;
  91.             return q;
  92.         }
  93.     }
  94. }

投稿者:
ken