Posted by & filed under 未分類.

このエントリーをはてなブックマークに追加

この記事は、Flash Advent Calendar 2015の記事です。
Flashが終わったなんて言う人はおそらく知らないと思いますけど、Flashって計算ができるんです。
ああ、そうそう、ActionScriptでね、やってたわー、常時Flashを立ち上げといて、ジオメトリのちょっとした計算なんかアクションパネルでちゃちゃちゃっとやってたわー、今はJavaSriptコンソールでやるよね、とか、そういうことじゃなくて。
そうか、昔流行った、物理エンジンで加算器とか作るやつでしょ?どうせStarling+Napeとかでボール落としてほら!ビット演算ができた!とかやるんでしょ。やったわー5年前にやったわー今だとマリオメーカーで流行ってるよね、とか、正直言うと半分正解です。
Flashオーサリングツールの名前も変わったことだし、難しいこと一切無しでグラフィックシンボルのアニメーションだけで論理演算をしてみたいと思います。
登場人物に性格設定をするだけで、タイムラインアニメーションで論理演算を処理できるというおもむきです。


今回のアニメーションに登場する人物は、この人。どこにでもいる普通の社員さん。
worker
彼はこんな特徴があります。
multi_work
仕事がふたつ以上たまったらテンパってしまうという、みなさんと同じ、どこにでもいる普通の社員さんですね。
某痛いフラッシャーがモデル(この記事の作者)という噂もありますが、あんまり邪推するのはやめてあげてください。

この社員さんは、さらに次のような特徴もあります。
pass_work
なんだ、どこにでもいる、普通の上司か。

最後に、いちおうこういう特徴も説明しておきます。
not_work
この説明は、何のことやらかえってわかりにくいと思いますが、とりあえずこれはこういうものとして流して下さい。

以上の性格設定をもとに、アニメーションを作って、論理演算をしていきます。
はたして本当にできるのやら…。


まずは計算する数字を仕事として絵にかえてみましょう。
3x3
今回は、3+3を仕事させたいので、こういう絵になります。


ちなみに、たとえば3+2の場合だとこういう絵になります。
3x2
仕事の配置については、今さら私がドヤ顔でいうことでもないですが、10進数の3は2進数にすると11なので2bitめと1bitめに両方仕事が入ります。今回は3+3ということで、上下ともに11、つまり2bitめにも1bitめにも仕事がある状態ですが、かりに3+3ではなくて3+2で計算する場合は、11と10、こういう配置になります。

10進数 2bitめ 1bitめ
3 1 1
2 1 0

まあ、2進数だ10進数だと小難しい話しをずっとしたくないので、次に進みましょう。


capture1
Flashを立ち上げたら、足し算カンパニーの社員さんたちをこういうふうに配置して、仕事を与えます。
ちなみに、力関係の構成はこうです。
check
うむ、なんかどこにでもあるブラックな環境ですね。


仕事のフローは次↓のようになっています。
check2


仕事のフローと、力関係を足した図がこちら↓
check3

この流れに従って、さっそく1bitめから、アニメーションさせてみましょう。
せっかくFlashもといAnimateなので、とっても楽しいアニメーションをさせたいところですが、今回は計算結果を急ぐのでさくっと行っちゃいます。


capture2
1bitめの彼にふたつの仕事が容赦なくふりかかります。早くもテンパる彼!


capture3
1bitめ、何の成果もー!あげられませんでしたー!
capture4
そのうえ彼は部下に仕事をふる気だ。2bitめ、いけるのか!?


capture5
1bitめから押しつけられた仕事と、2bitめ本来の仕事が彼を襲いかかる!


capture7
やはり駄目っ…!2bitめの部署内に何の仕事もまわせず…!テンパってもみけしやがった!!


capture8
部署内には、もみけして仕事まわさなかったうえに、3bitめの部下に仕事を押しつける始末!彼に人の心はあるのか!!?


いっぽうそのころ、2bit内の部下は本来の仕事をこなし…
capture6


結果的に仕事がひとつだけで済んだので成果を上げることが出来た!!!
capture9


いよいよラスト、3bitめ。
彼は2bitから押しつけられた仕事ひとつだけなので、成果を上げることが出来て…
capture10
アニメーションの結果、
kekka
3bitめ成果あり、2bitめ成果あり、1bitめ成果なし
となりました。

アリ、アリ、ナシを
bitになおして
1 1 0

110を10進数になおすと6!
みなさん、3+3の結果は6ですよ!
みごと、アニメーションだけで3+3の足し算ができました!おもしろい!
この社員さんのアニメーションを横にずっと並べると、何bitでも計算できます。FlashもといAnimateってすごい!
できたアニメーションは、こちらです。
result_3add3

このエントリーをはてなブックマークに追加